:root{color:#16302b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}#root{min-height:100vh}.app-shell{color:#16302b;background:#f4f7f5;grid-template-columns:320px minmax(0,1fr);min-height:100vh;display:grid}.auth-shell{color:#16302b;background:#f4f7f5;place-items:center;min-height:100vh;padding:24px;display:grid}.terms-auth-shell{place-items:start center}.auth-card{background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:20px;width:min(460px,100%);padding:24px;display:grid;box-shadow:0 18px 45px #123c3514}.auth-card h1{margin:4px 0 8px;font-size:40px}.auth-card p{color:#60726c;margin:0;line-height:1.5}.auth-tabs{background:#edf4f1;border-radius:8px;grid-template-columns:1fr 1fr;gap:8px;padding:4px;display:grid}.auth-tabs button{background:0 0}.auth-tabs button.active{color:#fff;background:#123c35}.auth-form{gap:14px;display:grid}.auth-note{padding-top:2px;font-size:13px}.sidebar{color:#f4fbf8;background:#123c35;flex-direction:column;gap:28px;min-height:100vh;padding:28px;display:flex}.sidebar h1{margin:4px 0 10px;font-size:42px}.brand-logo{box-sizing:border-box;background:#0b4a3d;border:1px solid #82d7bf40;border-radius:8px;width:min(320px,100%);height:auto;margin:0 auto 16px;padding:8px 10px;display:block}.brand-logo-sidebar{background:#0b4a3d59;width:100%;max-width:300px;margin-bottom:14px;margin-left:0}.sidebar-copy{color:#c4dad3;margin:0;line-height:1.5}.eyebrow{color:#42c49e;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.notice{background:#f4fbf814;border:1px solid #2c665b;border-radius:8px;align-items:flex-start;gap:12px;padding:14px;display:flex}.notice-icon{color:#795a00;background:#fff2c8;border-radius:999px;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:16px;font-weight:900;display:grid}.notice div{gap:6px;display:grid}.notice button{color:#123c35;background:#f4fbf8;width:fit-content;min-height:30px;margin-top:4px;padding:0 10px;font-size:13px}.notice button:hover{background:#dff8ef}.user-box{background:#174940;border:1px solid #2c665b;border-radius:8px;gap:6px;padding:14px;display:grid}.user-box span,.user-box small{color:#c4dad3}.user-box button{color:#123c35;background:#f4fbf8;margin-top:6px}.notice div span,.empty{color:#c4dad3;line-height:1.45}.main-nav{gap:8px;display:grid}.main-nav button{text-align:left;color:#f4fbf8;background:#174940;border:1px solid #2c665b;justify-content:start}.main-nav button.active{color:#123c35;background:#f4fbf8}.history{gap:14px;display:grid}.section-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-title h2,.section-title h3,.cards h4{margin:0}.case-list{gap:8px;display:grid}.case-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.case-row>button:first-child{text-align:left;color:#16302b;background:#f4fbf8;gap:3px;display:grid}.case-list small{color:#60726c}.workspace{align-content:start;gap:18px;padding:28px;display:grid}.topbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.topbar h2{margin:4px 0 0;font-size:30px}.progress{color:#60726c;gap:8px;min-width:180px;font-size:13px;display:grid}.progress div{background:#dce7e2;border-radius:999px;height:8px;overflow:hidden}.progress i{border-radius:inherit;background:#1c9a78;height:100%;display:block}.status{color:#0d6b52;background:#e1f5ed;border-radius:8px;margin:0;padding:12px 14px;font-weight:700}.status-error{color:#9b2418;background:#ffe8e4}.title-with-badge{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.badge{color:#795a00;text-transform:uppercase;background:#fff2c8;border-radius:999px;width:fit-content;padding:4px 9px;font-size:12px;font-weight:900}.badge-openai{color:#08765b;background:#dff8ef}.stepper{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stepper button{color:#49645c;background:#edf4f1}.stepper button.active{color:#fff;background:#123c35}.flow-panel{max-width:1040px}.large-textarea{min-height:220px}.muted{color:#60726c;margin:4px 0 0;font-size:14px;line-height:1.4}.question-list{gap:14px;display:grid}.question-card{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;gap:14px;padding:16px;display:grid}.question-card h4{color:#16302b;margin:0 0 6px}.question-card p{color:#60726c;margin:0;line-height:1.45}.single-question{gap:18px}.question-progress{color:#60726c;gap:8px;font-size:13px;font-weight:800;display:grid}.question-progress div{background:#dce7e2;border-radius:999px;height:8px;overflow:hidden}.question-progress i{border-radius:inherit;background:#1c9a78;height:100%;display:block}.option-grid{flex-wrap:wrap;gap:8px;display:flex}.option-grid button{color:#123c35;background:#edf4f1}.option-grid button.selected{color:#fff;background:#1c9a78}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.question-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.grid{grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);align-items:start;gap:18px;display:grid}.panel{background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:16px;padding:20px;display:grid}.result-panel{max-height:calc(100vh - 56px);position:sticky;top:20px;overflow:auto}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}label{color:#314943;gap:7px;font-size:13px;font-weight:800;display:grid}input,textarea,select,button{font:inherit}input,textarea,select{box-sizing:border-box;color:#16302b;background:#fbfdfc;border:1px solid #cfded8;border-radius:8px;width:100%}input,select{min-height:42px;padding:0 12px}textarea{resize:vertical;min-height:96px;padding:12px}input:focus,textarea:focus,select:focus{border-color:#1c9a78;outline:2px solid #8ee0c6}button{color:#123c35;cursor:pointer;background:#e4eee9;border:0;border-radius:8px;min-height:38px;padding:0 13px;font-weight:800}button:hover{background:#d6e8e0}button:disabled{cursor:not-allowed;opacity:.55}.primary{color:#fff;background:#1c9a78;min-height:48px}.primary:hover{background:#147c61}.upload-box{background:#f7fbf9;border:1px dashed #9ec7b9;border-radius:8px;padding:14px}.upload-box input{background:#fff;padding:10px}.upload-box span{color:#60726c;font-weight:600}.file-list{gap:8px;display:grid}.file-row{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.file-row span{text-overflow:ellipsis;white-space:nowrap;color:#314943;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.file-row button{color:#9b2418;background:#ffe8e4;min-height:32px}.hint-text{color:#60726c;margin:-6px 0 0;font-size:13px;line-height:1.4}.suggestion-panel{background:#f7fbf9;border:1px solid #cfded8;border-radius:8px;gap:10px;padding:14px;display:grid}.suggestion-panel h4{margin:0}.suggestion-card{background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:8px;padding:10px;display:grid}.suggestion-card>button{text-align:left;background:#edf4f1;gap:3px;min-height:auto;padding:8px 10px;display:grid}.suggestion-card small{color:#60726c}.patient-chip-list{flex-wrap:wrap;gap:8px;display:flex}.patient-chip-list button{color:#0d6b52;background:#e1f5ed;min-height:32px}.linked-history-card{background:#fbfdfc;border:1px solid #cfded8;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.linked-history-card.linked{background:#f4fbf8;border-color:#9ec7b9}.linked-history-card div:first-child{gap:4px;display:grid}.linked-history-card strong{color:#123c35}.linked-history-card span{color:#60726c;font-size:13px;line-height:1.4}.linked-history-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.linked-history-actions button{background:#edf4f1;min-height:34px}.linked-history-actions button.selected{color:#fff;background:#123c35}.records-panel{max-width:1120px}.terms-page{gap:16px;max-width:1120px;display:grid}.terms-page-acceptance{width:min(1120px,100%)}.terms-hero{background:linear-gradient(135deg,#1c9a781f,#ffffffb8),#fff;border:1px solid #cfded8;border-radius:8px;gap:12px;padding:24px;display:grid}.terms-hero h3{color:#123c35;margin:0;font-size:30px}.terms-hero p,.terms-card p,.terms-panel p,.terms-footer p{color:#526b64;margin:0;line-height:1.6}.terms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.terms-card{background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:10px;padding:18px;display:grid}.terms-card span{color:#0d6b52;background:#e1f5ed;border-radius:999px;width:fit-content;padding:4px 9px;font-size:12px;font-weight:900}.terms-card h4,.terms-panel h4{color:#123c35;margin:0}.terms-panel{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:20px;display:grid}.terms-panel div{gap:10px;display:grid}.terms-panel ul{color:#526b64;margin:0;padding-left:20px;line-height:1.6}.terms-footer{background:#f4fbf8;border:1px solid #9ec7b9;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.terms-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.terms-footer .status{flex:100%}.records-search{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;display:grid}.record-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.record-card{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;min-height:170px;display:grid;position:relative}.record-card-open{text-align:left;background:0 0;border:0;gap:8px;width:100%;min-height:170px;padding:16px 46px 16px 16px;display:grid}.record-card:hover{background:#f4fbf8;border-color:#9ec7b9}.record-card-open:hover{background:0 0}.record-card strong{color:#123c35;font-size:20px}.record-card small,.record-card em{color:#60726c;font-style:normal}.record-card-open div,.patient-summary{flex-wrap:wrap;gap:8px;display:flex}.record-card-open div span,.patient-summary span,.folder-mark{color:#0d6b52;background:#e1f5ed;border-radius:999px;width:fit-content;padding:4px 8px;font-size:12px;font-weight:800}.folder-mark{color:#795a00;text-transform:uppercase;background:#fff2c8}.patient-edit-card{background:#fbfdfc;border:1px solid #d8e8e1;border-radius:8px;gap:12px;margin-top:12px;padding:14px;display:grid}.tutor-profile-card{background:linear-gradient(135deg,#1c9a7814,#ffffffe6),#fbfdfc;border:1px solid #cfded8;border-radius:8px;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:14px;padding:16px;display:grid}.tutor-profile-card h4{color:#123c35;margin:8px 0 4px;font-size:20px}.tutor-profile-card p{color:#60726c;margin:0}.tutor-profile-grid{gap:8px;display:grid}.tutor-profile-grid span{color:#314943;background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:3px;padding:10px 12px;line-height:1.35;display:grid}.tutor-profile-grid strong{color:#0d6b52;text-transform:uppercase;font-size:12px}.manual-event-panel{background:#f7fbf9;border:1px solid #dde8e3;border-radius:8px;gap:14px;padding:16px;display:grid}.manual-event-panel h4{color:#123c35;margin:0}.record-title-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.record-actions-menu{display:inline-flex;position:relative}.record-card>.record-actions-menu{z-index:2;position:absolute;top:10px;right:10px}.gear-button{color:#49645c;background:#e4eee9cc;border:1px solid #0000;border-radius:999px;width:34px;min-height:34px;padding:0;font-size:15px}.gear-button:hover{color:#123c35;background:#fff;border-color:#9ec7b9}.record-dropdown{z-index:6;background:#fff;border:1px solid #dde8e3;border-radius:8px;min-width:180px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #123c351f}.history-actions-menu .gear-button{background:#edf4f1;width:36px;min-height:100%}.history-dropdown{min-width:210px;right:0}.history-dropdown button{text-align:left;justify-content:flex-start;width:100%}.danger-menu-item{text-align:left;color:#9b2418;background:#fff6f4;justify-content:flex-start;width:100%}.danger-menu-item:hover{background:#ffe8e4}.timeline{gap:10px;display:grid}.timeline-item{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;display:grid;position:relative}.timeline-anamnesis{background:#f4fbf8;border-color:#c6ddd5}.timeline-manual{background:#fffdf6;border-color:#e0d9bd}.timeline-item-open{text-align:left;background:0 0;gap:6px;min-height:auto;padding:14px 46px 14px 14px;display:grid}.timeline-event-content{padding-right:46px}.timeline-item-open:hover{background:0 0}.timeline-item>.record-actions-menu{z-index:2;position:absolute;top:10px;right:10px}.timeline-item span{color:#0d6b52;font-size:12px;font-weight:900}.timeline-item p{color:#60726c;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.admin-layout{gap:16px;max-width:1120px;display:grid}.admin-form-panel{background:linear-gradient(#fff 0%,#fbfdfc 100%)}.toggle-row{background:#f7fbf9;border:1px solid #dde8e3;border-radius:8px;align-items:center;gap:10px;width:fit-content;padding:10px 12px;display:flex}.toggle-row input{width:auto;min-height:auto}.admin-count,.admin-tags span{color:#0d6b52;text-transform:uppercase;background:#e1f5ed;border-radius:999px;width:fit-content;padding:4px 9px;font-size:12px;font-weight:900}.admin-list{gap:10px;display:grid}.admin-row{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(220px,auto) auto;align-items:center;gap:12px;padding:14px;display:grid}.admin-row strong,.admin-row small{display:block}.admin-row small{color:#60726c;margin-top:3px}.admin-tags,.admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-tags .danger-tag,.danger-button{color:#9b2418;background:#ffe8e4}.danger-button:hover{background:#ffd7cf}.empty-state{color:#60726c;background:#f7fbf9;border-radius:8px;padding:24px}.empty-state h4{color:#16302b;margin:0 0 8px}.empty-state p{margin:0;line-height:1.5}.output-stack{gap:16px;display:grid}.output-block{background:linear-gradient(#fff 0%,#fbfdfc 100%);border:1px solid #dde8e3;border-radius:8px;gap:12px;padding:16px;display:grid}.output-block-readonly{background:#f7fbf9;border-color:#cfded8}.output-block-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.output-block-header h4{color:#123c35;margin:2px 0 0;font-size:17px}.output-kicker{color:#0d6b52;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.output-reading{color:#314943;margin:0;line-height:1.6}.attachment-empty{color:#60726c;background:#edf4f1;border-radius:8px;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.attachment-access{gap:10px;padding-top:2px;display:grid}.attachment-access-header,.attachment-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.attachment-access-header strong{color:#123c35}.attachment-access-header span{color:#0d6b52;background:#e1f5ed;border-radius:999px;width:fit-content;padding:4px 9px;font-size:12px;font-weight:900}.attachment-list{gap:8px;display:grid}.attachment-item{background:#fff;border:1px solid #dde8e3;border-radius:8px;padding:12px}.attachment-item strong,.attachment-item small{display:block}.attachment-item small{color:#60726c;margin-top:3px}.attachment-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.attachment-actions a,.attachment-actions span{color:#123c35;background:#e4eee9;border-radius:8px;align-items:center;min-height:32px;padding:0 10px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.attachment-actions a:hover{background:#d6e8e0}.output-chip-list{flex-wrap:wrap;gap:8px;display:flex}.output-chip{color:#314943;background:#f4fbf8;border:1px solid #cfded8;border-radius:8px;max-width:100%;padding:8px 11px;font-size:14px;font-weight:700;line-height:1.35}.output-empty{color:#60726c;margin:0}.output-editor{gap:8px}.output-editor textarea{min-height:130px}.field-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.field-header small{color:#769088;font-weight:700}.cards{gap:10px;display:grid}.cards article{background:#fbfdfc;border:1px solid #dde8e3;border-radius:8px;gap:8px;padding:13px;display:grid}.expand-card{text-align:left;width:100%;min-height:auto}.expand-card:hover{background:#f4fbf8;border-color:#9ec7b9}.expand-card-trigger{text-align:left;background:0 0;min-height:auto;padding:0}.expand-card-trigger:hover{background:0 0}.card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-header em{color:#0d6b52;text-transform:uppercase;background:#e1f5ed;border-radius:999px;width:fit-content;padding:3px 8px;font-size:12px;font-style:normal;font-weight:800}.badge-level{color:#0d6b52;background:#e1f5ed}.badge-high{color:#a73716!important;background:#ffe1d6!important}.badge-medium{color:#795a00!important;background:#fff2c8!important}.badge-low{color:#08765b!important;background:#dff8ef!important}.cards article p{color:#526b64;margin:0;line-height:1.45}.expanded-content{gap:10px;display:grid}.explain-button{color:#fff;background:#123c35;width:fit-content}.explain-button:hover{background:#0d302a}.inline-error{background:#ffe8e4;border-radius:8px;padding:10px 12px;font-weight:800;color:#9b2418!important}.detailed-explanation{white-space:pre-wrap;color:#314943;background:#f4fbf8;border-left:4px solid #1c9a78;border-radius:8px;padding:14px;line-height:1.55}.treatment-panel{background:#fbfdfc;border:1px solid #cfded8;border-radius:8px;display:grid;overflow:hidden}.treatment-header{text-align:left;background:#f4fbf8;justify-content:space-between;align-items:center;gap:14px;min-height:auto;padding:16px;display:flex}.treatment-header:hover{background:#edf8f4}.treatment-header span{gap:4px;display:grid}.treatment-header strong{color:#123c35;font-size:16px}.treatment-header small{color:#60726c}.treatment-header em{color:#fff;text-transform:uppercase;background:#123c35;border-radius:999px;padding:4px 10px;font-size:12px;font-style:normal}.treatment-content{gap:14px;padding:16px;display:grid}.treatment-content>p{color:#526b64;margin:0;line-height:1.5}.treatment-class-list{gap:12px;display:grid}.treatment-class{background:#fff;border:1px solid #dde8e3;border-radius:8px;gap:10px;padding:14px;display:grid}.treatment-class-header,.medication-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.treatment-class-header span,.medication-card-header em{color:#0d6b52;text-transform:uppercase;background:#e1f5ed;border-radius:999px;width:fit-content;padding:4px 9px;font-size:12px;font-style:normal;font-weight:900}.treatment-class p{color:#60726c;margin:0;line-height:1.45}.medication-list{gap:8px;display:grid}.medication-card{text-align:left;background:#fbfdfc;border:1px solid #dde8e3;gap:8px;min-height:auto;padding:13px;display:grid}.medication-card:hover{background:#f4fbf8}.medication-card-trigger{text-align:left;background:0 0;gap:8px;min-height:auto;padding:0;display:grid}.medication-card-trigger:hover{background:0 0}.medication-card small{color:#60726c;line-height:1.4}.medication-card-header i{color:#795a00;text-transform:uppercase;background:#fff2c8;border-radius:999px;width:fit-content;margin-left:auto;padding:4px 9px;font-size:12px;font-style:normal;font-weight:900}.medication-detail{gap:8px;padding-top:4px;display:grid}.medication-tabs{background:#fff;border:1px solid #dde8e3;border-radius:8px;flex-wrap:wrap;gap:8px;padding:8px;display:flex}.medication-tabs button{color:#123c35;background:#edf4f1;min-height:34px}.medication-tabs button.selected{color:#fff;background:#123c35}.info-row{background:#fff;border:1px solid #edf4f1;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.info-row span{color:#0d6b52;text-transform:uppercase;font-size:12px;font-weight:900}.info-row p{color:#314943;margin:0;line-height:1.45}.not-recommended{background:#fff6f4;border:1px solid #ffd4ca;border-radius:8px;gap:8px;padding:14px;display:grid}.not-recommended h4{color:#9b2418;margin:0}.not-recommended article{background:#fff;border-radius:8px;gap:4px;padding:10px;display:grid}.not-recommended p{color:#6d3a31;margin:0;line-height:1.45}.not-recommended small{color:#9b2418;font-weight:800}.treatment-warning{background:#fff2c8;border-radius:8px;padding:12px 14px;font-weight:800;color:#6d5200!important}@media (width<=1100px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto}.grid{grid-template-columns:1fr}.result-panel{max-height:none;position:static}.terms-grid,.terms-panel,.tutor-profile-card{grid-template-columns:1fr}}@media (width<=680px){.workspace,.sidebar{padding:18px}.topbar,.section-title,.records-search,.terms-footer{flex-direction:column;align-items:stretch}.records-search,.form-grid,.admin-row{grid-template-columns:1fr}.admin-tags,.admin-actions{justify-content:flex-start}}
