:root{font-family:"Noto Sans","Segoe UI",system-ui,-apple-system,sans-serif;color:#1f2b37;background:#f6f2ea;font-synthesis:none;--green:#24364a;--muted:#6c727a;--line:#e2dccf;--soft:#efe9dc;--amber:#9a5b1e}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid transparent;border-radius:9px;padding:10px 16px;font-weight:600;background:var(--green);color:white}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}button.secondary{background:white;color:var(--green);border-color:var(--line)}button.ghost{background:transparent;color:var(--green);padding:6px 10px}button.danger{background:#fff0ee;color:#a4342c;border-color:#efd1cc}a{color:var(--green)}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cdd8cf;border-radius:8px;color:#263e36;background:white}textarea{resize:vertical;min-height:100px}label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}label input,label select,label textarea{margin-top:7px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;margin-bottom:10px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px}p{line-height:1.65}small,.muted{color:var(--muted)}.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:#153f35;color:#eef4ea;padding:30px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:17px;line-height:1.3}.mark{display:grid;place-items:center;background:#dbe7ba;color:#153f35;width:37px;height:41px;border-radius:11px 11px 11px 2px;font-size:25px;flex-shrink:0}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#b8cbbf;font-weight:500;margin-top:5px}.nav{margin-top:44px;display:grid;gap:7px}.nav button{background:transparent;color:#c6d7cd;text-align:left;font-weight:500;padding:13px}.nav button.active{background:#31594c;color:white}.nav button span{display:inline-block;width:27px;opacity:.8}.sidebottom{margin-top:auto;padding-top:25px;border-top:1px solid #396154;font-size:12px;color:#b4c8bd;line-height:1.8}.dot{display:inline-block;width:7px;height:7px;background:#c0d7a4;border-radius:50%;margin-right:6px}.main{padding:0 42px 45px;min-width:0}.topbar{height:83px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin-bottom:35px;font-size:12px;color:var(--muted)}.topbar strong{color:#3e5849}.topbar .right,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.pagehead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:#7d8d72;margin-bottom:10px}.pagehead p{color:var(--muted);font-size:14px;margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.stat,.card{border:1px solid var(--line);background:#fff;border-radius:13px}.stat{padding:20px 22px}.stat .value{font-size:32px;font-weight:650;letter-spacing:-1px;margin:14px 0 6px}.stat .caption{font-size:12px;color:var(--muted)}.stat .label{font-size:12px;font-weight:600}.stat.highlight{background:#eaf0dd;border-color:#e0e6d3}.grid{display:grid;grid-template-columns:1.45fr 1fr;gap:22px}.card{padding:24px;margin-bottom:22px}.cardhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.cardhead h2{margin:0}.badge{display:inline-block;font-size:11px;background:#edf3e8;color:#3b6045;padding:5px 9px;border-radius:5px;white-space:nowrap}.badge.pending{background:#fbf0df;color:#936725}.badge.neutral{background:#f0f2f0;color:#69766d}.notice{font-size:13px;color:#58694c;background:#eff3e5;border:1px solid #e3e9d5;border-radius:10px;padding:15px 18px;line-height:1.7;margin-bottom:22px}.notice.warm{color:#87602f;background:#fcf5e8;border-color:#f0e3c9}.empty{text-align:center;padding:36px 20px;color:var(--muted);font-size:14px}.empty .emptyicon{font-size:32px;color:#9bac91;margin-bottom:12px}.empty p{margin-bottom:15px}.row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row strong{font-size:14px}.row p{font-size:12px;color:var(--muted);margin:5px 0 0}.avatar{display:grid;place-items:center;width:36px;height:36px;background:#edf1e5;border-radius:50%;color:#66804e;font-weight:600;font-size:12px;flex-shrink:0}.identity{display:flex;gap:12px;align-items:center}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);padding:12px 10px;background:#f8faf6}td{padding:15px 10px;border-bottom:1px solid var(--line)}td button{font-size:12px}.filters{display:flex;gap:12px;margin-bottom:20px}.filters input{max-width:340px}.filters select{max-width:170px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span2{grid-column:1/-1}.formfooter{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.formcard{display:flex;flex-direction:column}.formcard p{font-size:13px;color:var(--muted)}.formcard .actions{margin-top:auto;padding-top:20px}.formcards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.formcards .card{margin-bottom:0}.source{font-size:12px;padding:12px;background:#f6f8f3;border-radius:8px;line-height:1.6}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.welcome{padding:64px;background:#153f35;color:#eef5e9;display:flex;flex-direction:column;justify-content:space-between}.welcome h1{font-size:48px;font-weight:500;line-height:1.18;max-width:480px;letter-spacing:-2px}.welcome .intro{max-width:420px;color:#bfcec1;font-size:16px}.welcome .line{width:60px;height:3px;background:#c8d99b;margin-bottom:28px}.welcome footer{color:#a9c1b4;font-size:12px}.loginform{padding:50px;display:flex;align-items:center;justify-content:center}.loginbox{max-width:410px;width:100%}.loginbox h2{font-size:28px}.loginbox>p{font-size:14px;color:var(--muted)}.tabs{display:flex;padding:4px;background:#e9eee5;border-radius:10px;margin:25px 0}.tabs button{flex:1;background:transparent;color:#617356}.tabs button.active{background:white;color:#294b37;box-shadow:0 1px 4px #0000000a}.loginbox button.full{width:100%;margin-top:15px}.loginbox .footnote{font-size:12px;margin-top:20px;line-height:1.7}.error{color:#a4332f;font-size:13px;margin:12px 0}.progress{height:7px;background:#edf0e8;border-radius:8px;overflow:hidden;margin:12px 0}.progress>i{display:block;height:100%;background:#8aab69}.student-shell{max-width:860px;margin:auto;padding:24px}.studenttop{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px;padding-bottom:20px;border-bottom:1px solid var(--line)}.studenttop .brand small{color:#6e8574}.question{border:1px solid var(--line);border-radius:11px;padding:20px;margin:18px 0}.question legend{font-weight:600;font-size:15px;padding:0 7px}.option{display:flex;gap:12px;align-items:center;padding:12px;background:#f7f9f4;border-radius:8px;margin:8px 0;cursor:pointer;font-weight:400}.option input{width:auto;margin:0;accent-color:var(--green)}.resultanswer{padding:13px 0;border-bottom:1px solid var(--line)}.resultanswer p{font-size:13px;margin-bottom:7px}.suggestion{border-left:3px solid #b4c990;padding:0 0 0 14px;margin:20px 0}.suggestion p{font-size:14px;margin-bottom:7px}.suggestion small{font-size:12px;line-height:1.6;display:block}.planrow{display:grid;grid-template-columns:1fr 95px 85px 1.2fr 1.8fr 35px;gap:8px;align-items:center;margin-bottom:10px}.planrow input,.planrow select{font-size:12px;padding:10px 8px}.planlabel{font-size:11px;color:var(--muted);padding-bottom:7px}.weekgrid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));gap:9px;overflow:auto}.day{border:1px solid var(--line);border-radius:9px;padding:12px 9px;min-height:130px}.day h3{font-size:12px}.slot{background:#f0f4e8;border-radius:6px;padding:10px;margin-top:8px;font-size:12px;line-height:1.6}.slot.done{background:#e2eddf}.slot small{display:block}.slot label{font-size:11px;display:flex;align-items:center;gap:5px;margin-top:10px}.slot input{width:auto;margin:0}.report-title{border-bottom:2px solid var(--green);padding-bottom:15px;margin-bottom:20px}.report-title p{font-size:13px}.code{font-family:monospace;font-size:19px;letter-spacing:2px;color:var(--green);background:#eff3e7;padding:12px;border-radius:7px}.loading{padding:50px}dialog{border:1px solid var(--line);border-radius:16px;max-width:740px;width:calc(100% - 32px);max-height:90vh;padding:28px;color:#263e36;box-shadow:0 20px 80px #143f3529}dialog::backdrop{background:#102d2466;backdrop-filter:blur(3px)}dialog h2{margin-bottom:22px}#toast{display:none;position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:13px 20px;color:white;background:#254d3b;border-radius:10px;box-shadow:0 3px 15px #0002;z-index:10;max-width:90vw;font-size:14px}#toast.show{display:block}.legal{font-size:12px;line-height:1.7;color:var(--muted)}.linklist a{display:block;margin:12px 0;font-size:13px}.print-only{display:none}
@media(max-width:1100px){.main{padding:0 24px 30px}.shell{grid-template-columns:205px 1fr}.stats{gap:10px}.stat{padding:17px}.grid{grid-template-columns:1fr}.welcome{padding:40px}.welcome h1{font-size:38px}}
@media(max-width:760px){.shell{display:block}.sidebar{height:auto;position:static;padding:17px}.nav{display:flex;overflow:auto;margin-top:18px;gap:5px}.nav button{white-space:nowrap;padding:10px;font-size:12px}.nav button span,.sidebottom{display:none}.main{padding:0 18px 30px}.topbar{height:62px;margin-bottom:25px}.stats{grid-template-columns:1fr 1fr}.formcards,.formgrid{grid-template-columns:1fr}.span2{grid-column:auto}.pagehead{align-items:flex-start}.pagehead h1{font-size:25px}.login{display:block}.welcome{padding:25px}.welcome .hero,.welcome footer{display:none}.loginform{padding:35px 24px}.planrow{grid-template-columns:1fr 1fr 1fr}.planrow>*{min-width:0}.planlabel{display:none}.card{padding:18px}.weekgrid{grid-template-columns:repeat(7,135px)}}
@media print{body{background:white;font-size:12px}.sidebar,.topbar,.no-print,button,.filters,#toast,dialog,.formfooter{display:none!important}.shell{display:block}.main,.student-shell{padding:0;max-width:none}.card{break-inside:avoid;border:1px solid #ddd;margin-bottom:12px;padding:16px}.stats{grid-template-columns:repeat(4,1fr)}.grid{display:block}.print-only{display:block}.pagehead{margin-bottom:15px}.weekgrid{overflow:visible;grid-template-columns:repeat(7,1fr)}.day{min-width:0}.notice{background:white}.badge{border:1px solid #ddd}a{color:inherit;text-decoration:none}}

.row>div:last-child{min-width:0}.row>.avatar+div{flex:1}.formcards+.card{margin-top:22px}
.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.resultanswer strong{white-space:pre-wrap;overflow-wrap:anywhere}details summary{cursor:pointer;padding:8px 0}#catalog-list{max-height:650px;overflow:auto}.actions select{width:auto}#request-meeting{margin-bottom:18px}.sidebar{overflow-y:auto}.nav{margin-top:24px}.nav button{padding:10px}.resultanswer small{overflow-wrap:anywhere}
#peer-graph {max-width:760px;margin:auto} #peer-graph svg {width:100%;height:auto} .peer-matrix td,.peer-matrix th {padding:8px;text-align:center;min-width:32px} .peer-matrix th:first-child {text-align:left;min-width:180px} [hidden] {display:none!important}

.source-matrix th{text-transform:none;letter-spacing:normal}.source-matrix tbody th{font-weight:500;min-width:180px}.source-matrix td{text-align:center}.source-matrix caption{text-align:left;padding:12px 0;font-size:13px;color:var(--muted)}

.realinstrument{border-left:4px solid #153f35}.scaletotal{font-size:15px}.scaletotal strong{font-size:30px}
.taskfigure{margin:6px 0 10px;color:#174c3d;overflow-x:auto}.taskfigure svg{max-width:100%;height:auto}.speedpair{display:grid;grid-template-columns:34px 1fr 1fr auto auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.speedpair code{font-size:17px;letter-spacing:2px;background:#f7f9f4;padding:6px 8px;border-radius:6px}.speedpair button{padding:6px 12px}.speedpair button.chosen{background:var(--green);color:white}.memshow{font-size:24px;letter-spacing:3px;font-weight:600;color:var(--green);background:#eff3e7;padding:16px;border-radius:9px;text-align:center}.speedstatus{position:sticky;top:0;z-index:2;background:#fff;padding:8px 0;font-weight:600;color:var(--green)}
/* Handbook, section headings and information cards in forms (24 Oct 2026). */
.handbook{border:1px solid var(--line);border-radius:10px;padding:.6rem .9rem;margin:.8rem 0;background:var(--soft)}
.handbook summary,.infocard summary{cursor:pointer;font-weight:600}
.formsection{margin:1.4rem 0 .4rem}
.infocard{margin:.2rem 0 .5rem;font-size:.93em}
.infocard p{margin:.3rem 0 0;padding:.4rem .6rem;border-left:3px solid var(--green);background:var(--soft)}
/* Okur izi: book widget and the teacher's catalogue additions (24 Oct 2026). */
.bookfind{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.bookfind input{flex:1;min-width:200px}
.bookhit{display:block;text-align:left;width:100%;border-bottom:1px solid var(--line)}
.bookcard{border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0;background:#fff}
.bookcard fieldset{border:0;padding:0;margin:10px 0}.bookcard legend{font-weight:600;font-size:14px}
.absorb{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:6px 0;border-bottom:1px solid var(--line);font-size:14px}.absorb span{flex:1;min-width:220px}.absorb label{display:flex;gap:4px;align-items:center;font-weight:400;margin:0}.absorb input{width:auto;margin:0}
.wrapall{overflow-wrap:anywhere}

label.step{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px dashed var(--line);border-radius:10px;margin:8px 0;font-weight:500;font-size:14px}label.step input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--green);flex:none}

/* Keşif dosyası, the student report through the student's eyes (28 Oct 2026; report.js). Section colours by class. */
.kdosya{--kpage:#fff;--kink:#20252e;--kmuted:#646a73;--kline:#e3ded2;--kmarker:#ffe27a;--ksoft:#f7f5ef;--c:#2f6f73;container-type:inline-size;color:var(--kink);font:16.5px/1.7 "Segoe UI",system-ui,-apple-system,Roboto,"Noto Sans",sans-serif}
.ksec-study{--c:#2f6f73}.ksec-strengths{--c:#a8692a}.ksec-areas{--c:#35588f}.ksec-self{--c:#86507a}.ksec-selfreg{--c:#4c7a37}.ksec-books{--c:#a2473a}.ksec-family{--c:#5f5592}.ksec-life{--c:#2b6a86}.ksec-izlem{--c:#4a4f57}.ksec-road{--c:#2f6f73}
.ksheet{background:var(--kpage);border:1px solid var(--kline);border-top:6px solid var(--c);border-radius:10px;padding:28px 34px 14px;margin:0 0 24px}
.kdosya h2,.kprose,.kkey{font-family:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif}
.kdosya p{margin:0 0 12px}
.ktitle{display:flex;gap:14px;align-items:center;margin:0 0 18px}
.knum{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--c);color:#fff;font:700 20px/1 Georgia,serif}
.ksheet h2{font-size:26px;line-height:1.2;margin:0;color:var(--kink)}
.kopener{color:var(--c);margin:2px 0 0!important;font-size:15px;font-weight:600}
.kbody{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:28px}.kbody.knomargin{grid-template-columns:1fr}
.kkey{font-size:20px;line-height:1.55;margin:0 0 16px!important}
.kdosya mark{background:linear-gradient(transparent 52%,var(--kmarker) 52%,var(--kmarker) 92%,transparent 92%);color:inherit;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.klabel{font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c);margin:0 0 6px!important}
.kmargin{background:var(--ksoft);border-radius:8px;padding:14px 16px;font-size:15px;align-self:start;border-left:4px solid var(--c);line-height:1.5}
.kmargin ul{list-style:none;margin:0;padding:0}.kmargin li{margin:0 0 12px}.kmargin b{display:block;font-size:12px;font-weight:600;color:var(--kmuted)}.kmargin span{font-style:italic}
.kviz{border:1px solid var(--kline);border-radius:8px;padding:14px 16px;margin:4px 0 18px}
.ktwo{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}.kspan{grid-column:1/-1}.kviz ul,.kviz ol{margin:0;padding-left:20px}
.kvtitle{font-weight:700;margin:0 0 4px!important;font-size:16px}.kvtitle small{font-weight:400;color:var(--kmuted)}.khowto{font-size:14px;color:var(--kmuted);margin:0 0 10px!important;line-height:1.5}
.kok .kvtitle{color:#2f6f43}.kwork .kvtitle{color:#8a5a1f}
.kab{padding:8px 0;border-top:1px dashed var(--kline)}.kab:first-of-type{border-top:0}.kabname{font-weight:700;margin:0 0 2px!important}
.krow{display:grid;grid-template-columns:185px 1fr 96px;gap:10px;align-items:center;margin:3px 0!important;font-size:14px;line-height:1.4}
.kwho{color:var(--kmuted)}.klvl{font-weight:600;font-size:14px}
.kbar{width:100%;height:11px;border-radius:6px;overflow:hidden;display:block}.ktrack{fill:#eeebe3}.kme{fill:var(--c)}.ktask{fill:#3d4756}
.kread{margin:4px 0 0!important;font-size:15px}
.ksrc{width:100%;border-collapse:collapse;font-size:15px}.ksrc th{text-align:left;font-weight:600;font-size:15px;text-transform:none;letter-spacing:normal;color:var(--kink);background:none;padding:7px 12px 7px 0;width:34%;vertical-align:top}.ksrc td{padding:7px 0;border:0}.ksrc tr+tr th,.ksrc tr+tr td{border-top:1px dashed var(--kline)}.ksrc small{color:var(--kmuted)}
.kinterests{font-size:19px;font-weight:600;padding-left:24px!important}
.kvalues{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:4px 0 0;font-size:15px}.kvalues dt{color:var(--kmuted)}.kvalues dd{margin:0;font-weight:700}
.kdots{display:flex;justify-content:space-between;gap:10px;margin:4px 0!important;font-size:15px}.kdot{display:flex;gap:4px;align-items:center}
.kdot i{width:12px;height:12px;border-radius:50%;background:var(--c)}.kdot i.off{background:none;border:1.5px solid #d8d3c7}
.kside{background:var(--ksoft);border-radius:8px;padding:10px 14px;display:flex;flex-direction:column}.kside small{color:var(--kmuted);font-size:13px}.kside b{font-size:18px}
.kshelf{display:flex;gap:10px;flex-wrap:wrap}.kspine{width:168px;border-radius:6px;border:1px solid var(--kline);border-left:8px solid var(--c);padding:10px 12px;display:flex;flex-direction:column;gap:2px;background:var(--ksoft);line-height:1.35}
.kspine span{color:var(--kmuted);font-size:14px}.kspine em{font-size:13px;color:var(--c);font-style:normal;font-weight:600;margin-top:4px}.kspine.khalf{border-left-color:#dcc2bc}.kspine.knew{background:#fff}
.kexams{list-style:none;padding:0!important}.kexams li{padding:8px 0;border-top:1px dashed var(--kline)}.kexams li:first-child{border-top:0}.kexams small{display:block;color:var(--kmuted)}
.kok-t{color:#2f7a3f;font-weight:700}.kdown{color:#b5452f;font-weight:700}.kup{color:#35588f;font-weight:700}
.ktodo{background:#eef5ef;border-radius:8px;padding:12px 16px;margin:20px 0 14px}.ktodo .klabel{color:#2f6f43}
.ktodo ul{list-style:none;margin:0;padding:0}.ktodo li{padding-left:30px;position:relative;margin:6px 0}
.ktodo li:before{content:"";position:absolute;left:2px;top:6px;width:15px;height:15px;border:2px solid #2f6f43;border-radius:3px;background:#fff}
.kself{background:#fbf3e4;border:1px dashed #d9b37a;border-radius:8px;padding:12px 16px;margin:0 0 14px}.kself .klabel{color:#8a5a1f}.kq{margin:0!important;font-weight:600}
.klines{height:64px;background:repeating-linear-gradient(transparent 0 31px,#e7d9bf 31px 32px)}
.kreflect{border:0;border-top:1px solid var(--kline);margin:10px 0 0;padding:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.kreflect legend{font-weight:700;font-size:15px;padding:0 0 8px}.kreflect label{display:flex;align-items:center;gap:8px;border:1px solid var(--kline);border-radius:6px;padding:6px 12px;font-size:14.5px;cursor:pointer}
.kreflect label:has(input:checked){border-color:var(--c);background:var(--ksoft);font-weight:600}.kreflect input{width:auto;padding:0;margin:0;flex:none}.kreflect input{accent-color:var(--c)}.kreflect label{font-weight:400;margin-bottom:0}
.kfoot{display:flex;justify-content:space-between;border-top:1px solid var(--kline);margin-top:18px;padding-top:8px;font-size:12.5px;color:var(--kmuted)}
.kletter{border-top-color:#2f6f73}.khead{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--kmuted);border-bottom:2px solid var(--kink);padding-bottom:8px;margin-bottom:26px}
.kprose{max-width:62ch;margin:0 auto;font-size:18px;line-height:1.75}.kprose h2{font-size:28px;margin:0 0 16px}.kprose p{margin:0 0 14px;text-align:left;hyphens:manual}
.kstrong{margin:-4px 0 16px;padding:0 0 0 22px}.kstrong li{margin:2px 0;font-weight:700}.kstrong li::marker{color:#2f6f73}
.kcontents{font-family:"Segoe UI",system-ui,sans-serif;font-size:15px;border-top:1px solid var(--kline);border-bottom:1px solid var(--kline);padding:14px 0 10px;margin:22px 0 18px}
.kcontents ol{margin:0;padding-left:26px;columns:2;column-gap:28px}.kcontents li{break-inside:avoid;margin:0 0 8px;line-height:1.35}.kcontents li b{display:block}.kcontents li span{color:var(--kmuted);font-size:14px}
.kwho-sees{font-size:15px;color:var(--kmuted)}.ksign{text-align:right;font-style:italic;margin-top:20px!important}
@container (max-width:760px){.kbody{grid-template-columns:1fr}.kmargin{order:-1}.ksheet{padding:20px 16px 10px}.kprose{font-size:17px}.kcontents ol{columns:1}}
@container (max-width:520px){.ktwo{grid-template-columns:1fr}.krow{grid-template-columns:1fr 92px;gap:0 10px;margin:6px 0!important}.krow .kwho{grid-column:1/-1}.ksheet h2{font-size:22px}.kkey{font-size:18px}.kspine{width:100%}.ksrc th{width:40%}}
@media print{.kdosya{container-type:normal}.ksheet{break-before:page;border:0;border-top:6px solid var(--c);border-radius:0;margin:0}.kletter{break-before:auto}.kreflect input:not(:checked)+span{opacity:.75}}
/* Yazılılarım (29 Oct 2026): subject rows × written exams; wraps under the subject name on a phone. */
.termtabs{margin:0 0 18px;max-width:320px}.examgrid{display:grid;gap:10px}.examrow{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.examrow:last-child{border-bottom:0}.examcells{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.examcells button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 6px;font-size:13px}.examcells button small{font-weight:400;font-size:11px;color:inherit;opacity:.8}.examcells button.ghost{border:1px dashed #cdd8cf}.examcells button.secondary{background:#eaf0dd;border-color:#d6e2c6}
@media(max-width:760px){.examrow{grid-template-columns:1fr}.examcells button{font-size:12px}}
/* Yol haritam (deneme sürümü, 29 Oct 2026) */
.rmdays{display:flex;flex-wrap:wrap;gap:8px}.rmday ul{margin:8px 0;padding-left:18px}.rmday li{margin:4px 0;line-height:1.5}.rmday.today{border-color:#b4c990}.rmday .cardhead select{width:auto}.rmday.card{margin-bottom:12px;padding:16px 18px}section.rmday:not(.card){padding:10px 0;border-bottom:1px solid var(--line)}div.rmday{padding:10px 0;border-bottom:1px solid var(--line)}div.rmday:last-child{border-bottom:0}.rmfeedback{background:#fcf5e8;border-color:#f0e3c9}.rmfeedback p{margin-bottom:8px}.rmpick{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}.rmpick .rmtask{text-align:left;font-weight:500;font-size:13px}.stars{display:grid;gap:4px}.stars span{color:#b48a2c;letter-spacing:1px}
.rmpick button.chosen{background:var(--green);color:#fff;border-color:var(--green)}.rmextra{margin:14px 0}.rmextra .actions select{width:auto}#pick-list{margin:6px 0;padding-left:18px}
.rmwarn{font-size:13px;color:#87602f;background:#fcf5e8;border:1px solid #f0e3c9;border-radius:8px;padding:8px 12px;margin:8px 0}

/* ===== Görünüm 2.0 (30 Ekim 2026, kullanıcı: "mizanpaj, düzen, renk; ai slop'tan uzak, tekdüze olmadan") =====
   Kâğıt zemin, mürekkep mavisi eylemler, tek bir sıcak vurgu (kiremit) ve yer yer zeytin/gök tonları.
   Başlıklar sistemdeki tırnaklı yazı tipiyle; gövde sistem sans. Dış kaynak (font, CDN) yok: CSP 'self'. */
:root{--paper:#f6f2ea;--card:#fffdf8;--ink:#1f2b37;--ink2:#3c4a57;--accent:#c2532d;--olive:#5d6b2f;--sky:#2f6d8f;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Noto Serif","DejaVu Serif",Georgia,serif}
body{background:var(--paper)}
h1,h2,.brand,.loginbox h2,dialog h2{font-family:var(--serif);font-weight:600;letter-spacing:0;color:var(--ink)}
h1{font-size:34px;line-height:1.15}h2{font-size:20px}
button{border-radius:6px;background:var(--ink);font-weight:600}
button.secondary{background:transparent;color:var(--ink);border-color:#cfc6b4}button.secondary:hover{background:var(--soft);filter:none}
button.ghost{color:var(--sky)}
input,select,textarea{border-color:#d6cdbb;border-radius:6px;background:#fffdf8;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--sky);outline-offset:1px;border-color:var(--sky)}
a{color:var(--sky)}
/* Marka */
.brand{display:flex;align-items:center;gap:11px;font-size:17px;font-weight:600;line-height:1.25;color:var(--ink)}
.brand small{display:block;font-family:"Noto Sans",system-ui,sans-serif;font-size:12px;letter-spacing:0;font-weight:400;color:var(--muted);margin-top:3px;text-transform:none}
.logo{width:36px;height:36px;color:var(--ink);flex:none}.logo .logo-start{fill:var(--accent)}
/* Kabuk: koyu yeşil yan panel yerine kâğıt üstünde ince bir çizgi */
.shell{grid-template-columns:232px 1fr}
.sidebar{background:transparent;color:var(--ink);border-right:1px solid var(--line);padding:26px 16px}
.nav{margin-top:34px;gap:2px}
.nav button{background:transparent;color:var(--ink2);font-weight:500;padding:10px 12px;border-radius:4px;border-left:3px solid transparent}
.nav button:hover{background:var(--soft);filter:none}
.nav button.active{background:var(--card);color:var(--ink);font-weight:650;border-left-color:var(--accent);box-shadow:0 1px 0 var(--line)}
.shell:not(.studentarea) .nav button span{display:none}
.topbar{height:64px;border-bottom:0;margin-bottom:18px;font-size:13px;color:var(--muted)}
.main{padding:0 44px 48px}
.pagehead{align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:16px}
.pagehead p{font-size:15px;color:var(--ink2)}
.eyebrow{display:none}
.card,.stat{background:var(--card);border-color:var(--line);border-radius:6px}
.notice{background:#f1ecdf;border:0;border-left:3px solid var(--olive);border-radius:2px;color:var(--ink2)}
.notice.warm{background:#fbefe2;border-left-color:var(--accent);color:#6b3a1c}
.badge{border-radius:3px;background:#e8eedb;color:var(--olive)}.badge.pending{background:#fbe9dc;color:#9a4a22}.badge.neutral{background:#eeeae1;color:var(--muted)}
th{text-transform:none;letter-spacing:0;font-size:12px;font-weight:650;color:var(--ink2);background:transparent;border-bottom:2px solid var(--ink)}
td{border-bottom:1px dotted #d6cdbb}
.avatar{background:#ece5d6;color:var(--ink2)}
.option{background:#f8f4ea;border:1px solid transparent;border-radius:5px}.option:has(input:checked){border-color:var(--sky);background:#eef4f7}
.option input{accent-color:var(--sky)}
.question{background:var(--card);border-color:var(--line);border-radius:6px}
.tabs{background:var(--soft);border-radius:6px}.tabs button{color:var(--ink2)}.tabs button.active{background:var(--card);color:var(--ink)}
.progress>i{background:var(--olive)}
dialog{border-radius:8px;background:var(--card);color:var(--ink);box-shadow:0 18px 60px #1f2b3733}dialog::backdrop{background:#1f2b3755;backdrop-filter:none}
#toast{background:var(--ink);border-radius:6px}
.code{color:var(--ink);background:#efe9dc}
.formsection{font-family:var(--serif);font-size:19px;border-bottom:1px solid var(--line);padding-bottom:6px}
.handbook{background:#f1ecdf;border-color:transparent;border-radius:4px}
.infocard p{border-left-color:var(--sky);background:#eef4f7}
/* Giriş: tek sütunlu sade kart, sol tarafta yalnız marka */
.login{grid-template-columns:minmax(280px,.9fr) 1.1fr;background:var(--paper)}
.welcome{background:var(--ink);color:#f3ede1;padding:56px;justify-content:center;gap:22px}
.welcome .brand{font-size:30px;color:#f6f2ea}.welcome .logo{width:64px;height:64px;color:#f6f2ea}
.welcome .intro{color:#c9c2b3;font-size:17px;max-width:360px;margin:0}
.loginform{background:var(--paper)}.loginbox{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:34px}
.loginbox h2{font-size:30px;margin-bottom:6px}.loginbox>p{color:var(--ink2)}
/* Karşılama: günlük defter + yan sütun (iki farklı biçim: liste ve çetele) */
.overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,1fr);gap:34px;margin-top:22px}
.daybook{margin-bottom:28px}
.daybook h2{display:flex;align-items:baseline;gap:10px;font-size:22px;margin-bottom:8px}
.daybook h2 small{font-family:"Noto Sans",system-ui,sans-serif;font-size:13px;font-weight:400;color:var(--muted)}
.daybook ul{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.daybook li{display:grid;grid-template-columns:150px 1fr auto;gap:14px;align-items:baseline;padding:11px 0;border-bottom:1px dotted #cfc6b4}
.daybook .what{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:14px}
.daybook em{font-style:normal;color:var(--ink2)}
.daybook time{font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted)}
button.who,button.did{background:none;border:0;padding:0;color:var(--ink);font-weight:650;text-align:left;border-radius:0}
button.did{font-weight:500;color:var(--sky);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
button.who:hover{color:var(--accent);filter:none}button.did:hover{color:var(--accent);filter:none}
.sidecol section{margin-bottom:26px}
.sidecol h2{font-size:18px;margin-bottom:10px}
.quiet{background:#fbefe2;border-left:3px solid var(--accent);padding:14px 16px}
.quiet p{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0}
.ledger ol{list-style:none;margin:0;padding:0}
.ledger li{display:grid;grid-template-columns:minmax(0,1fr) 90px 44px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dotted #d6cdbb;font-size:14px}
.ledger b{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink2);text-align:right;font-size:13px}
progress.meter{appearance:none;-webkit-appearance:none;width:100%;height:6px;border:0;border-radius:3px;background:#e7dfcf;overflow:hidden}progress.meter::-webkit-progress-bar{background:#e7dfcf}progress.meter::-webkit-progress-value{background:var(--olive)}progress.meter::-moz-progress-bar{background:var(--olive)}
/* Öğrenci menüsü: her bölümün kendi rengi (tekdüzelik yerine yön bulma) */
.studentarea .nav button span{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:10px;font-size:0;vertical-align:middle;background:var(--sec,#b8ae9a)}
.studentarea .nav button:nth-child(1){--sec:var(--ink)}.studentarea .nav button:nth-child(2){--sec:var(--accent)}.studentarea .nav button:nth-child(3){--sec:var(--olive)}
.studentarea .nav button:nth-child(4){--sec:#7a5ea8}.studentarea .nav button:nth-child(5){--sec:var(--sky)}.studentarea .nav button:nth-child(6){--sec:#b8892a}
.studentarea .nav button:nth-child(7){--sec:#8a4f6b}.studentarea .nav button:nth-child(8){--sec:#4f7d6b}.studentarea .nav button:nth-child(9){--sec:#9a948a}
.studentarea .nav button.active{border-left-color:var(--sec,var(--accent))}
@media(max-width:1100px){.main{padding:0 26px 32px}.shell{grid-template-columns:200px 1fr}.overview{grid-template-columns:1fr}}
@media(max-width:760px){
 .sidebar{border-right:0;border-bottom:1px solid var(--line);padding:14px 16px}
 .nav{margin-top:12px}.nav button{border-left:0;border-bottom:3px solid transparent}.nav button.active{border-bottom-color:var(--accent);box-shadow:none}
 .studentarea .nav button.active{border-bottom-color:var(--sec,var(--accent))}.studentarea .nav button span{display:inline-block}
 .main{padding:0 16px 28px}.topbar{height:52px;margin-bottom:8px}
 h1{font-size:27px}.pagehead{flex-direction:column;align-items:flex-start}
 .login{display:block}.welcome{padding:26px 20px;gap:10px}.welcome .brand{font-size:22px}.welcome .logo{width:44px;height:44px}.welcome .intro{font-size:15px}
 .loginform{padding:20px 16px}.loginbox{padding:22px 18px}
 .daybook li{grid-template-columns:1fr auto}.daybook .what{grid-column:1/-1;order:3}
}
@media print{.sidebar{display:none!important}}
.rowactions{white-space:nowrap;text-align:right}button.ghost.danger{background:transparent;color:#a4342c;border:0}
.row button,.actions button{white-space:nowrap}
/* Öğrenci ana sayfası (30 Ekim 2026): bugünkü plan, bekleyen çalışmalar, pano */
.today{border-left:4px solid #b8892a}
.todaylist{margin:0;padding-left:20px}.todaylist li{margin:6px 0}.todaylist li.did{color:var(--muted);text-decoration:line-through}
.todaynote{font-size:14px;margin:10px 0 0;color:var(--ink2)}
.board{border-top:4px solid var(--ink)}
.board .tally{font-variant-numeric:tabular-nums;font-weight:650;color:var(--ink2)}
.tiles{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px}
.tiles li{min-height:52px;padding:8px 10px;border:1px dashed #cfc6b4;border-radius:3px;font-size:12.5px;line-height:1.35;color:var(--muted);display:flex;align-items:flex-end}
.tiles li.on{border:0;border-left:4px solid var(--t,var(--ink));background:#efe9dc;color:var(--ink)}
.tiles li.on:nth-child(5n+2){--t:var(--accent)}.tiles li.on:nth-child(5n+3){--t:var(--olive)}.tiles li.on:nth-child(5n+4){--t:var(--sky)}.tiles li.on:nth-child(5n+5){--t:#b8892a}
.boardgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px}
.bsum h3,.board>h3{font-family:var(--serif);font-size:17px;margin:18px 0 8px}.bsum h3:first-child{margin-top:0}
.bsum ul{margin:0;padding-left:20px}.bsum li{margin:4px 0}
.pills{display:flex;flex-wrap:wrap;gap:6px}.pills span{background:#e8eedb;color:var(--olive);padding:4px 10px;border-radius:3px;font-size:14px;font-weight:600}
.bsteps{margin:0;padding-left:20px}.bsteps li{margin:10px 0}.bsteps li>span:first-child{display:block}
.stepact{display:flex;gap:14px;align-items:center;margin-top:4px;font-size:13px}.stepact em{font-style:normal;color:var(--olive);font-weight:600}
label.tried{display:flex;align-items:center;gap:6px;margin:0;font-weight:500;font-size:13px}label.tried input{width:auto;margin:0;accent-color:var(--olive)}
.bmain{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.bmain li{padding:9px 0 9px 12px;border-left:3px solid var(--sec,#b8ae9a);margin:6px 0;font-size:14px}.bmain b{display:block;font-size:13px;color:var(--ink2)}
.sec-study{--sec:var(--accent)}.sec-strengths{--sec:#b8892a}.sec-areas{--sec:var(--olive)}.sec-self{--sec:#7a5ea8}.sec-selfreg{--sec:var(--sky)}
.sec-books{--sec:#4f7d6b}.sec-family{--sec:#8a4f6b}.sec-life{--sec:var(--ink)}.sec-izlem{--sec:#9a948a}
@media(max-width:760px){.boardgrid,.bmain{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(2,1fr)}}
.homelinks{display:flex;flex-wrap:wrap;gap:4px 18px}
/* Rapor baskısı (G27): yeni ya da değişen cümlenin işareti */
.marked{background:#fbefe2;box-shadow:-6px 0 0 #fbefe2,6px 0 0 #fbefe2;border-radius:2px}li.marked{background:#fbefe2}
.notice.edition{border-left-color:var(--accent);display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.firstlink{display:block;margin-top:14px;padding:0}.bigcode{font-size:30px;text-align:center;letter-spacing:4px;margin:18px 0}.identity .badge{margin-left:6px}
