:root{font-family:Arial,Helvetica,sans-serif;color:#302f26;background:#eee8da;font-synthesis:none;--green:#214f43;--line:#cdc6b4;--cream:#f7f0df}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:5px;padding:10px 13px;background:#faf6eb;color:inherit;transition:background .15s}button:hover{background:#e3d7bd}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #bd6c35;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #beb6a2;border-radius:4px;background:#fffcf2;padding:10px;color:#302f26}textarea{min-height:140px;resize:vertical}.app{max-width:1900px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:24px 3.5%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none;letter-spacing:2px;font-weight:700;font-size:17px}.brand small{display:block;font-size:8px;letter-spacing:1.6px;margin-top:5px}.brandmark{font-size:35px;color:var(--green)}.header-actions{display:flex;align-items:center;gap:10px}.local{font-size:9px;letter-spacing:1.4px;margin-right:14px;color:#53664b}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#133b30}.intro{display:flex;align-items:center;justify-content:space-between;padding:40px 4% 34px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#686c54}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(40px,4.4vw,73px);letter-spacing:-2.8px;line-height:1;margin:20px 0 0}h1 em{color:var(--green);font-weight:400}.intro-note{font-family:Georgia,serif;font-size:21px;line-height:1.65;color:#68604d}.intro-number{font-family:Georgia,serif;font-size:84px;border-left:1px solid var(--line);padding-left:45px;color:#a2885f}.intro-number small{font-family:Arial,sans-serif;font-size:9px;letter-spacing:1.4px;display:block;color:#655e50}.studies{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 4%;background:#e6dfcd;gap:5px;overflow:auto}.studies button{white-space:nowrap;border:0;border-radius:0;background:none;padding:20px 16px}.studies button span{font-size:9px;opacity:.6;margin-right:9px}.studies .selected{background:var(--green);color:#fff}.studies small{display:block;font-size:8px;margin:5px 0 0 20px;letter-spacing:.6px}main{display:grid;grid-template-columns:290px minmax(300px,1fr) 275px;border-bottom:1px solid var(--line)}main>section,aside{padding:24px}.controls,.drawing{border-right:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}.section-heading h2{font-weight:600;font-size:12px;margin:0}.section-heading>span{font-size:8px;letter-spacing:.8px;color:#827763}.controls .section-heading>span{display:none}label{display:block;font-size:11px;font-weight:600;margin-bottom:15px}label>input,label>select,label>button{display:block;margin-top:7px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.full{width:100%;margin:5px 0}.hint{font-size:11px;line-height:1.6;color:#766c58}.controls form{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}details{font-size:12px;line-height:1.7;margin:20px 0}summary{cursor:pointer;font-weight:600}.drawing{background:var(--cream);display:flex;flex-direction:column}.vessel{flex:1;display:flex;align-items:center;justify-content:center}.vessel svg{width:100%;max-width:560px;max-height:610px}.legend{display:flex;gap:20px;justify-content:center;font-size:10px;color:#77654b}.legend span{display:flex;align-items:center;gap:6px}.legend i{display:inline-block;width:10px;height:10px;border:1px solid #665641;border-radius:50%;background:#fff}.legend i.over{background:#255f56}.legend i.under{background:#d6aa63}.vessel-footer{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;padding:23px 0 12px;margin-top:12px;border-top:1px solid var(--line)}.notice{font-size:10px;line-height:1.5;color:#736d5c}.count{font-family:Georgia,serif;font-size:86px;line-height:1;margin-bottom:25px}.count small{display:block;font:9px Arial;letter-spacing:1.4px;margin-top:10px;color:#78715c}.check{display:flex;align-items:center;gap:9px}.check input{width:auto;margin:0}.warning,.success{border:1px solid #c5ab7c;border-radius:5px;padding:15px;font-size:12px;background:#e6d5b6;line-height:1.6}.success{background:#dce6ce;border-color:#a8b494}.diagnostic>p{font-size:11px}.conflicts{padding-left:16px;font-size:11px;max-height:150px;overflow:auto}.conflicts li{margin:7px 0}.conflicts b{font-size:8px;color:#a55328;padding-left:8px}.diagnostic ol{padding-left:20px;font-size:11px}.diagnostic li{margin-bottom:10px}.repair{background:#ddd9c9;font-size:11px;padding:10px}.repair button{font-size:10px;margin-right:3px}.map{padding:30px 3.5% 40px;background:#e8e1d0}.map .section-heading p{font-size:11px;color:#6c6657;margin-bottom:0}.course-grid{overflow:auto;padding-bottom:12px}.course-row{display:flex;align-items:center;gap:10px;padding:6px;min-width:max-content;border-bottom:1px solid #d5ccba}.course-row.focused{background:#d9cfb8;border-left:3px solid #214f43;padding-left:3px}.row-label{width:67px;font-size:11px;text-align:left;border:0;background:none}.row-label small{display:block;font-size:8px;margin-top:5px;color:#756b56}.cells{display:flex;gap:5px}.cell{width:42px;height:47px;padding:5px;border:1px solid #bca980;border-radius:4px}.cell small{display:block;font-size:8px}.cell b{display:block;font-size:20px;line-height:1.1}.cell.over{background:#255f56;color:#fff}.cell.under{background:#d6aa63}.cell.empty{background:#f8f1e2}.cell.conflict{box-shadow:inset 0 -3px #b84e30}.row-status{font-size:8px;letter-spacing:1px;margin-left:15px;color:#7b6245}.exports{display:flex;gap:8px;flex-wrap:wrap}footer{padding:25px 3.5%;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:#173e37;color:#f2eada}footer [role=status]{font-size:12px;max-width:550px}footer details{width:100%;max-width:850px;font-size:11px}footer button{font-size:11px;background:#285246;color:#fff;border-color:#567467}footer details button{margin:0 8px 10px 0}@media(min-width:1500px){main{grid-template-columns:330px minmax(500px,1fr) 330px}main>section,aside{padding:32px}.cell{width:48px}}@media(max-width:1000px){main{grid-template-columns:260px 1fr}.diagnostic{grid-column:1/-1;border-top:1px solid var(--line);display:block}.count{float:left;margin-right:40px}.diagnostic>details{clear:both}.intro-number{display:none}.intro-note{font-size:18px}.section-heading>span{display:none}}@media(max-width:650px){header{padding:18px}.brand small,.local{display:none}.brand{font-size:12px;letter-spacing:1px}.brandmark{display:none}.header-actions{gap:5px}.header-actions button{padding:8px;font-size:10px}.intro{padding:25px 20px}.intro-note{display:none}h1{font-size:46px}.studies{padding:0}.studies button{padding:17px 12px;font-size:11px}main{display:flex;flex-direction:column}.drawing{order:-1;border-bottom:1px solid var(--line)}.vessel svg{max-height:450px}.controls{border-right:0}.section-heading{margin-bottom:18px}.map{padding:23px 12px}.map .section-heading{display:block}.course-row{gap:4px}.cells{gap:3px}.cell{width:38px}.row-label{width:55px}footer{padding:20px}.intro h1{letter-spacing:-2px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{header,.intro,.studies,.controls,.diagnostic,footer{display:none}main{display:block;border:0}.drawing{border:0}.course-grid{overflow:visible}.course-row{break-inside:avoid}.map{padding:0}.cell{-webkit-print-color-adjust:exact;print-color-adjust:exact}.notice{font-weight:700}}fieldset{border:1px solid var(--line);border-radius:5px;margin:12px 0;padding:12px}legend{font-size:10px;font-weight:700}fieldset label{font-size:10px}.storage-warning{background:#f0caa0;padding:15px 4%;font-size:12px;line-height:1.6}.storage-warning[hidden]{display:none}.cell{flex-shrink:0}
