:root{font-family:Segoe UI,system-ui,sans-serif;color:#27312f;background:#ebece8;font-size:13px;--accent:#b96135;--line:#e4e6df;--muted:#7c8279;--green:#487061}
*{box-sizing:border-box}
body{margin:0;height:100dvh;display:flex;flex-direction:column;overflow:hidden}
button,input,textarea,select{font:inherit}
button{cursor:pointer;background:#fff;border:1px solid #dfe2db;border-radius:5px;padding:7px 11px;color:inherit}
button:hover{background:#f1f3ed}
button:disabled{opacity:.5;cursor:wait}
a{color:inherit;text-decoration:none}
button.primary{background:#b96135;color:#fff;border-color:#b96135}
button.primary:hover{background:#a4532b}
input,textarea,select{border:1px solid #dfe2db;border-radius:5px;background:#fff;padding:8px;color:inherit;min-width:0}
input:focus,textarea:focus{outline:2px solid #b9613540;border-color:var(--accent)}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.topbar{height:60px;flex-shrink:0;background:#242d2a;color:#eee;display:flex;align-items:center;padding:0 20px;gap:16px}
.brand{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:700;white-space:nowrap}
.brand>span.brand-mark{font-size:17px;font-weight:600}
.brand-mark{display:grid;place-items:center;width:28px;height:28px;border:1px solid #b77d57;border-radius:7px;color:#e6b18d}
.search-wrap{position:relative;display:flex;align-items:center;background:#36403c;border:1px solid #46514b;border-radius:6px;padding:0 10px;gap:8px;max-width:480px;flex:1;margin:auto}
.search-wrap input{background:transparent;border:0;color:#eee;width:100%;font-size:12px;padding:9px 0}
.search-wrap input::placeholder{color:#b6beb7}
.search-wrap kbd{font-size:10px;white-space:nowrap;color:#adb4ac;border:1px solid #626b64;padding:2px 4px;border-radius:3px}
.topbar button{border-color:#46514b;background:transparent;color:#e5e9e3;white-space:nowrap;font-size:12px}
.topbar button:hover{background:#36403c}
.new-wrap{position:relative}
.topbar .profile{border-radius:50%;background:#d9b99b;color:#342e29;width:30px;height:30px;padding:0;font-weight:600}
.worker-status{display:flex;gap:7px;align-items:center;border:0!important;font-size:11px!important}
.worker-status i{height:6px;width:6px;border-radius:50%;background:#a6ac9d}
.worker-status.online i{background:#83b99a}
.worker-status.offline i{background:#e6a574}
.app-body{display:flex;flex:1;min-height:0}
.explorer{width:210px;flex-shrink:0;background:#f5f6f1;border-right:1px solid #dce0d6;display:flex;flex-direction:column;padding:25px 12px 14px}
.explorer-head{font-size:10px;letter-spacing:1.8px;font-weight:700;padding:0 12px 18px;color:#7e8678;display:flex;justify-content:space-between}
.explorer-head span{letter-spacing:0;color:#a2a69a}
.nav-item{border:0;background:transparent;width:100%;text-align:left;display:flex;gap:12px;align-items:center;padding:11px 12px;margin-bottom:3px;font-size:12px}
.nav-item .nav-icon{font-size:16px;width:18px;color:#79877b}
.nav-item.active{background:#e6eadd;color:#344b3c;font-weight:600}
.nav-item .count{margin-left:auto;color:#8d9486;font-size:10px}
.explorer-section{color:#929a8c;font-size:9px;font-weight:700;letter-spacing:1.6px;padding:25px 12px 12px}
.focus-link{border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:10px;padding:10px}
.mini-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:#ebe5d7;color:#8d7657;font-weight:600}
.focus-link small{display:block;color:#92988d;font-size:10px;margin-top:4px}
.explorer-bottom{margin-top:auto;padding:16px 10px;color:#9a9f94;font-size:10px}
.explorer-bottom p{font-size:10px;margin:8px 0 18px}
.demo-badge{color:#748d73;font-size:10px}
.explorer-bottom a{color:#657360}
.workspace{flex:1;min-width:0;display:grid;padding:14px;gap:12px;grid-template-columns:minmax(0,1fr) 310px;grid-template-rows:1fr 1fr}
.panel{min-height:0;min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #dce0d6;border-radius:7px;overflow:hidden}
.panel[data-slot=main]{grid-row:1 / 3}
.panel[data-slot=upper]{grid-column:2;grid-row:1}
.panel[data-slot=lower]{grid-column:2;grid-row:2}
.workspace[data-layout=B]{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
.workspace[data-layout=B] .panel[data-slot=main]{grid-row:1}
.workspace[data-layout=B] .panel[data-slot=upper]{grid-row:1}
.workspace[data-layout=B] .panel[data-slot=lower]{display:none}
.workspace[data-layout=C]{grid-template-columns:1fr;grid-template-rows:1fr}
.workspace[data-layout=C] .panel[data-slot=main]{grid-row:1}
.workspace[data-layout=C] .panel:not([data-slot=main]){display:none}
.workspace.no-side{grid-template-columns:1fr}
.workspace.one-side .panel:not([data-slot=main]){grid-row:1/3}
.panel-tabs{display:flex;align-items:center;gap:0;background:#f8f9f5;border-bottom:1px solid var(--line);min-height:39px;overflow-x:auto;flex-shrink:0}
.tab-unit{display:flex;align-items:center;border-right:1px solid var(--line);border-bottom:2px solid transparent}
.tab-unit.active{background:#fff;border-bottom-color:var(--accent)}
.tab-unit button{border:0;background:none;border-radius:0;white-space:nowrap;font-size:11px;padding:11px 8px 10px 12px}
.tab-unit .tab-close{font-size:13px;padding:5px 7px 5px 2px;color:#a1a69b}
.tab-add{border:0;background:none;color:#8d9788;padding:8px;margin-left:auto}
.panel-content{flex:1;min-height:0;overflow:auto}
.view{padding:25px 27px}
.kicker{font-size:9px;letter-spacing:1.7px;color:#88907f;font-weight:700}
.view h1{font-family:Georgia,serif;font-weight:400;font-size:30px;letter-spacing:-.6px;line-height:1.3;margin:9px 0}
.view h2{font-size:18px;margin:8px 0}
.view h3{font-size:13px;font-weight:600}
.view p{line-height:1.6;color:#818878}
.lead{font-size:12px;margin-top:4px}
.view-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.badge{font-size:9px;padding:4px 7px;background:#eaf0e5;color:#607755;border-radius:4px;white-space:nowrap}
.badge.mock{background:#f4eee4;color:#998160}
.button-row{display:flex;gap:7px;flex-wrap:wrap}
.welcome-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}
.welcome-action{padding:15px;display:flex;text-align:left;align-items:center;gap:12px;border-color:#e4e6dd}
.welcome-action .action-icon{font-size:19px;color:#b97c52}
.welcome-action strong{display:block;font-size:12px;font-weight:600}
.welcome-action small{display:block;font-size:10px;color:#92988a;margin-top:4px}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:27px 0 12px}
.section-title h3{margin:0}
.section-title span{font-size:10px;color:#919789}
.table{width:100%;border-collapse:collapse;font-size:11px}
.table th{text-align:left;font-size:9px;color:#989d91;font-weight:500;padding:10px;border-bottom:1px solid var(--line)}
.table td{padding:13px 10px;border-bottom:1px solid #eff0e9}
.table button{border:0;background:none;padding:0;font-weight:600;text-align:left}
.table small{display:block;color:#999e92;font-size:10px;margin-top:4px}
.welcome-note{border-left:2px solid #cbb893;background:#faf9f4;padding:12px 15px;font-size:11px;margin-top:23px;line-height:1.7;color:#8a8976}
.widget{padding:19px}
.widget h2{font-size:15px;font-weight:600;margin:0}
.widget .view-head{margin-bottom:15px}
.date-caption{font-size:11px;color:#969c8e;margin:8px 0 14px}
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center;margin:14px 0 17px}
.day small{display:block;font-size:9px;color:#a1a799;margin-bottom:7px}
.day strong{display:grid;place-items:center;font-size:11px;font-weight:500;min-height:28px}
.day.today strong{background:#b96135;color:#fff;border-radius:6px}
.appointment{padding:9px 0 9px 12px;border-left:2px solid #c4ceaf;margin:10px 0}
.appointment strong{display:block;font-size:11px;font-weight:600}
.appointment small{color:#999f92;font-size:10px;display:block;margin-top:5px}
.appointment time{color:#ad7854;font-size:10px;display:block;margin-bottom:5px}
.mail-row{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #ecede6;padding:12px 0;border-radius:0}
.mail-row .mail-top{display:flex;justify-content:space-between;font-size:11px;font-weight:600}
.mail-row time{font-size:9px;color:#a1a695;font-weight:400}
.mail-row .subject{font-size:11px;display:block;margin:5px 0;color:#676f61}
.mail-row small{font-size:10px;color:#a0a595;line-height:1.5}
.mail-row.unread .mail-top:before{content:'';width:5px;height:5px;border-radius:50%;background:#b96135;align-self:center;margin-right:6px}
.mail-row.unread .mail-top span{margin-right:auto}
.widget-foot{font-size:9px;color:#a1a798;margin-top:15px}
.customer-banner{display:flex;gap:15px;align-items:center;margin:20px 0}
.customer-banner .mini-avatar{width:46px;height:46px;font-size:21px}
.customer-banner h1{font-size:25px;margin:0}
.customer-banner p{margin:4px 0;font-size:11px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.detail-card{border:1px solid var(--line);border-radius:6px;padding:15px;min-width:0}
.detail-card small{display:block;color:#969b8d;font-size:9px}
.detail-card strong{display:block;font-size:12px;margin:8px 0}
.detail-card p{font-size:11px;margin:5px 0}
.progress{height:4px;background:#e9eddf;border-radius:5px;margin-top:12px}
.progress span{display:block;width:65%;height:4px;background:#9ea98a;border-radius:5px}
.chat-view{height:100%;display:flex;flex-direction:column;padding:0}
.chat-head{padding:16px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.chat-head strong{font-size:13px}
.chat-head small{display:block;color:#939a8a;font-size:10px;margin-top:4px}
.chat-head select{max-width:200px;font-size:10px}
.chat-messages{overflow-anchor:none;flex:1;min-height:0;overflow:auto;padding:22px}
.bubble{max-width:90%;margin:0 0 22px;display:flex;gap:11px}
.bubble .avatar{flex-shrink:0;width:26px;height:26px;border-radius:6px;display:grid;place-items:center;background:#ecede5;font-size:9px;color:#78816c}
.bubble.user{margin-left:auto;flex-direction:row-reverse}
.bubble.user .bubble-body{background:#f0f2e9;border:1px solid #e5e8da;border-radius:8px;padding:10px 14px}
.bubble-body{font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.bubble-label{font-size:9px;color:#9ba18e;display:block;margin-bottom:4px}
.sources{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;font-size:9px;color:#8b957c}
.source{background:#f6f7f0;border:1px solid #e7eadc;padding:3px 7px;border-radius:4px}
.chat-compose{flex-shrink:0;border-top:1px solid var(--line);padding:15px 20px;background:#fff}
.chat-compose textarea{width:100%;min-height:63px;resize:none;font-size:12px;background:#fbfcf8}
.compose-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:8px;gap:8px}
.compose-bottom small{font-size:9px;color:#9ba18f}
.chat-notice{font-size:11px;background:#fbf3e9;border:1px solid #efd7bd;padding:12px;border-radius:6px;color:#936f4d;margin:10px 0}
.empty{text-align:center;padding:50px 15px;color:#9a9e8e}
.empty strong{display:block;color:#747b65;margin-bottom:10px}
.layout-tools{background:#fff5e8;border-bottom:1px solid #e5cfb1;padding:9px 18px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:11px}
.layout-tools label{display:flex;gap:5px;align-items:center}
.layout-tools button{font-size:10px}
.editing .panel{border:1px dashed #b97b4e}
.panel-editor{display:flex;gap:7px;padding:7px;background:#fff5e8;align-items:center;font-size:10px}
.panel-editor select{padding:4px;max-width:125px;font-size:10px}
.statusbar{height:25px;flex-shrink:0;background:#e4e7dc;border-top:1px solid #d7ddcf;font-size:9px;color:#829075;display:flex;align-items:center;justify-content:space-between;padding:0 17px;gap:15px}
.statusbar b{font-size:8px;font-weight:500;letter-spacing:1px;margin-left:12px}
.popover{position:absolute;background:#fff;border:1px solid #dce0d6;box-shadow:0 10px 30px #18241920;border-radius:7px;padding:7px;top:calc(100% + 8px);left:0;min-width:210px;z-index:10;color:#27312f}
.search-wrap .popover{width:100%}
.popover button{display:block;width:100%;text-align:left;color:#27312f;background:white;border:0;padding:11px;font-size:12px}
.popover button:hover{background:#f1f3eb}
.popover small{display:block;color:#9a9f90;font-size:9px;margin-top:4px}
.toast{position:fixed;bottom:40px;left:50%;transform:translateX(-50%);padding:12px 18px;border:1px solid #d8decf;border-radius:7px;background:#fff;box-shadow:0 8px 24px #0002;z-index:20;font-size:12px;max-width:90vw}
dialog{border:1px solid #dde2d5;border-radius:10px;padding:27px;max-width:380px;width:95vw}
dialog::backdrop{background:#24322966}
dialog label{display:block;font-size:11px;margin:14px 0}
dialog input{display:block;width:100%;margin-top:6px}
dialog p{font-size:11px;color:#8a907f}
#login-error{color:#a25f38}
@media(min-width:1500px){.workspace{grid-template-columns:minmax(0,1fr) 360px}
.view{padding:35px 45px}
.topbar{gap:24px}
.explorer{width:230px}
}
@media(max-width:1050px){.explorer{width:165px}
.workspace{grid-template-columns:minmax(0,1fr) 270px}
.topbar{gap:9px;padding:0 12px}
.brand>span:last-child,.search-wrap kbd{display:none}
.view{padding:20px}
.welcome-actions{grid-template-columns:1fr}
.detail-grid{grid-template-columns:1fr}
}
@media(max-width:760px){body{height:auto;min-height:100dvh;overflow:auto}
.topbar{height:auto;min-height:60px;flex-wrap:wrap;padding:10px}
.search-wrap{order:2;max-width:none;flex-basis:100%}
.worker-status{margin-left:auto}
.app-body{min-height:800px}
.explorer{width:55px;padding:20px 5px}
.explorer-head,.nav-item .nav-label,.nav-item .count,.explorer-section,.focus-link,.explorer-bottom{display:none}
.nav-item{padding:10px;justify-content:center}
.workspace,.workspace[data-layout=B]{display:flex;flex-direction:column;padding:8px}
.panel{min-height:310px}
.panel[data-slot=main]{min-height:560px}
.panel[data-slot=lower]{display:flex!important}
.workspace[data-layout=C] .panel:not([data-slot=main]){display:none!important}
.statusbar span:last-child{display:none}
.topbar .top-button{font-size:10px}
.chat-view{height:550px}
.statusbar{position:sticky;bottom:0}
.detail-grid{grid-template-columns:1fr 1fr}
}

.status-wrap{position:relative}.status-wrap .popover{left:auto;right:0;width:240px}.status-wrap h3{margin:8px 10px 14px}.status-wrap p{margin:10px}.panel.adding{border-color:#b97b4e;box-shadow:0 0 0 2px #b97b4e25}.panel.drop-target{outline:3px solid #8b9c73;outline-offset:-4px;background:#f4f7ed}.tab-unit [draggable=true]{cursor:grab}.tab-unit [draggable=true]:active{cursor:grabbing}.view-head{margin-bottom:16px}.view>.button-row{margin:18px 0 22px}.view>button{margin-top:18px}.detail-card>button{margin:12px 0 8px}.view>p+.button-row{margin-top:18px}.panel-editor{padding:10px;gap:10px}.tool-view section{border:0;margin:0;padding:0;min-width:0}.tool-view section>h2{margin:0 0 18px}.tool-view section>p:first-of-type{display:none}.tool-view label{display:block;font-size:11px;font-weight:500;margin:14px 0}.tool-view input,.tool-view textarea,.tool-view select{display:block;width:100%;margin-top:6px}.tool-view input[type=checkbox]{display:inline-block;width:auto}.tool-view .draft-pricing{display:flex;flex-wrap:wrap;gap:12px}.tool-view .draft-pricing label{flex:1 1 120px}.tool-view form{padding:16px;border:1px solid var(--line);border-radius:6px;margin:18px 0;background:#fafbf6}.tool-view #draft-list,.tool-view #note-list{list-style:none;padding:0}.tool-view li{border:1px solid var(--line);border-radius:6px;padding:14px;margin:12px 0;line-height:1.6}.tool-view li>button{margin:10px 7px 0 0}.tool-view summary{margin:12px 0;cursor:pointer}.tool-view .draft-content{white-space:pre-wrap;overflow-wrap:anywhere}.tool-view #draft-feedback,.tool-view #note-feedback{display:block!important}.tool-view .secondary{background:#edf1e6}.calendar-month{display:flex;align-items:center;justify-content:space-between;margin:14px 0 18px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.calendar-grid small{color:#939b88;font-size:9px;padding:5px 0}.calendar-grid button{position:relative;border:0;background:transparent;padding:7px 0;font-size:10px;min-width:0}.calendar-grid button.outside{color:#bac0b1}.calendar-grid button.today{box-shadow:inset 0 0 0 1px #b9613550}.calendar-grid button.selected{background:#b96135;color:white}.calendar-grid button.has-events:after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#718564;bottom:2px;left:calc(50% - 1px)}.calendar-grid button.selected:after{background:white}.calendar-day-title{font-size:12px;font-weight:600;margin:22px 0 14px}.calendar-view>.button-row{margin-top:20px}.calendar-view .appointment p{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.calendar-view .appointment button{font-size:10px;padding:4px 7px;margin-top:8px}.calendar-error{color:#a25f38;font-size:11px}.calendar-empty{font-size:11px;color:#939b88}.event-dialog{max-height:90dvh;overflow:auto}.event-dialog label{display:block;font-size:11px;margin:12px 0}.event-dialog input,.event-dialog textarea{display:block;width:100%;margin-top:5px}.event-dialog .button-row{margin-top:22px}.explorer-bottom button{background:none;border:0;padding:0;color:#7c8770;font-size:10px}.statusbar span:last-child{display:inline}.statusbar>#layout-status{margin-left:auto}
.tool-view #customer-list,.tool-view #project-list{list-style:none;padding:0}.draggable-tab{cursor:grab;touch-action:none;user-select:none}.draggable-tab:active{cursor:grabbing}.calendar-view .view-head button{font-size:10px;padding:5px 8px}.calendar-grid button{padding:5px 0}
/* Workspace dev.3: same palette, explicit states and responsive calendar. */
.login-page{align-items:center;justify-content:center;padding:24px;overflow:auto}.login-card{width:min(420px,100%);padding:32px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 15px 50px #27312f12}.login-card h1{margin:16px 0}.login-card label{display:block;margin:20px 0}.login-card input{display:block;width:100%;margin-top:8px}.login-card form>button{margin-top:10px;width:100%}
.explorer-head{align-items:center;gap:8px;padding:0 8px 18px}.explorer-head>span{letter-spacing:1.8px;color:#7e8678}.explorer-head button{padding:5px 7px;background:transparent;border:0;font-size:16px;color:#657360}.explorer.collapsed{width:58px;padding:18px 5px}.explorer.collapsed .explorer-head{padding:0 6px 18px;justify-content:center}.explorer.collapsed .explorer-head>span,.explorer.collapsed .nav-label,.explorer.collapsed .count,.explorer.collapsed .explorer-section,.explorer.collapsed .focus-link>span:last-child,.explorer.collapsed .explorer-bottom p{display:none}.explorer.collapsed .nav-item{padding:11px;justify-content:center}.explorer.collapsed .focus-link{display:flex;padding:8px 7px}.explorer.collapsed .explorer-bottom{display:block;padding:16px 10px}.explorer.collapsed .explorer-head{display:flex}
.object-picker{flex-basis:100%;padding:12px;border:1px solid var(--line);background:#fff;border-radius:5px}.object-picker input{width:100%;margin-bottom:10px}.object-choices{display:flex;flex-wrap:wrap;gap:8px}.panel-editor{flex-wrap:wrap}.panel-editor select{max-width:100%}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0!important}.file-picker{display:flex;gap:12px;align-items:center;position:relative;flex-wrap:wrap}.tool-view .file-button{cursor:pointer;margin:0;padding:8px 12px;border:1px solid var(--line);border-radius:5px;background:#fff}.file-button:hover{background:#f1f3ed}.file-picker:focus-within .file-button{outline:2px solid var(--accent)}#selected-filename{color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.connection-row{padding:12px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #46514b}.connection-row strong{font-size:11px;font-weight:500}.status-wrap .popover{width:285px;background:#fff;color:#27312f}.topbar .status-wrap .popover button{color:#27312f;border-color:var(--line);width:100%;margin:4px 0;text-align:left}.topbar .status-wrap .popover button:hover{background:#f1f3ed}#development-controls{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}#development-controls:empty{display:none}#development-controls small{display:block;margin:0 8px 8px;color:var(--muted)}#process-feedback{font-size:11px}
.panel-content{container-type:inline-size}.calendar-modes{display:flex;gap:6px;margin:8px 0 18px;flex-wrap:wrap}.calendar-modes button{font-size:11px;padding:5px 9px}.calendar-modes button:last-child{margin-left:auto}.calendar-upcoming{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.calendar-upcoming h3{font-size:13px;margin:0 0 18px}.upcoming-day h4{font-size:11px;color:var(--muted);margin:18px 0 8px}.upcoming-event{display:flex;gap:12px;width:100%;text-align:left;border:0;padding:8px 0;background:transparent;font-size:12px}.upcoming-event time{color:var(--accent);font-variant-numeric:tabular-nums;flex-shrink:0}.calendar-timeline{display:none}.calendar-agenda-day{padding:12px 0 18px;border-bottom:1px solid var(--line)}.calendar-agenda-day h3{font-size:12px;margin:0 0 14px}.calendar-view[data-mode=week] .calendar-timeline,.calendar-view[data-mode=day] .calendar-timeline{display:block}.calendar-view[data-mode=week] .calendar-grid,.calendar-view[data-mode=day] .calendar-grid,.calendar-view[data-mode=week] .calendar-selected,.calendar-view[data-mode=day] .calendar-selected,.calendar-view[data-mode=week] .calendar-day-title,.calendar-view[data-mode=day] .calendar-day-title{display:none}.calendar-view .appointment{margin:10px 0 16px}.calendar-view .appointment time{font-size:12px;font-variant-numeric:tabular-nums}.calendar-view .appointment strong{display:block;margin-top:5px}.calendar-view .appointment p{margin:8px 0}.calendar-view .view-head{margin-bottom:18px}
@container(max-width:420px){.calendar-modes button:not(:last-child){display:none}.calendar-modes{margin-bottom:8px}.calendar-view[data-mode] .calendar-grid,.calendar-view[data-mode] .calendar-selected,.calendar-view[data-mode] .calendar-day-title{display:grid}.calendar-view[data-mode] .calendar-timeline{display:none}.calendar-upcoming .upcoming-day:nth-of-type(n+3){display:none}.calendar-upcoming .upcoming-event:nth-of-type(n+4){display:none}.calendar-view .appointment p{display:none}.calendar-upcoming{margin-top:16px;padding-top:14px}}
@media(max-width:760px){.explorer-head{display:flex;padding:0 0 12px;justify-content:center}.explorer-head>span{display:none}.explorer .focus-link{display:flex;padding:8px}.explorer .focus-link>span:last-child{display:none}.explorer-bottom{display:block;padding:16px 10px}.explorer-bottom p,.explorer-bottom .nav-label{display:none}.explorer:not(.collapsed){width:165px}.explorer:not(.collapsed) .nav-label,.explorer:not(.collapsed) .explorer-head>span,.explorer:not(.collapsed) .focus-link>span:last-child{display:block}.explorer:not(.collapsed) .explorer-head{justify-content:space-between;padding:0 8px 12px}.topbar{gap:8px;padding:0 10px}.worker-status{max-width:130px;white-space:normal!important}.status-wrap .popover{position:fixed;top:60px;right:10px;max-width:calc(100vw - 20px)}.statusbar{font-size:9px}}
.tool-view li.selected-object{border-color:var(--accent);background:#faf6f0}
@container(max-width:420px){.calendar-view .view-head{margin-bottom:8px}.calendar-view .calendar-modes{margin:4px 0 6px}.calendar-view .calendar-month{margin:8px 0 10px}.calendar-view .calendar-grid{gap:1px}.calendar-view .calendar-grid button{font-size:9px;padding:3px 0}.calendar-view .calendar-grid small{padding:2px 0}.calendar-view[data-show-day=false] .calendar-selected,.calendar-view[data-show-day=false] .calendar-day-title{display:none}.calendar-view .calendar-upcoming{margin-top:12px;padding-top:12px}.calendar-upcoming h3{font-size:11px;margin-bottom:10px}.upcoming-day h4{margin:10px 0 4px;font-size:10px}.upcoming-event{font-size:10px;padding:5px 0;gap:9px}.calendar-view .calendar-day-title{font-size:10px;margin:10px 0}.calendar-view .calendar-selected{max-height:120px;overflow:auto}}
#compute-details{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;font-size:10px;margin:16px 10px}#compute-details dt{color:var(--muted)}#compute-details dd{margin:0;text-align:right;overflow-wrap:anywhere}.detail-card dt{font-size:10px;color:var(--muted);margin:14px 0 4px}.detail-card dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.view>.detail-card{margin:14px 0}.view>h3{margin-top:24px}.view>button{margin:10px 8px 0 0}.tool-view #document-list{list-style:none;padding:0}.chat-notice button{margin:10px 8px 0 0}.worker-status{max-width:320px}.worker-status span{overflow:hidden;text-overflow:ellipsis}.status-wrap .popover{max-height:calc(100dvh - 85px);overflow:auto}

.tab-unit{position:relative}.tab-unit.insert-before:before,.tab-unit.insert-after:after{content:'';position:absolute;top:3px;bottom:3px;width:3px;background:var(--accent);z-index:3}.tab-unit.insert-before:before{left:0}.tab-unit.insert-after:after{right:0}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dashboard-card{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.dashboard-card .view-head{margin-bottom:12px}.dashboard-card h3{font-size:14px;margin:0}.dashboard-card h4{font-size:12px;margin:18px 0 8px}.dashboard-card p,.dashboard-card small{font-size:12px;color:var(--muted)}.dashboard-entry{display:block;text-align:left;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;overflow-wrap:anywhere}.dashboard-entry:hover{color:var(--accent)}#upload-status{font-size:12px;padding-left:18px;line-height:1.8}@container(max-width:560px){.dashboard-grid{grid-template-columns:1fr}}

.bubble-meta{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted);margin-bottom:7px}.bubble-meta .bubble-label{margin:0}.compose-bottom{justify-content:flex-end}.chat-picker>button{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-browser{width:min(480px,90vw);border:1px solid var(--line);border-radius:12px;padding:24px;color:var(--text);background:var(--paper,#fff)}.chat-browser::backdrop{background:#0005}.chat-browser input{width:100%;margin:12px 0}.chat-picker-list{max-height:55vh;overflow:auto;margin-bottom:16px}.chat-picker-entry{display:flex;flex-direction:column;gap:6px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:14px 8px;background:transparent}.chat-picker-entry time{font-size:11px;color:var(--muted)}.chat-picker-entry[aria-current=true]{color:var(--accent)}.dashboard-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(210px,1fr);gap:16px}.dashboard-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.dashboard-title{border:0;background:transparent;padding:0;text-align:left;font-size:14px;font-weight:600;width:100%;cursor:pointer}.dashboard-title:hover{color:var(--accent)}.dashboard-entry{font-size:12px;padding:8px 0}.dashboard-agenda .dashboard-card{height:100%}@container(max-width:700px){.dashboard-layout{grid-template-columns:1fr}}@container(max-width:420px){.dashboard-main{grid-template-columns:1fr}.chat-head{flex-wrap:wrap}.chat-picker>button{max-width:170px}}

.tool-view #documents-panel>p:first-of-type{display:block;font-size:11px;color:var(--muted);line-height:1.6}.statusbar #build-version{display:inline}

.dashboard-card{cursor:pointer}

.business-form{border:1px solid var(--line);border-radius:12px;padding:18px;margin:16px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.business-form h3,.business-form>p,.business-form-actions{grid-column:1/-1}.business-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;min-width:0}.business-form input,.business-form select,.business-form textarea{width:100%;box-sizing:border-box;font:inherit;border:1px solid var(--line);border-radius:6px;padding:9px;background:var(--paper,#fff);color:var(--text)}.business-form textarea{min-height:90px;resize:vertical}.business-form-actions{display:flex;gap:10px}.business-form [role=alert]{color:var(--danger,#a33)}@container(max-width:450px){.business-form{grid-template-columns:1fr}}

/* Compact account surfaces reuse the workspace palette. */
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:6px}.login-brand{display:flex;align-items:center;gap:18px;margin-bottom:24px;font-size:23px}.login-brand img{width:96px;height:96px;object-fit:contain;border-radius:10px}.account-wrap{position:relative}.profile{overflow:hidden;min-width:40px;padding:0}.profile img{width:38px;height:38px;object-fit:cover}.account-menu{right:0;min-width:175px;padding:6px;z-index:80}.account-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:10px}.account-menu button:last-child{border-top:1px solid var(--line)}.account-dialog{width:min(560px,calc(100vw - 32px));max-height:82dvh;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fafaf5;color:#27312f;padding:22px}.account-dialog::backdrop{background:#17251d55}.account-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.account-dialog h2{margin:0}.account-form{display:grid;gap:12px;margin-top:18px}.account-form label{display:grid;gap:6px}.account-form textarea{min-height:78px;resize:vertical}.account-form p{font-size:12px;color:#627066;line-height:1.5}.account-avatar{width:86px;height:86px;object-fit:cover;border-radius:50%;margin-top:20px}.account-initial{display:grid;place-items:center;background:#e5ede3;font-size:32px;color:#487061}.account-error{color:#9d3838}.account-users{list-style:none;padding:0}.account-users li{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.account-users li strong{width:100%}.account-users li span{flex:1;overflow-wrap:anywhere}.account-users select{max-width:150px}

.topbar .profile{width:38px;height:38px;min-width:38px;display:grid;place-items:center}

.account-wrap .account-menu{left:auto;right:0;max-width:calc(100vw - 24px)}

.account-dialog{max-width:calc(100vw - 32px)}.account-dialog .account-form label{margin:0}.account-dialog .account-form p{margin:4px 0}.account-dialog[data-kind="profile"]{width:min(420px,calc(100vw - 32px))}

/* Legal information belongs exclusively to the public login page. */
.login-page .login-legal-links{display:flex;justify-content:center;gap:9px;margin-top:23px;font-size:12px;color:#627066}
.login-page .login-legal-links a:hover,.login-page .login-legal-links a:focus-visible{text-decoration:underline}
.login-page .login-legal-modal{width:min(650px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;color:#27312f;background:#fafaf5;border:1px solid #dfe2db;border-radius:12px}
.login-page .login-legal-modal[open]{display:flex;flex-direction:column}
.login-page .login-legal-modal header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:16px 22px;border-bottom:1px solid #e4e6df}
.login-page .login-legal-modal h2{font-size:21px;margin:0}
.login-page .login-legal-modal header button{min-width:38px;min-height:38px;font-size:23px;padding:0;line-height:1}
.login-page .login-legal-content{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:0 22px 22px;line-height:1.6;overflow-wrap:anywhere}
.login-page .login-legal-content p{font-size:13px;color:inherit;margin:12px 0}
.login-page .login-legal-content h3{font-size:14px;margin:20px 0 8px}
.login-page .login-legal-content a{color:#365d4c;text-decoration:underline;text-underline-offset:2px}
.login-page .login-legal-content .login-legal-date{font-size:11px;color:#627066}
@media(max-width:480px){.login-page .login-legal-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.login-page .login-legal-modal header{padding:12px 16px}.login-page .login-legal-content{padding:0 16px 16px}}

/* Profile image selection and local crop preview. */
.account-dialog .avatar-change{display:block;width:100%;margin-top:22px;padding:10px 14px}
.account-dialog .avatar-editor{display:grid;gap:15px;margin-top:18px}
.account-dialog .avatar-crop-preview{display:block;width:min(260px,100%);height:auto;aspect-ratio:1;margin:0 auto;border-radius:50%;background:#e5e9e1;cursor:grab;touch-action:none;box-shadow:0 0 0 1px #dce2d8}
.account-dialog .avatar-crop-preview:active{cursor:grabbing}
.account-dialog .avatar-editor small{color:#627066;text-align:center;font-size:12px}
.account-dialog .avatar-editor label{display:grid;gap:6px;margin:0;font-size:12px}
.account-dialog .avatar-editor input[type=range]{width:100%;padding:0;accent-color:#487061}
.account-dialog .avatar-editor-actions{display:flex;justify-content:flex-end;gap:8px}

/* Personal settings: compact navigation and one consistent content surface. */
.account-dialog[data-settings=true]{width:min(850px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 36px));padding:0;overflow:hidden}
.account-dialog[data-settings=true][open]{display:flex;flex-direction:column}
.account-dialog[data-settings=true]>header{padding:19px 24px;border-bottom:1px solid var(--line);flex-shrink:0}
.account-dialog[data-settings=true]>header h2{font-size:20px}
.account-settings-layout{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:0;overflow:hidden}
.account-settings-nav{padding:16px 10px;background:#edf1e9;border-right:1px solid var(--line);overflow:auto}
.account-settings-nav button{display:block;width:100%;text-align:left;background:transparent;border:0;padding:12px 10px;margin:2px 0;color:#526258}
.account-settings-nav button strong,.account-settings-nav button small{display:block}
.account-settings-nav button small{font-size:10px;margin-top:4px;color:#788579;line-height:1.45}
.account-settings-nav button[aria-current=page]{background:#dfe8db;color:#284d3b}
.account-settings-content{min-height:350px;min-width:0;padding:24px;overflow-y:auto;overscroll-behavior:contain}
.account-settings-heading h3{margin:0;font-size:19px}.account-settings-heading p{margin:7px 0 20px;font-size:12px;color:#718071}
.account-settings-content .account-form{gap:15px;max-width:440px}.account-settings-content .account-form input:read-only{background:#f0f2ec;color:#6b766b}.account-settings-content .account-avatar{margin-top:0}
.account-settings-content .account-profile-identity h3{margin-bottom:6px}.account-settings-content .account-profile-identity p{margin-top:0;color:#718071}
.account-settings-content .avatar-change{max-width:440px}.account-connection-card{border:1px solid var(--line);border-radius:9px;padding:17px;margin:0 0 16px;background:#fff}
.account-connection-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.account-connection-head h4{margin:0}.account-connection-card>p{line-height:1.5}
.account-state{font-size:10px;padding:4px 7px;border-radius:5px;background:#eef0e9;color:#6b7568}.account-state.is-connected{background:#e1edde;color:#356343}
.account-dialog[data-kind=company]{width:min(740px,calc(100vw - 32px))}.company-integration-policies{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.company-provider-row{display:flex;align-items:center;gap:12px;padding:10px 0}.company-provider-row strong{flex:1}.company-provider-row span{font-size:12px;color:#718071}
@media(max-width:650px){.account-settings-layout{grid-template-columns:1fr}.account-settings-nav{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:7px;flex-shrink:0}.account-settings-nav button{width:auto;white-space:nowrap;padding:9px 12px}.account-settings-nav button small{display:none}.account-settings-content{min-height:280px;padding:18px}.account-dialog[data-settings=true]>header{padding:15px 18px}.account-settings-layout{display:flex;flex-direction:column}}

.account-security-card{padding:18px;border:1px solid var(--line,#dce1d8);border-radius:12px;background:var(--paper,#fbfcf8);margin:0 0 16px}.account-security-card h4{margin:0 0 8px}.account-security-card>button{margin:6px 8px 0 0}.account-security-card pre,.login-security pre{overflow:auto;padding:12px;border-radius:8px;background:#f0f3eb;font:12px/1.8 monospace;user-select:all}.account-security-card img,.login-security img{display:block;max-width:100%;height:auto;margin:12px auto}.account-security-key{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #dce1d8}.account-security-key small{flex:1 1 150px;color:#687568}.login-security:not(:empty){display:grid;gap:12px;margin:20px 0}.login-card>button{width:100%;margin-top:12px}.account-security-card .account-form{margin-top:12px}
