@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,650;8..60,750&display=swap";:root{color:#182331;font-synthesis:none;--ink:#182331;--muted:#6a7583;--line:#e4e5df;--canvas:#fafaf7;--paper:#fff;--navy:#08233e;--blue:#1e63d6;--green:#087f5b;--red:#bf2c3a;--amber:#a85d0a;--shadow:0 12px 34px #18233114;background:#fafaf7;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-height:100%}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #1e63d638}button:disabled{cursor:not-allowed;opacity:.48}svg{stroke-width:1.9px;width:20px;height:20px}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.app{min-height:100vh;padding-bottom:86px}.app-header{z-index:40;height:74px;padding:0 max(20px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fafaf7f0;border-bottom:1px solid #e4e5dfe6;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:11px;min-height:48px;padding:0;display:flex}.brand img{width:34px;height:34px}.brand strong,.brand small{display:block}.brand strong{color:var(--navy);letter-spacing:-.02em;font-size:17px}.brand small{max-width:170px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.header-actions{align-items:center;gap:7px;display:flex}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:46px;height:46px;padding:0;display:grid;position:relative}.icon-button:hover{background:#f0f1ed}.avatar{color:#fff;background:var(--navy);cursor:pointer;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;font-weight:700;display:grid}.unread-dot{border:2px solid var(--canvas);color:#0000;background:var(--red);border-radius:50%;width:8px;height:8px;display:block;position:absolute;top:9px;right:10px;overflow:hidden}.offline-banner,.sync-banner,.update-banner,.global-error{justify-content:center;align-items:center;gap:8px;min-height:42px;padding:8px 20px;font-size:12px;font-weight:650;display:flex}.offline-banner{color:#604009;background:#fff3d5}.sync-banner{color:#154b38;background:#e7f6ef}.update-banner{color:#133f78;background:#e8f1ff}.sync-banner button,.update-banner button{min-height:30px;color:inherit;cursor:pointer;background:#ffffffad;border:1px solid;border-radius:8px;padding:0 10px;font-size:11px;font-weight:750}.global-error{color:#781b24;background:#ffebed}.global-error button{min-height:32px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:8px;padding:0 10px}.toast{z-index:100;color:#fff;background:var(--navy);max-width:calc(100vw - 36px);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:8px;padding:13px 15px;font-size:13px;font-weight:650;display:flex;position:fixed;top:88px;right:18px}main{width:min(100%,780px);margin:0 auto}.page{gap:24px;padding:30px 22px 44px;display:grid}.page-title{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.page-title>div{min-width:0}.eyebrow{color:var(--blue);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.page-title h1{color:var(--ink);letter-spacing:-.045em;margin:5px 0 0;font:750 clamp(32px,8vw,44px)/1.04 "Source Serif 4",Georgia,serif}.page-title p{max-width:600px;color:var(--muted);margin:10px 0 0;font-size:14px;line-height:1.55}.section-title{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:4px 0 -10px;font-size:11px;font-weight:800}.hero-card{color:#fff;background:var(--navy);box-shadow:var(--shadow);border-radius:22px;gap:24px;padding:26px;display:grid}.hero-card h2{letter-spacing:-.025em;margin:8px 0 0;font:700 27px/1.12 "Source Serif 4",Georgia,serif}.hero-card p{color:#cfdae5;margin:8px 0 0;font-size:14px;line-height:1.55}.hero-card .eyebrow{color:#81b4ff}.hero-action{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:13px;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:0 17px;font-weight:750;display:inline-flex}.hero-action:hover{background:#1558c2;transform:translateY(-1px)}.receipt-row{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;grid-template-columns:24px 1fr 20px;align-items:center;gap:13px;min-height:70px;padding:12px 3px;display:grid}.receipt-row strong,.receipt-row small{display:block}.receipt-row strong{font-size:14px}.receipt-row small{color:var(--muted);margin-top:4px;font-size:12px}.calm-list{border:1px solid var(--line);background:var(--paper);border-radius:18px;overflow:hidden}.action-row{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;grid-template-columns:42px minmax(0,1fr) auto auto 20px;align-items:center;gap:14px;width:100%;min-height:78px;padding:11px 17px;display:grid}.action-row:last-child{border-bottom:0}.action-row:not(:disabled):hover{background:#f7f8f5}.action-row:disabled{opacity:1}.row-icon{width:38px;height:38px;color:var(--navy);place-items:center;display:grid}.row-icon svg{width:23px;height:23px}.row-copy{min-width:0}.row-copy strong,.row-copy small{display:block}.row-copy strong{font-size:14px}.row-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;overflow:hidden}.row-value{min-width:27px;height:27px;color:var(--navy);background:#eef0ec;border-radius:14px;place-items:center;padding:0 7px;font-size:12px;font-weight:800;display:grid}.declaration-panel,.form-section,.checklist,.submit-panel,.record,.new-message{border:1px solid var(--line);background:var(--paper);border-radius:18px}.declaration-panel{grid-template-columns:34px 1fr;gap:12px 16px;padding:22px;display:grid}.declaration-panel>svg{color:var(--green)}.declaration-panel h2{margin:0;font-size:19px}.declaration-panel p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.55}.status-options,.acknowledge,.declaration-panel>.primary-button,.server-receipt{grid-column:1/-1}.status-options{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.status-option{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:12px;min-height:74px;padding:10px}.status-option strong,.status-option span{display:block}.status-option strong{font-size:13px}.status-option span{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.3}.status-option--fit.selected{border-color:var(--green);background:#e8f7f1}.status-option--conditional.selected{border-color:var(--amber);background:#fff4e5}.status-option--unfit.selected{border-color:var(--red);background:#ffebed}.acknowledge{color:#4c5866;align-items:flex-start;gap:11px;font-size:12px;line-height:1.5;display:flex}.acknowledge input{width:20px;height:20px;accent-color:var(--blue);flex:none}.primary-button,.secondary-button,.signout-button{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:0 18px;font-weight:750;display:inline-flex}.primary-button{color:#fff;background:var(--blue);border:0}.primary-button:hover{background:#1558c2}.secondary-button{color:var(--ink);background:#fff;border:1px solid #cfd3d7}.secondary-button:hover{background:#f3f4f1}.compact{min-height:44px;padding-inline:15px}.server-receipt{color:var(--green);align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.form-section{gap:16px;padding:20px;display:grid}label{color:#3e4a57;gap:7px;font-size:12px;font-weight:700;display:grid}input,select,textarea{width:100%;min-height:49px;color:var(--ink);background:#fff;border:1px solid #d5d8d9;border-radius:11px;padding:0 13px}textarea{resize:vertical;min-height:94px;padding-block:12px}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.member-select{border:1px solid var(--line);border-radius:12px;padding:12px}.member-select.active{border-color:var(--blue);box-shadow:0 0 0 2px #1e63d61a}.checklist{overflow:hidden}.checklist-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px;display:flex}.checklist-heading h2{margin:4px 0 0;font-size:22px}.checklist-heading>strong{color:var(--blue)}.question-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:18px 20px;display:grid}.question-row:last-child{border-bottom:0}.question-row>div:first-child>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.question-row h3{margin:5px 0 0;font-size:14px;line-height:1.42}.question-row p{color:var(--muted);margin:6px 0 0;font-size:11px}.answer-buttons{align-items:center;gap:7px;display:flex}.answer-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:5px;min-height:40px;padding:0 12px;font-size:12px;font-weight:750;display:inline-flex}.answer-buttons .pass.active{color:#fff;border-color:var(--green);background:var(--green)}.answer-buttons .fail.active{color:#fff;border-color:var(--red);background:var(--red)}.fault-fields{grid-column:1/-1;grid-template-columns:1fr auto;gap:8px;display:grid}.file-input{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:1px solid #d5d8d9;border-radius:11px;align-items:center;gap:7px;max-width:250px;min-height:49px;padding:0 13px;display:inline-flex;overflow:hidden}.file-input input,.dropzone input{display:none}.submit-panel{gap:14px;padding:20px;display:grid}.inline-error{border-left:3px solid var(--red);color:#7d2028;background:#ffeff0;padding:12px 14px;font-size:12px;line-height:1.45}.record-list{gap:14px;display:grid}.record{gap:16px;padding:20px;display:grid}.record-top{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.record-icon{width:38px;height:38px;color:var(--navy);place-items:center;display:grid}.record h2{margin:0;font-size:18px}.record-top p{color:var(--muted);align-items:center;gap:4px;margin:5px 0 0;font-size:12px;display:flex}.record-top p svg{width:13px;height:13px}.record dl{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:13px 0;display:grid}.record dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.record dd{margin:4px 0 0;font-size:12px;line-height:1.45}.instruction{color:#45505c;background:#f4f5f1;border-radius:10px;margin:0;padding:12px;font-size:12px;line-height:1.5}.decision-actions{grid-template-columns:1fr 1.5fr;gap:9px;display:grid}.status{color:#56616c;text-transform:capitalize;white-space:nowrap;background:#eef0ec;border-radius:13px;justify-content:center;align-items:center;min-height:25px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.status--accepted,.status--fit,.status--approved{color:#086547;background:#e4f5ee}.status--rejected,.status--unfit,.status--not-fit{color:#9a2130;background:#ffeaed}.status--pending,.status--pending-upload,.status--submitted,.status--changes-requested{color:#875009;background:#fff0d8}.empty{text-align:center;justify-items:center;padding:54px 24px;display:grid}.empty>svg{width:38px;height:38px;color:var(--blue)}.empty h2{margin:15px 0 0;font:700 23px "Source Serif 4",Georgia,serif}.empty p{max-width:380px;color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.55}.modal-backdrop{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#08233e6b;align-items:end;padding:14px;display:grid;position:fixed;inset:0}.modal{background:var(--paper);border-radius:22px;width:min(100%,700px);max-height:calc(100dvh - 28px);margin:0 auto;overflow:auto;box-shadow:0 24px 80px #0003}.modal>header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:18px 20px;display:flex;position:sticky;top:0}.modal>header h2{margin:0;font-size:20px}.modal-form{gap:15px;padding:20px;display:grid}.modal-form.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form .full{grid-column:1/-1}.dropzone{cursor:pointer;text-align:center;border:1px dashed #aeb7bf;border-radius:14px;justify-items:center;gap:8px;min-height:130px;padding:22px;display:grid}.dropzone span{color:var(--muted);font-size:11px;font-weight:500}.new-message{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:15px;display:grid}.new-message textarea{grid-column:1/-1}.message-page{min-height:calc(100dvh - 160px)}.back-button{min-height:42px;color:var(--blue);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-weight:700}.chat{background:#f1f2ee;border-radius:18px;flex-direction:column;gap:9px;min-height:380px;padding:16px;display:flex}.bubble{background:#fff;border-radius:5px 15px 15px;align-self:flex-start;max-width:82%;padding:11px 13px;box-shadow:0 2px 5px #1823310d}.bubble--mine{background:#deebff;border-radius:15px 5px 15px 15px;align-self:flex-end}.bubble--queued{background:#edf4ff;border:1px dashed #7ca2d8}.bubble strong{font-size:10px}.bubble p{white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.5}.bubble time{color:var(--muted);text-align:right;margin-top:6px;font-size:9px;display:block}.composer{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:16px;grid-template-columns:1fr 48px;gap:8px;padding:8px;display:grid;position:sticky;bottom:78px}.composer textarea{border:0;min-height:48px;max-height:140px}.composer button{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:13px;place-items:center;width:48px;height:48px;padding:0;display:grid}.notification-list{border:1px solid var(--line);background:var(--paper);border-radius:18px;overflow:hidden}.notification{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:#f7faff;grid-template-columns:28px 1fr;gap:12px;width:100%;min-height:84px;padding:14px 17px;display:grid}.notification.read{background:#fff}.notification:last-child{border-bottom:0}.notification strong,.notification small,.notification time{display:block}.notification small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.4}.notification time{color:#8c949b;margin-top:6px;font-size:9px}.signout-button{width:100%;color:var(--red);background:#fff;border:1px solid #e2aab0}.sync-centre{border:1px solid var(--line);background:var(--paper);border-radius:18px;gap:12px;padding:18px;display:grid}.sync-centre-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.sync-centre-heading>div{align-items:flex-start;gap:11px;min-width:0;display:flex}.sync-centre-heading>div>svg{color:var(--blue);flex:none;margin-top:2px}.sync-centre-heading strong,.sync-centre-heading small{display:block}.sync-centre-heading strong{color:var(--navy);font-size:14px}.sync-centre-heading small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.4}.sync-empty{color:var(--muted);margin:2px 0;font-size:12px;line-height:1.5}.delivery-state{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:62px;padding:10px 12px;display:grid}.delivery-state>svg{color:#6d7781;width:19px;height:19px}.delivery-state>span{min-width:0}.delivery-state strong,.delivery-state small,.delivery-state em{display:block}.delivery-state strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.delivery-state small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.35}.delivery-state em{color:var(--red);margin-top:3px;font-size:10px;font-style:normal;line-height:1.35}.delivery-state button{min-height:34px;color:var(--blue);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd2d8;border-radius:9px;padding:0 10px;font-size:10px;font-weight:750}.delivery-state--queued{background:#fffbf1;border-color:#d4c39e}.delivery-state--queued>svg{color:var(--amber)}.delivery-state--syncing{background:#f4f8ff;border-color:#b8cfec}.delivery-state--syncing>svg{color:var(--blue);animation:1s linear infinite spin}.delivery-state--failed{background:#fff6f7;border-color:#e1b2b7}.delivery-state--failed>svg{color:var(--red)}.delivery-state--server_received{background:#f3fbf7;border-color:#acd5c5}.delivery-state--server_received>svg{color:var(--green)}.bottom-nav{z-index:50;height:calc(72px + env(safe-area-inset-bottom));padding:5px max(5px, env(safe-area-inset-left)) env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.nav-button{color:#7a848e;cursor:pointer;background:0 0;border:0;align-content:center;place-items:center;gap:4px;min-width:0;font-size:10px;font-weight:700;display:grid;position:relative}.nav-button svg{width:21px;height:21px}.nav-button.active{color:var(--blue)}.nav-badge{color:#fff;background:var(--red);border:2px solid #fff;border-radius:10px;min-width:17px;height:17px;padding:0 4px;font-size:8px;line-height:13px;position:absolute;top:5px;left:calc(50% + 7px)}.splash{background:var(--canvas);align-content:center;place-items:center;gap:12px;min-height:100dvh;display:grid}.splash img{width:54px;height:54px}.splash strong{color:var(--navy);font:700 26px "Source Serif 4",Georgia,serif}.splash span{color:var(--muted);font-size:12px}.login-page{grid-template-columns:1.05fr .95fr;min-height:100dvh;display:grid}.login-intro{color:#fff;background:var(--navy);align-content:center;padding:clamp(40px,8vw,110px);display:grid}.login-intro img{filter:brightness(0)invert();width:52px;height:52px}.login-intro>p{color:#8cbcff;letter-spacing:.14em;margin:30px 0 0;font-size:11px;font-weight:800}.login-intro h1{letter-spacing:-.05em;max-width:560px;margin:9px 0 0;font:750 clamp(42px,7vw,74px)/.98 "Source Serif 4",Georgia,serif}.login-intro>span{color:#c7d5e2;max-width:520px;margin-top:22px;font-size:15px;line-height:1.6}.login-form{align-content:center;gap:16px;width:min(100% - 40px,440px);margin:0 auto;display:grid}.login-form h2{margin:0;font:700 35px "Source Serif 4",Georgia,serif}.login-form>p{color:var(--muted);margin:-8px 0 5px;font-size:13px}.login-form small{color:var(--muted);text-align:center}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=700px){.hero-card{grid-template-columns:1fr 210px;align-items:end}.modal-backdrop{align-items:center}}@media (width<=699px){.page{gap:20px;padding:25px 16px 36px}.page-title{align-items:center}.page-title h1{font-size:35px}.page-title .primary-button{padding:0 12px;font-size:12px}.status-options,.member-grid,.question-row{grid-template-columns:1fr}.answer-buttons button{flex:1;justify-content:center}.fault-fields{grid-template-columns:1fr}.file-input{max-width:none}.record dl{grid-template-columns:1fr 1fr}.modal-form.two-column{grid-template-columns:1fr}.modal-form .full{grid-column:auto}.login-page{padding:max(34px, env(safe-area-inset-top)) 20px 36px;display:block}.login-intro{color:var(--ink);background:0 0;padding:18px 0 32px;display:block}.login-intro img{filter:none;width:42px;height:42px}.login-intro>p{color:var(--blue);margin-top:20px}.login-intro h1{font-size:43px}.login-intro>span{display:none}.login-form{width:100%}.login-form h2{font-size:27px}.toast{top:78px}.offline-banner,.sync-banner,.update-banner{flex-wrap:wrap;justify-content:flex-start;padding-inline:16px}.offline-banner span,.sync-banner span,.update-banner span{flex:210px}.sync-centre-heading{flex-direction:column;align-items:stretch}.sync-centre-heading .secondary-button{width:100%}}@media (width<=420px){.brand small{max-width:130px}.action-row{grid-template-columns:38px minmax(0,1fr) auto 16px;gap:10px;padding-inline:13px}.action-row>.status{grid-column:2/-1;justify-self:start}.record-top{grid-template-columns:34px minmax(0,1fr)}.record-top .status{grid-column:2;justify-self:start}.record dl{grid-template-columns:1fr}.delivery-state{grid-template-columns:26px minmax(0,1fr)}.delivery-state button{grid-column:2;justify-self:start}}
