:root{--ink:#183b38;--muted:#74817e;--line:#dce3df;--bg:#f5f6f2;--orange:#d96a38;--pale:#eaf0e9}*{box-sizing:border-box}body{margin:0;font:14px/1.5 'Segoe UI',Arial,sans-serif;color:#253d39;background:var(--bg)}button,input,textarea,select{font:inherit}button,a,input,select,textarea,[contenteditable]{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);padding:9px 15px;font-weight:600}button:hover{background:#f0f4ef;border-color:#9aada3}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--ink);color:white;border-color:var(--ink)}.primary:hover{background:#28514c}.quiet{background:transparent}.danger{color:#b14335}.small{padding:5px 10px;font-size:12px}aside{position:fixed;width:264px;inset:0 auto 0 0;background:#173d3a;color:#dae6df;display:flex;flex-direction:column;padding:30px 20px 20px;z-index:3}.brand{display:flex;gap:13px;color:white;text-decoration:none;align-items:center;font-size:21px;font-weight:750;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:1px;color:#b9cdc4}.brand-icon{border:1px solid #8ca89d;width:43px;height:43px;display:grid;place-items:center;position:relative;font-size:27px;border-radius:4px}.brand-icon span{position:absolute;right:-7px;top:-12px;color:#e88756;font-size:25px;background:#173d3a}.workspace-label{font-size:9px;letter-spacing:1.3px;color:#88a79d;margin:40px 0 24px;display:flex;justify-content:space-between}.workspace-label span{border:1px solid #42635a;border-radius:3px;padding:0 4px}.side-label{font-size:11px;color:#a2bcb1;margin-bottom:7px}aside select{background:#234b44;border:1px solid #44675d;color:white;padding:10px;border-radius:5px;width:100%}.side-add{font-size:11px;color:#afc4ba;text-align:left;border:0;background:none;padding:10px 0}.side-add:hover{background:none;color:white}.side-section{margin:25px 0 10px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.2px;color:#91aea2}.side-section button{padding:0 5px;background:#31564d;border:0;color:white;font-size:20px}#search{width:100%;background:#11342f;color:white;border:1px solid #345b50;border-radius:4px;padding:9px 10px;margin-bottom:12px;font-size:12px}#search::placeholder{color:#89a79b}nav{overflow:auto;flex:1}nav button{width:100%;background:none;border:1px solid transparent;text-align:left;color:#b5cbc1;margin:3px 0;padding:12px;font-weight:400}nav button:hover{background:#254f45}nav button.active{background:#2c554b;border-color:#47685b;color:white;box-shadow:inset 3px 0 #e68c5a}nav button b{display:block;font-size:13px}nav button small{display:block;font-size:11px;margin-top:3px;color:#a5beb1}.weekly-link{display:flex;gap:10px;align-items:center;background:none;color:#d3e1d9;border:0;border-top:1px solid #385c51;border-radius:0;padding:19px 0;font-size:12px}.weekly-link span:last-child{margin-left:auto}.weekly-link:hover{background:none;color:white}.side-bottom{font-size:11px;color:#d4e1d7;display:flex;gap:9px;align-items:start;border-top:1px solid #385c51;padding-top:19px}.side-bottom small{font-size:10px;color:#93aea1;display:block;margin-top:3px}.local-dot{width:6px;height:6px;border-radius:50%;background:#91bb9b;margin-top:5px}.shell{margin-left:264px}header{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 37px;background:#fbfcf8;gap:12px}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{margin:0 12px;color:#b1bbb4}.breadcrumb b{color:#42594e;font-weight:500}.header-actions{display:flex;gap:9px;align-items:center}.header-actions button{font-size:12px}#saveState{font-size:10px;color:var(--muted);margin-right:10px}main{max-width:1370px;margin:auto;padding:33px 37px 55px}.eyebrow{color:#7a8c7f;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.title-row{display:flex;align-items:start;justify-content:space-between;gap:15px;margin:10px 0 25px}h1{font-size:30px;letter-spacing:-.8px;line-height:1.2;margin:8px 0 10px;font-weight:650}h2{font-size:19px;letter-spacing:-.3px;margin:0 0 4px}h3{font-size:14px;margin:0 0 15px}.subtitle{color:var(--muted);font-size:12px;margin:0}.badge{background:#e8ede4;border:1px solid #d4dfd1;color:#59714f;border-radius:4px;padding:4px 8px;font-size:10px;white-space:nowrap}.title-tools{display:flex;gap:7px;align-items:center;margin-top:12px}.tabs{display:flex;border-bottom:1px solid #d5ddd5;gap:23px;overflow:auto;white-space:nowrap;margin-bottom:26px}.tabs button{border:0;background:none;border-bottom:2px solid transparent;border-radius:0;padding:0 0 13px;font-size:12px;color:#7a867d;font-weight:500}.tabs button.active{border-color:var(--orange);color:var(--ink);font-weight:650}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:23px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px;margin-bottom:20px}.card-heading{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #edf0e9;padding-bottom:18px;margin-bottom:22px}.card-heading p{color:var(--muted);font-size:12px;margin:5px 0 0}.section-number{font-size:10px;font-weight:700;color:#91a18f;letter-spacing:1.5px;margin-bottom:8px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px}.field{display:flex;flex-direction:column;min-width:0;gap:7px}.field.wide{grid-column:1/-1}label{font-size:11px;font-weight:600;color:#53685c}.optional{font-weight:400;color:#a1aaa0;font-size:10px;margin-left:5px}input,textarea,select{border:1px solid #dbe2d8;border-radius:5px;padding:10px 11px;color:#284438;background:#fcfdf9;min-width:0;width:100%;font-size:13px}input:focus,textarea:focus,select:focus{border-color:#799b86;outline:2px solid #dfe9dd}textarea{resize:vertical;min-height:96px;line-height:1.6}input::placeholder,textarea::placeholder{color:#a6afa5;font-size:12px}.hint{font-size:11px;color:var(--muted);margin:8px 0}.aside-card{padding:21px;background:#edf1e9;border:1px solid #dce4d5;border-radius:7px;margin-bottom:17px}.aside-card h3{font-size:12px;margin-bottom:9px}.aside-card p,.aside-card li{font-size:11px;line-height:1.8;color:#6b7e6c}.aside-card ul{padding-left:17px}.aside-card .num{font-size:31px;color:#2f5543;line-height:1.2}.aside-card hr{border:0;border-top:1px solid #d6e0d1;margin:15px 0}.aside-card button{width:100%;font-size:11px;margin-top:8px;background:transparent}.note{border-left:3px solid #d78c58;padding:11px 15px;background:#fbf3e8;color:#7b664c;font-size:11px;border-radius:0 4px 4px 0;margin:15px 0}.success-note{border-color:#7a9f79;background:#edf4e9;color:#4f6d49}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.gap-top{margin-top:20px}.toolbar{display:flex;align-items:center;gap:5px;border:1px solid #d9e1d5;border-bottom:0;padding:7px;background:#f6f8f1;border-radius:5px 5px 0 0;flex-wrap:wrap}.toolbar button{padding:4px 9px;font-size:12px;background:transparent;border:1px solid transparent}.toolbar select{width:auto;padding:4px 8px;font-size:11px;background:transparent}.toolbar .divider{height:19px;border-left:1px solid #d6dfd0;margin:0 4px}.editor{border:1px solid #d9e1d5;padding:22px;min-height:300px;border-radius:0 0 5px 5px;line-height:1.8;font-size:13px;background:white;overflow-wrap:anywhere}.editor:empty:before{content:attr(data-placeholder);color:#a6afa5;pointer-events:none}.editor h2{margin:15px 0;font-size:18px}.editor p{margin:5px 0 12px}.editor table,.paper table{border-collapse:collapse;width:100%;margin:12px 0}.editor td,.editor th,.paper td,.paper th{border:1px solid #cbd7ca;padding:7px;vertical-align:top}.editor img,.paper img{max-width:100%;height:auto}.editor a{color:#39776b}.editor-small{min-height:140px}.table-wrap{overflow:auto}table.data{border-collapse:collapse;width:100%;font-size:12px}table.data th{text-align:left;font-size:10px;color:#7b8b7b;padding:12px 9px;border-bottom:1px solid #e1e7dd;font-weight:600}table.data td{padding:10px 6px;border-bottom:1px solid #eef1e9}table.data input,table.data select{padding:8px;font-size:12px;min-width:90px}table.data .remove{padding:5px 8px;border:0;color:#9b7966;background:none}.empty{padding:25px;color:#8a9786;text-align:center;font-size:12px;border:1px dashed #d6dfcf;border-radius:5px}.shift{border:1px solid #dfe5d8;border-radius:7px;padding:21px;margin-top:16px}.shift .row{margin-bottom:16px}.shift .grid{gap:15px}.shift-title{font-weight:650}.shift-foot{color:#71836e;font-size:11px;padding-top:13px}.checkboxes{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.checkboxes label{background:#f2f5ed;padding:7px 10px;border-radius:4px;display:flex;align-items:center;gap:7px}.checkboxes input{width:auto}.file-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7ece2;padding:12px 0;gap:15px}.file-row small{display:block;color:#8c9987;font-size:10px}.file-row a{color:var(--ink)}.paper{background:#fff;border:1px solid var(--line);box-shadow:0 3px 12px #193d3810;padding:42px;overflow-wrap:anywhere;font-size:13px}.paper-head{display:flex;justify-content:space-between;align-items:start;border-bottom:3px solid var(--ink);padding-bottom:22px;margin-bottom:25px}.paper-head h1{font-size:27px}.paper h2{font-size:17px;margin-top:27px;border-bottom:1px solid #d8e1d2;padding-bottom:9px;margin-bottom:14px}.paper h3{margin:20px 0 9px}.paper dl{display:grid;grid-template-columns:130px 1fr;gap:7px;font-size:12px}.paper dt{color:#84917e}.paper dd{margin:0;white-space:pre-wrap}.paper p{white-space:pre-wrap}.export-actions{display:flex;flex-direction:column;gap:9px}.export-actions button{font-size:12px;text-align:left}.status-line{font-size:11px;padding:7px 0;border-bottom:1px solid #dae3d3}.status-line b{color:#5e7d51}.status-line.warn{color:#976b3e}.weekly-job{padding:21px;border:1px solid #dbe3d5;border-radius:6px;margin:13px 0;display:flex;justify-content:space-between;gap:12px}.weekly-job h3{margin-bottom:5px}.weekly-job p{font-size:11px;color:#7b8b75;margin:0}footer{margin:0 37px;padding:18px 0;border-top:1px solid #dbe3d5;display:flex;align-items:center;font-size:9px;letter-spacing:1.2px;color:#84937d;gap:20px}footer span{letter-spacing:0;font-size:10px;margin-left:auto}footer button{padding:0;background:none;border:0;font-size:10px;font-weight:400;color:#84937d;letter-spacing:0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#193e37;color:white;padding:12px 24px;border-radius:6px;box-shadow:0 4px 20px #0002;display:none;z-index:20;max-width:90%}dialog{border:1px solid #d4ddcd;border-radius:10px;padding:28px;max-width:620px;width:90%;color:var(--ink);box-shadow:0 15px 80px #0003}dialog::backdrop{background:#12392e66}dialog h2{margin-bottom:15px}dialog .actions{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.choice{display:block;width:100%;text-align:left;margin-top:12px;padding:15px}.choice small{display:block;font-weight:400;color:#84917c}.error{color:#b04b36}.muted{color:var(--muted)}#printArea{display:none}.instruction-count{font-size:11px;color:#9db5a6}.chip{border-radius:3px;border:1px solid #dce3d5;padding:2px 6px;font-size:10px;color:#7b8c72}.dropzone{padding:30px;border:1px dashed #b7c9ad;border-radius:6px;background:#f8faf3;text-align:center;color:#839379}.dropzone button{margin:12px}.mobile-only{display:none}@media(min-width:1550px){main{padding-top:44px}.card{padding:30px}.editor{min-height:390px}}@media(max-width:1150px){aside{width:225px;padding:25px 16px}.shell{margin-left:225px}.content-layout{grid-template-columns:1fr}.side-info{display:grid;grid-template-columns:1fr 1fr;gap:15px}.side-info .aside-card{margin:0}header{padding:0 23px}main{padding:27px 23px}.tabs{gap:18px}.header-actions #saveState{display:none}}@media(max-width:760px){aside{position:relative;width:100%;height:auto;padding:17px}.brand{font-size:17px}.brand-icon{width:34px;height:34px;font-size:23px}.brand small{font-size:8px}.workspace-label,.side-label,.side-bottom,.side-add{display:none}aside select{margin-top:15px}.side-section{margin:13px 0 5px}#search{display:none}nav{display:flex;gap:8px;overflow:auto;max-height:100px}nav button{min-width:160px;max-width:230px;padding:8px}.weekly-link{padding:12px 0 0;margin-top:10px}.shell{margin-left:0}header{height:auto;min-height:65px;padding:12px 17px;flex-wrap:wrap}.breadcrumb{font-size:10px}.header-actions{gap:5px}.header-actions button{padding:7px 10px;font-size:11px}main{padding:24px 17px}.title-row{flex-direction:column;margin-bottom:18px}.title-tools{margin:0}h1{font-size:26px}.grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.card{padding:20px}.tabs{gap:20px;margin-bottom:20px}.side-info{grid-template-columns:1fr}.paper{padding:23px}.paper dl{grid-template-columns:100px 1fr}.shift{padding:15px}.shift .grid{grid-template-columns:1fr 1fr}.shift .field.wide{grid-column:1/-1}.weekly-job{flex-direction:column}footer{margin:0 17px}footer span{display:none}.table-wrap{margin:0 -10px}table.data{min-width:620px}}@media print{@page{size:A4;margin:16mm}body{background:white}body>aside,.shell,dialog,#toast{display:none!important}#printArea{display:block}.paper{border:0;box-shadow:none;padding:0;font-size:10pt;color:#111}.paper h1{font-size:22pt}.paper h2{break-after:avoid;font-size:14pt}.paper h3{break-after:avoid}.paper-head{break-inside:avoid}.paper tr,.paper img{break-inside:avoid}.paper img{max-height:240mm;object-fit:contain}.paper a{color:#111;text-decoration:none}.page-break{break-before:page}.paper dl{font-size:10pt}.paper section{margin-bottom:15px}}

.build-link{color:#84937d;font-size:10px;letter-spacing:0;text-decoration:none}.build-link:hover{text-decoration:underline}

/* Story Geotech shared branding */
:root{--ink:#0163AC;--muted:#536C82;--line:#d7e3ef;--bg:#f2f6fa;--orange:#0163AC;--pale:#e8f2fb}aside{background:#0163AC;color:white}.brand{font-size:17px;letter-spacing:0}.brand small{color:#d9ebfa}.story-brand{width:78px;max-height:58px;object-fit:contain;background:white;border-radius:5px;padding:5px}.workspace-label,.side-label,.side-section,.side-add{color:#d1e6f8}aside select{background:#014f8a;border-color:#6aabdc}nav button.active{background:#014a80;border-color:#83bbe5;box-shadow:inset 3px 0 white}nav button:hover{background:#07548c}nav button,nav button small{color:#e5f2fd}#search{background:#014a80;border-color:#6aa8d6}#search::placeholder{color:#c9e0f4}.weekly-link,.side-bottom{border-color:#6fa9d1;color:#ecf6fe}.side-bottom small{color:#d6e9f8}.primary{background:#0163AC}.primary:hover{background:#014a80}.aside-card{background:#eaf3fb;border-color:#d2e3f1}.aside-card p,.aside-card li{color:#536C82}.aside-card .num{color:#0163AC}.required-mark{color:#9a3b30;font-size:10px;margin-left:5px}.attachment-metadata{padding:15px 0;border-bottom:1px solid #d7e3ef}.field input[aria-required=true],.field textarea[aria-required=true]{border-left:3px solid #0163AC}.export-actions .primary{color:white}.brand-icon{display:none}.checkboxes input{accent-color:#0163AC}.badge{background:#e8f2fb;border-color:#caddf0;color:#014a80}
