/* MF Doctor inspired palette: charcoal, warm paper, and muted gold. */
:root{color:#27241f;background:#f1ede3}
.sidebar{width:248px;background:linear-gradient(160deg,#211f1b,#28261f);color:#f7f2e7}
.brand{padding:31px 20px 40px;gap:12px}
.brand-symbol{display:flex;align-items:center;justify-content:center;flex:none;white-space:nowrap;width:43px;height:43px;border:1px solid #ad9556;border-radius:12px;color:#c5aa65;font-size:17px;letter-spacing:-2px;line-height:1;direction:ltr}
.brand-symbol span{color:#c5aa65}.brand-copy{color:#f3efe5;letter-spacing:1.5px}.brand-copy small{color:#aaa69a;letter-spacing:1px}
.nav-heading{color:#8d897b;letter-spacing:1px}.sidebar nav{padding:0 19px}
.nav-item{border:1px solid transparent;color:#b7b3a9;border-radius:10px;padding:13px 12px;font-weight:700}
.nav-item.current,.nav-item:hover{background:#383429;border-color:#504733;color:#fff;box-shadow:inset 2px 0 #c7aa65}
.nav-item.current svg{color:#ccb36f}.nav-count{background:#6d5c35;color:#ebd69c}
.sidebar-foot{border-color:#49453a;padding:18px 17px}.profile-avatar{background:#5b5037;color:#efd99b}.profile small{color:#a5a095}
.topbar{background:#211f1b;border-color:#211f1b;height:58px;padding:0 42px}
.crumb,.crumb strong,.top-actions{color:#e5e0d2}.crumb span{color:#817966}.live-dot{background:#c9ad66;box-shadow:0 0 0 4px #c9ad6625}
.main{background:radial-gradient(circle at 80% 0%,#f7f4ea 0%,#f0ece2 58%,#eee9de 100%)}
.content{padding:38px 42px 80px}.eyebrow{color:#7c6731;letter-spacing:2.1px}
.heading-row h1{font-size:37px;color:#24221d;letter-spacing:-1.5px}.title-accent{color:#be9e52}.heading-row p{color:#77736a}
.primary{background:#c0a15d;color:#282217;border:1px solid #ae8f4d;box-shadow:0 5px 15px #6f57371a;border-radius:9px;font-weight:800}
.primary:hover{background:#d0b36e}
.stats{gap:14px;margin:30px 0 22px}.stat{border:1px solid #dbd4c4;background:#faf8f2;border-radius:14px;box-shadow:0 7px 20px #2d281809;min-height:134px;padding:23px}
.stat:first-child{background:#26241f;border-color:#27241f;color:#c6ab69;box-shadow:0 14px 27px #302a1b25}
.stat:first-child small{color:#bdb6a5}.stat:first-child strong{color:#c6ab69}
.stat-icon{border-radius:11px;width:48px;height:48px}.stat-icon.purple{background:#a98c491f;color:#cab170}
.stat-icon.mint{background:#e2eee7;color:#398467}.stat-icon.amber{background:#efe6cc;color:#a3843f}
.stat small{color:#746f65;font-size:10px;font-weight:800;letter-spacing:.3px}.stat strong{font-size:28px}
.collection{background:#faf8f2;border:1px solid #dbd4c4;border-radius:15px;box-shadow:0 7px 22px #302b1a0a}
.collection-head h2{color:#292722;font-size:19px}.collection-head p{color:#817b6e}
.search,.select-wrap{border-color:#d8d1c3;background:#fffefa;color:#827b6b}
.search:focus-within,.select-wrap:focus-within{border-color:#bea05f;box-shadow:0 0 0 3px #c8ac6740}
.search input,.select-wrap select{color:#2f2b24}.search input::placeholder{color:#aaa294}
.student-card{border-color:#ded8ca;background:#fffefa;color:#28251f;border-radius:12px}
.student-card:hover{border-color:#b69a58;box-shadow:0 12px 27px #302b1d1c}
.avatar.green{background:#e6eee0;color:#4e7e4b}.avatar.orange{background:#f5eadb;color:#9e7140}.avatar.neutral{background:#ede7d4;color:#887444}
.status{background:#f3ead7;color:#947748}.status.active{background:#e6f0e7;color:#47876b}
.card-sub,.card-bottom{color:#868073}.card-divider{background:#eee9df}.card-arrow{color:#a8894a}
.drawer{background:#faf8f2;color:#292620}.drawer-header,.tabs{border-color:#ded7c8}.drawer-header .icon-button{background:#eee8dc;color:#625a4a}
.student-hero{background:#f4f0e6;border-bottom:1px solid #e4dccd}.student-hero p,.section-heading span{color:#817a6d}
.tabs button{color:#827b6e}.tabs button.selected{color:#9b7a36;border-color:#b99b58}
.field span,.notes-panel label{color:#625d54}.field input,.field select,.field textarea,.notes-panel textarea{border-color:#dcd5c7;background:#fffefa;color:#2f2b24}
.field input:focus,.field select:focus,.field textarea:focus,.notes-panel textarea:focus{border-color:#bda05e}
.text-button{color:#8e6d29}.form-actions,.history-item{border-color:#e5dfd1}.note{border-color:#e3dccd;background:#fffefa}
.history-icon{background:#eee4cc;color:#9c7c36}.modal{background:#faf8f2;color:#292620}.modal-cover,.drawer-overlay{background:#161410a6}
.toast{background:#29261f}.login-page{background:radial-gradient(circle at 80% 0%,#f5f1e7,#eae5d9)}
.login-card{background:#faf8f2;border:1px solid #d9d0bb;border-radius:16px;box-shadow:0 24px 55px #2d281e1c}
.brand-login{background:#22201b;grid-column:1/-1}.brand-login .brand-symbol{color:#c5aa65}.brand-login .brand-copy{color:#f3eee2}.brand-login .brand-copy small{color:#b1aa9d}
.login-art{background:linear-gradient(145deg,#24221d,#3a3325);color:#e9d49b}.orb-one{background:#a78c4633}.orb-two{background:#c5a45c20}
.login-content h1{color:#28251f}.login-content p{color:#777268}.login-content input{border-color:#d9d0be;background:#fffefa}.login-content .form-message{background:#e8efe6;color:#3d745b}
.login-content form[hidden]{display:none}.login-methods{display:flex;gap:7px;padding:4px;background:#eee8da;border-radius:9px;margin:0 0 18px}.login-methods button{flex:1;border:0;background:transparent;color:#786f5e;font-size:11px;font-weight:700;padding:9px 5px;border-radius:7px}.login-methods button.selected{background:#fffefa;color:#403623;box-shadow:0 2px 7px #28201214}.login-content form label:not(:first-child){margin-top:9px}
.reconnect-card{width:min(480px,100%);padding:38px;background:#faf8f2;border:1px solid #d9d0bb;border-radius:16px;box-shadow:0 24px 55px #2d281e1c;text-align:right}.reconnect-card h1{margin:12px 0;color:#28251f;font-size:28px}.reconnect-card p{color:#777268;line-height:1.7;font-size:14px;margin:0 0 22px}
.account-panel{width:min(560px,100%);margin-top:28px;background:#faf8f2;border:1px solid #dbd4c4;border-radius:15px;padding:30px;box-shadow:0 7px 22px #302b1a0a}.account-panel h2{font-size:19px;margin:0 0 6px}.account-panel p,.account-panel small{color:#777063;font-size:12px;line-height:1.7}.account-panel p{margin:0 0 24px}.account-panel form{display:flex;flex-direction:column;gap:14px}.account-panel form .primary{align-self:flex-start;margin:4px 0 12px}
.admin-panel{background:#faf8f2;border:1px solid #dbd4c4;border-radius:15px;padding:26px;margin-top:28px;box-shadow:0 7px 22px #302b1a0a}
.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-section{background:#fffefa;border:1px solid #e1d9ca;border-radius:12px;padding:22px}
.admin-section h2{font-size:18px;margin:0 0 5px}.admin-section p{font-size:12px;color:#777063;line-height:1.6;margin:0 0 18px}
.admin-list{display:flex;flex-direction:column;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.admin-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #e9e2d6;border-radius:8px;padding:10px 12px;font-size:12px}
.admin-list .owner-tag{font-size:10px;color:#8a713d;background:#f0e6cd;border-radius:20px;padding:3px 8px}
.admin-list button{border:1px solid #d9c9a8;background:#f7f1e3;color:#815f2d;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:700}
.admin-list button:hover{background:#efe1c4}.admin-list .danger-button{color:#a1463f;border-color:#e6c9c4;background:#fff4f2}
.admin-list .field-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-list .field-kind{color:#827662;font-size:11px}.field-options{font-size:11px;color:#81796b;margin-top:-8px}.field-options[hidden]{display:none}
.modal .danger-button{border:1px solid #d8aaa3;border-radius:8px;background:#fff0ed;color:#963e38;padding:9px 12px;font-size:12px;font-weight:700}
.admin-inline-form{display:flex;gap:8px}.admin-inline-form input{flex:1;min-width:0;border:1px solid #d8d0c2;border-radius:8px;padding:10px;background:white;direction:ltr;text-align:left}
.admin-inline-form .primary{white-space:nowrap}.admin-note{font-size:11px;color:#81796b;line-height:1.6;margin-top:12px}
.nav-item.admin-link{margin-top:6px}.nav-item.admin-link.current{background:#383429;color:#fff}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{width:65px}.brand{padding:21px 10px}.nav-item.admin-link{font-size:0}.topbar{padding:0 20px}.content{padding:28px 20px}.stat{min-height:90px}.stat strong{font-size:22px}}
@media(max-width:510px){.admin-panel{padding:13px}.admin-section{padding:16px}.admin-inline-form{flex-direction:column}.stats{gap:7px}.stat{padding:12px}.heading-row h1{font-size:29px}}
