/* Applied from https://8peaksdigital.com.au/brand/.
   Dense checklist controls use app-specific sizes; page titles follow the brand scale. */
body{font-size:16px;line-height:1.55}
h1,h2,h3,.stat-value,.brand-wordmark{font-family:'Space Grotesk',Arial,Helvetica,sans-serif;letter-spacing:-.025em}
h1{font-size:clamp(40px,4.45vw,64px);font-weight:700;line-height:1.08}
h2{font-size:40px;font-weight:700;line-height:1.1}
h3{font-size:22px;font-weight:700;line-height:1.2}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--navy)}
.initial-logo{display:inline-flex;justify-content:center;background:white;padding:16px;border-radius:12px;justify-self:center}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px;text-decoration:none;width:100%;letter-spacing:0}
.brand-chip{display:flex;align-items:center;gap:12px;background:white;border-radius:12px;padding:16px;width:100%;color:var(--navy)}
.brand-chip img{display:block;width:48px;height:auto;flex-shrink:0}
.brand-wordmark{font-weight:700;font-size:19px;line-height:1.05}
.brand small{font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ice);margin:0}
.sidebar{background:var(--navy-900);border-right-color:var(--navy-600)}
.sidebar .brand{padding:0}
.sidebar .nav-label{color:var(--ice);font-size:12px;margin-top:35px}
.sidebar .nav a{color:var(--ice-soft);font-size:14px;padding:13px 14px}
.sidebar .nav a.active,.sidebar .nav a:hover{background:var(--navy-600);color:white}
.sidebar .nav .count{background:var(--navy);color:var(--ice-soft);font-size:11px}
.sidebar .small-note{background:var(--navy);border-color:var(--navy-600);color:white}
.sidebar .small-note strong{font-size:13px}
.sidebar .small-note p{color:var(--ice-soft);font-size:12px}
.sidebar .small-note>.icon{color:var(--ice)}
.sidebar .connection{color:var(--ice-soft);font-size:11px}
.dot{background:var(--navy)}
.sidebar .dot,.topbar .dot{background:var(--ice)}
.sidebar .profile{border-color:var(--navy-600)}
.sidebar .profile strong{color:white;font-size:13px}
.sidebar .profile small{color:var(--ice-soft);font-size:11px}
.sidebar .icon-btn,.topbar .icon-btn{color:var(--ice-soft)}
.sidebar .icon-btn:hover,.topbar .icon-btn:hover{background:var(--navy-600);color:white}
.sidebar :focus-visible,.topbar :focus-visible,.focus-card :focus-visible,.login-story :focus-visible{outline-color:var(--ice)}
.avatar{background:var(--paper);color:var(--navy);font-size:12px}
.topbar{background:var(--navy);border-bottom-color:var(--navy-600);color:white}
.crumb,.top-right{color:var(--ice-soft);font-size:12px}
.crumb strong{color:white}
.topbar .badge.demo{background:var(--navy-600);color:var(--ice-soft);border-color:var(--navy-600)}
.eyebrow{color:var(--navy);font-size:13px;letter-spacing:.14em;font-weight:600}
.intro{margin-bottom:32px;align-items:flex-end}
.intro p{font-size:17px;line-height:1.6;color:var(--muted);max-width:58ch}
.btn{font-size:16px;font-weight:600;min-height:44px;padding:11px 16px}
.btn.primary{background:var(--navy);border-color:var(--navy);color:white}
.btn.primary:hover{background:var(--navy-600);border-color:var(--navy-600)}
.btn.quiet,.text-link{color:var(--navy)}
.btn.danger{color:var(--navy);border-color:var(--navy)}
.stat-label{font-size:13px;color:var(--muted)}
.stat-label .icon{color:var(--navy)}
.stat-value{font-size:44px;line-height:1.1;font-weight:700;color:var(--navy)}
.stat-sub{font-size:12px;color:var(--muted)}
.panel,.stat,.template-card,.template-full{border-color:var(--line)}
.panel-head{align-items:flex-start}
.panel-head h2,.section-title h2{font-size:24px;line-height:1.15;color:var(--navy)}
.panel-head p{font-size:13px}
.text-link{font-size:13px;font-weight:500;white-space:nowrap}
.tab{font-size:12px;color:var(--muted)}
.tab.active{background:var(--navy);color:white}
.search{max-width:100%;flex-basis:100%;margin:4px 0 0;padding:11px 13px;border-color:var(--line)}
.search input{font-size:13px}
.search:focus-within{outline:2px solid var(--navy);outline-offset:2px}
th{font-size:11px;font-weight:600;color:var(--muted);background:var(--paper);letter-spacing:.06em}
.table-wrap{position:relative}
td{font-size:13px;border-color:var(--line)}
.task-title button{font-size:13px;font-weight:600}
.task-title small{font-size:11px;line-height:1.5;color:var(--muted)}
.task-icon,.task-icon.blue{background:var(--paper);border-color:var(--line);color:var(--navy)}
.badge{font-size:11px;font-weight:500;background:var(--paper);color:var(--navy);border:1px solid var(--line)}
.badge.in_progress,.badge.completed,.badge.high,.badge.medium,.badge.low,.badge.shared,.badge.demo{background:var(--paper);color:var(--navy)}
.badge.completed{background:var(--navy);color:white;border-color:var(--navy)}
.badge.high{border-color:var(--navy);font-weight:600}
.badge.low{border-style:dashed}
.progress-text{font-size:11px;color:var(--muted)}
progress,progress::-webkit-progress-bar{background:var(--paper)}
progress::-webkit-progress-value{background:var(--navy)}
progress::-moz-progress-bar{background:var(--navy)}
.due{font-size:12px;color:var(--muted)}
.due.overdue{color:var(--navy);font-weight:600}
.panel-footer{font-size:11px;color:var(--muted)}
.focus-card{background:var(--navy);border-color:var(--navy);color:white}
.focus-card .eyebrow{color:var(--ice);font-size:12px}
.focus-card h2{font-size:27px;font-weight:700;line-height:1.15;max-width:none}
.focus-card p{color:var(--ice-soft);font-size:13px;max-width:none}
.focus-art svg{stroke:var(--ice)}
.focus-card .btn{background:white;color:var(--navy);border-color:white;font-size:13px}
.activity-icon{background:var(--paper);color:var(--navy)}
.activity-item p{font-size:12px;color:var(--muted)}
.activity-item strong{color:var(--navy);font-weight:600}
.activity-item time{font-size:11px;color:var(--muted)}
.template-card h3{font-size:20px;color:var(--navy)}
.template-card p{font-size:12px;color:var(--muted)}
.template-card .badge{font-size:10px}
.workspace-footer{font-size:11px;color:var(--muted)}
.notice{background:white;border-color:var(--line);border-left:3px solid var(--navy);color:var(--muted);font-size:13px}
.empty h3,.detail-meta h3{font-size:22px;color:var(--navy)}
.empty p,.step p,.template-full p,.modal-body p{font-size:14px;line-height:1.6;color:var(--muted)}
.step-section h3{font-size:20px;color:var(--navy)}
.step label{font-size:16px}
.step.done label{color:var(--muted)}
.step-notes summary{font-size:13px;color:var(--navy)}
.step-notes textarea{font-size:14px}
.step-notes .btn{font-size:13px;min-height:36px}
.meta-row,.meta-row strong{font-size:13px}
.detail-meta .btn{font-size:14px}
.template-full h3{font-size:24px;color:var(--navy)}
.template-full ol{font-size:14px;color:var(--muted);line-height:1.7}
.template-full li{padding-bottom:8px}
.template-full .eyebrow{font-size:12px}
.report-card h3{font-size:22px;color:var(--navy)}
.report-card p{font-size:13px}
.modal-head h2{font-size:24px;color:var(--navy)}
label.field{font-size:13px}
input:not([type=checkbox]),select,textarea{background:white;border-color:var(--line);font-size:14px}
.check-label,.share-item{font-size:13px}
.help{font-size:12px;color:var(--muted)}
.error{font-size:13px;background:var(--paper);color:var(--navy);border-left:3px solid var(--navy)}
.login-story{background:var(--navy-900);color:white}
.login-story .brand{width:200px}
.login-story h1{font-size:clamp(40px,5vw,72px);font-weight:700;line-height:1.05;letter-spacing:-.025em}
.login-story p{font-size:17px;color:var(--ice-soft)}
.login-story .eyebrow,.login-story footer{color:var(--ice);font-size:12px}
.login-art{opacity:.45}
.login-form{max-width:390px}
.login-form h2{font-size:36px;line-height:1.1;color:var(--navy)}
.login-form>p{font-size:16px;color:var(--muted)}
.login-form .divider{font-size:11px;color:var(--muted)}
.login-form .help{font-size:12px}
#toast,#toast.error-toast{background:var(--navy);color:white;font-size:14px}
.section-title{gap:12px;flex-wrap:wrap}
.admin-shortcut{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px;background:white;border:1px solid var(--line);border-radius:10px;margin:0 0 24px}
.admin-shortcut strong{font-family:'Space Grotesk',Arial,sans-serif;font-size:20px;color:var(--navy)}
.admin-shortcut p{font-size:13px;color:var(--muted);margin:4px 0 0}
.users-table td{font-size:13px;overflow-wrap:anywhere}
.users-table .task-title{min-width:190px}
.credential-value{font-family:monospace;letter-spacing:.03em}
.report-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:40px;align-items:center;padding:38px;background:var(--navy-900);border-radius:12px;color:white;margin:0 0 30px}
.report-hero .eyebrow{color:var(--ice);font-size:12px}
.report-hero h2{font-size:40px;color:white;line-height:1.1}
.report-hero-copy>p{font-size:15px;color:var(--ice-soft);line-height:1.65;max-width:52ch}
.report-features{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.report-features span{padding:6px 9px;border:1px solid var(--navy-600);border-radius:5px;color:var(--ice-soft);font-size:11px}
.report-start{display:flex;align-items:flex-end;gap:12px;margin-top:27px}
.report-start .field{flex:1;min-width:0;margin:0;color:white}
.report-start select{max-width:100%;font-size:13px}
.report-start .btn.primary{background:white;color:var(--navy);border-color:white;font-size:14px}
.report-document-preview{background:var(--navy);padding:22px 19px 0;border:1px solid var(--navy-600);border-radius:6px;overflow:hidden;box-shadow:0 16px 30px #0B0C1440}
.report-document-brand{display:flex;align-items:center;gap:8px;background:white;padding:12px;border-radius:8px;color:var(--navy);margin-bottom:24px}
.report-document-brand img{width:38px;height:auto}
.report-document-brand strong{font-family:'Space Grotesk',Arial,sans-serif;font-size:13px}
.report-document-preview>small{font-size:8px;letter-spacing:.08em;color:var(--ice)}
.report-document-title{display:block;font-family:'Space Grotesk',Arial,sans-serif;font-size:28px;line-height:1.15;letter-spacing:-.025em;margin:12px 0 26px}
.report-document-cells{display:grid;grid-template-columns:repeat(3,1fr);background:var(--paper);color:var(--muted);gap:9px;margin:0 -19px;padding:19px 13px 0}
.report-document-cells span{font-size:8px;padding:8px;background:white;border-radius:4px}
.report-document-cells b{color:var(--navy);font-size:10px}
.report-document-preview>p{font-size:8px;background:var(--paper);color:var(--navy);margin:0 -19px;padding:15px 14px}
.report-format{display:inline-block;font-family:'Space Grotesk',Arial,sans-serif;font-size:14px;font-weight:700;color:var(--navy);border:1px solid var(--line);background:var(--paper);padding:11px;border-radius:7px}
@media(max-width:1100px){.report-hero{grid-template-columns:minmax(0,1fr);padding:28px}.report-document-preview{display:none}.report-start{flex-wrap:wrap}.report-hero h2{font-size:36px}}
@media(max-width:650px){.report-hero{padding:23px}.report-hero h2{font-size:32px}.report-hero-copy>p{font-size:14px}.report-start{display:block}.report-start .btn{margin-top:12px;width:100%}.report-features span{font-size:10px}}
#initial-password-wrap[hidden]{display:none}
@media(max-width:650px){.admin-shortcut{flex-direction:column;align-items:flex-start;padding:18px}.admin-shortcut .btn{font-size:14px}.users-table{min-width:650px}.users-table th:nth-child(4),.users-table td:nth-child(4){display:table-cell!important}}
.audit-section{border-top:1px solid var(--line);scroll-margin-top:20px}
.audit-section>summary{cursor:pointer;padding:20px 23px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--paper);list-style:none}
.audit-section>summary::-webkit-details-marker{display:none}
.audit-section>summary:after{content:'+';font-size:24px;color:var(--navy)}
.audit-section[open]>summary:after{content:'−'}
.audit-section>summary strong{display:block;color:var(--navy);font-family:'Space Grotesk',Arial,sans-serif;font-size:20px;line-height:1.2}
.audit-section>summary small{display:block;font-size:10px;letter-spacing:.12em;margin-bottom:6px;color:var(--muted)}
.section-count{font-size:12px;white-space:nowrap;margin-left:auto;color:var(--muted)}
.assessment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:20px}
.assessment-grid .field{min-width:0}
.assessment-grid .wide-field{grid-column:1/-1}
.finding-table-field{border:1px solid var(--line);border-radius:8px;padding:12px 0 0;margin:0 0 20px;min-width:0}
.finding-table-field legend{font-size:13px;font-weight:600;padding:0 10px;margin-left:5px;color:var(--navy)}
.finding-table-field table{min-width:650px;table-layout:fixed}
.finding-table-field th{font-size:10px;white-space:normal;padding:10px;min-width:100px}
.finding-table-field td{padding:8px!important;vertical-align:top}
.finding-table-field td:last-child{width:42px}
.finding-table-field td input,.finding-table-field td select{padding:9px 7px;min-height:38px;min-width:85px;font-size:12px;margin:0}
.finding-table-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;color:var(--muted);font-size:11px}
.finding-table-field>.help{padding:0 14px;margin:0 0 14px;font-size:11px}
.finding-table-field .btn{font-size:12px;min-height:32px;padding:6px 12px}
@media(max-width:650px){.finding-table-field th:nth-child(4),.finding-table-field td:nth-child(4){display:table-cell!important}}
.assessment-grid textarea{min-height:92px}
.step-notes .field{margin-bottom:17px}
.step-notes .field textarea{margin-bottom:0}
.result-badge{margin:10px 7px 0 0}
.audit-section-nav{padding:20px;margin-top:20px}
.audit-section-nav h3{font-size:20px;color:var(--navy);margin-bottom:15px}
.audit-section-nav button{display:flex;gap:10px;width:100%;background:transparent;text-align:left;padding:10px 0;color:var(--navy);font-size:12px;border-bottom:1px solid var(--line)}
.audit-section-nav button span{color:var(--muted);font-size:10px;min-width:18px;padding-top:2px}
.audit-section-nav button:last-child{border:0}
.audit-section-nav button:hover{text-decoration:underline}
.audit-search-label{margin:20px 0 0}
.template-outline summary{cursor:pointer;font-size:14px;color:var(--navy);margin:16px 0}
.template-outline li{font-size:13px}
.template-outline li strong{font-weight:500;color:var(--muted);font-size:11px}
.audit-section[hidden],.step[hidden]{display:none!important}
@media(max-width:650px){.assessment-grid{grid-template-columns:minmax(0,1fr)}.step-notes{margin-left:0}.audit-section>summary{padding:18px 16px;gap:8px;flex-wrap:wrap}.audit-section>summary strong{font-size:18px}.section-count{font-size:11px}.audit-section-nav{display:none}.assessment-grid textarea{font-size:14px}.step-notes .btn{font-size:14px}.detail-summary .help{font-size:12px}}
@media(max-width:1200px){.intro{align-items:flex-start}.intro h1{font-size:48px}.sidebar .brand-chip{padding:12px;gap:8px}.sidebar .brand-wordmark{font-size:17px}.sidebar .brand-chip img{width:42px}}
@media(max-width:850px){.intro h1{font-size:40px}.intro .btn{font-size:14px}.stats{grid-template-columns:repeat(2,1fr)}.sidebar .brand-chip{padding:10px}.sidebar .brand-wordmark{font-size:16px}.sidebar .brand-chip img{width:36px}.sidebar .nav a{font-size:13px}.template-card h3{font-size:20px}.login-story{padding:40px 9%}.login-story h1{font-size:48px}.login-form h2{font-size:30px}}
@media(max-width:650px){.sidebar .brand-chip{padding:16px}.sidebar .brand-chip img{width:48px}.sidebar .brand-wordmark{font-size:19px}.intro{flex-wrap:wrap;gap:18px}.intro h1{font-size:40px;line-height:1.08}.intro p{font-size:16px}.intro .btn{font-size:16px}.eyebrow{font-size:12px}.stats{gap:12px}.stat{padding:18px 15px}.stat-label{font-size:12px}.stat-value{font-size:40px}.stat-sub{font-size:11px;line-height:1.6}.panel-head h2,.section-title h2{font-size:22px}.panel-head{gap:12px;flex-wrap:wrap}.panel-head p{font-size:12px}.text-link{font-size:12px}.tab{font-size:11px;padding:8px}.filters{gap:2px}.search{margin-top:8px}.badge{font-size:10px}.task-title{min-width:180px}.task-title button{font-size:13px}.task-title small{font-size:11px}.progress-cell{min-width:90px}.progress-text{font-size:10px}.table-wrap table{min-width:465px}.focus-card h2{font-size:30px;max-width:75%}.focus-card p{font-size:14px;max-width:80%}.focus-card .eyebrow{font-size:12px}.notice{font-size:12px}.workspace-footer{font-size:10px}.login-story{padding:30px 28px}.login-story .brand{width:190px}.login-story h1{font-size:40px;line-height:1.05}.login-story p{font-size:16px}.login-form h2{font-size:30px}.login-form>p{font-size:16px}.modal-head h2{font-size:24px}.modal-foot{flex-wrap:wrap}.modal-foot .btn{font-size:14px}.step-section h3{font-size:20px}.step label{font-size:15px}.detail-meta .btn{width:100%}}
@media(max-width:650px){.focus-art{position:static;height:65px;margin:0 0 14px}.focus-card h2,.focus-card p{max-width:none}}

.library-filters {display:flex;gap:20px;align-items:end;padding:20px;margin:24px 0}.library-filters .field:first-child {flex:1}.library-filters .help {margin-bottom:12px}.template-full[hidden]{display:none!important}.finding-table-field .help {font-weight:400}@media(max-width:700px){.library-filters{display:grid;gap:12px}.library-filters .help{margin:0}}
