/* Functional controls added to the approved Pamnora shell. */
:root{--sans:'DM Sans','Segoe UI',Arial,sans-serif}
button:disabled{cursor:default}
.boot-message{display:flex;min-height:100dvh;align-items:center;justify-content:center;padding:30px;color:var(--forest);font-size:16px;text-align:center}
.nav-soon{margin-left:auto;font-size:8px;font-weight:400;color:#c0d1c3;white-space:nowrap}
.nav-item:disabled{opacity:.65}
.nav-item:disabled:hover{background:none;color:#d5e3d9}
.system-workspace[inert]{pointer-events:none}
.logout-button{margin-left:auto;align-self:center;padding:7px 2px;background:none;border:0;color:var(--ivory);font-size:9px;min-height:32px}
.sidebar-profile{gap:8px;padding-inline:16px}
.sidebar-profile>div{min-width:0;overflow-wrap:anywhere}
.feedback-message{padding:13px 16px;border:1px solid #dbb39f;border-left:3px solid var(--copper);border-radius:5px;background:#fff7f0;color:#713b22;margin-bottom:20px;font-size:12px;line-height:1.7}
.feedback-message[data-tone=success]{background:#edf4e8;border-color:#bdcdb4;color:var(--forest)}
.feedback-message>button{margin-left:12px;font:inherit}
.content-loading{padding:36px 20px;text-align:center;font-size:13px;color:var(--muted)}
.task-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}
.date-field{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px}
.date-field input{border:1px solid #cbd4c2;padding:9px 11px;border-radius:4px;background:var(--white);color:var(--forest);min-height:39px;max-width:100%}
.toolbar-actions{display:flex;gap:9px;flex-wrap:wrap}
.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;min-width:0}
.form-field label{font-size:12px;color:var(--forest);font-weight:600}
.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cbd4c2;border-radius:5px;background:var(--white);padding:11px 12px;min-height:43px;font:inherit;font-size:13px;line-height:1.5;color:var(--navy)}
.form-field textarea{resize:vertical;min-height:88px}
.form-field small{font-size:11px;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.form-grid>.span-full{grid-column:1/-1}
.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.form-error{padding:11px 13px;background:#fff0e9;border:1px solid #e9c4ad;border-radius:4px;color:#893e23;font-size:12px;line-height:1.7;margin:0 0 16px}
.panel-form{padding:21px}
.empty-state{padding:30px 23px;text-align:center;color:var(--muted);font-size:12px;line-height:1.9}
.empty-state strong{display:block;font-family:Manrope,var(--sans);font-size:14px;color:var(--forest);margin-bottom:4px}
.task-text{overflow-wrap:anywhere}
.task-check:disabled{opacity:.6}
.task-text .task-meta{line-height:1.7}
.task-row .status{margin-top:4px}
.task-date-overdue{color:#984b24;font-weight:600}
.tasks-totals{font-size:10px;color:var(--muted);padding:13px 20px;border-top:1px solid var(--line)}
.task-row.is-pending{opacity:.6}
.company-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:22px;margin:0}
.company-details dt{font-size:10px;color:var(--muted);margin-bottom:5px}
.company-details dd{font-size:12px;font-weight:500;color:var(--forest);margin:0;overflow-wrap:anywhere;white-space:pre-line}
.phase-note{padding:18px 20px;background:#f6f0e6;color:var(--muted);font-size:11px;line-height:1.9;border-bottom:1px solid var(--line)}
.phase-note strong{color:var(--forest)}
.future-modules{padding:8px 20px 18px;display:flex;gap:7px;flex-wrap:wrap}
.future-modules span{border:1px solid var(--line);border-radius:4px;padding:5px 8px;font-size:9px;color:var(--muted);background:#fcfdf9}
.read-status{font-size:10px;color:var(--muted);line-height:1.7}
.metric-card .metric-value{font-variant-numeric:tabular-nums}
.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100dvh}
.login-brand{display:flex;flex-direction:column;position:relative;background:var(--deep);color:var(--ivory);padding:42px 8vw 30px;overflow:hidden}
.login-brand::before{content:'';position:absolute;width:540px;height:540px;border:1px solid #e4a47c1f;border-radius:50%;right:-240px;bottom:-240px;pointer-events:none;box-shadow:0 0 0 95px #e4a47c05,0 0 0 190px #e4a47c03}
.login-logo{width:252px;max-width:100%;display:block;position:relative}
.login-logo svg{width:100%;display:block}
.login-brand-copy{margin:auto 0;padding:70px 0;position:relative}
.login-kicker{font-size:9px;letter-spacing:2px;font-weight:600;color:var(--soft-copper)}
.login-brand h1{font-family:var(--serif);font-size:clamp(42px,4vw,66px);line-height:1.12;letter-spacing:-1.7px;font-weight:500;margin:25px 0 26px}
.login-brand h1 span{color:var(--copper)}
.login-brand-copy p{font-size:14px;line-height:1.9;color:#bbd0c7;margin:0}
.login-brand-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;font-size:10px;line-height:1.8;color:#b8cbc1;position:relative}
.login-brand-footer>span{color:var(--soft-copper)}
.login-panel{display:flex;align-items:center;justify-content:center;padding:52px 36px;background:var(--ivory)}
.login-card{width:100%;max-width:370px}
.login-card h2{font-family:var(--serif);font-size:39px;font-weight:500;letter-spacing:-1px;line-height:1.2;color:var(--forest);margin:17px 0}
.login-intro{font-size:13px;color:var(--muted);line-height:1.8;margin:0 0 32px}
.login-card .form-field{margin-bottom:20px}
.login-card .form-field input{min-height:49px;font-size:15px;background:#fffdf9}
.login-submit{width:100%;min-height:48px;justify-content:space-between;font-size:13px;padding-inline:18px;margin-top:5px}
.primary-button:disabled{opacity:.6}
.password-wrap{display:flex;border:1px solid #cbd4c2;border-radius:5px;background:#fffdf9;align-items:center}
.password-wrap>input{border:0!important;min-width:0}
.password-wrap>button{border:0;background:none;color:var(--forest);padding:10px 13px;min-height:43px;font-size:11px}
.login-back{display:block;font-size:12px;color:var(--forest);margin-top:30px}
.login-support{font-size:11px;color:var(--muted);line-height:1.9;margin-top:25px;border-top:1px solid var(--line);padding-top:22px}
.login-session-note{font-size:11px;color:var(--muted);line-height:1.7;margin:14px 0 0;min-height:19px}
.read-error-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}
@media(max-width:1000px){.login-brand{padding-inline:5vw}.login-brand h1{font-size:46px}.login-panel{padding-inline:30px}}
@media(max-width:760px){.system-sidebar:not(.is-open){visibility:hidden;pointer-events:none}.system-sidebar.is-open{visibility:visible}}
@media(max-width:760px){.form-field input,.form-field select,.form-field textarea,.date-field input{font-size:16px}.form-grid{grid-template-columns:1fr}.form-grid>.span-full{grid-column:auto}.panel-form{padding:19px}.company-details{grid-template-columns:1fr;padding:20px}.login-layout{grid-template-columns:1fr}.login-brand{padding:18px 25px;min-height:0}.login-logo{width:210px}.login-brand-copy,.login-brand-footer{display:none}.login-panel{padding:40px 24px;align-items:flex-start}.login-card{max-width:410px}.login-card h2{font-size:36px}.login-card .form-field input{font-size:16px}.logout-button{min-height:40px}.task-toolbar{align-items:stretch}.toolbar-actions{width:100%}.task-toolbar .date-field{width:100%;justify-content:space-between}.task-toolbar .date-field input{flex:1;max-width:220px}.nav-soon{font-size:9px}.tasks-totals{font-size:11px}.task-text .task-meta{font-size:10px}.read-status{font-size:11px}.system-content .work-table{min-width:0}}
