@font-face{font-family:system;src:local('Avenir Next')}*{box-sizing:border-box}body{margin:0;background:#f7f8f4;color:#183e47;font-family:system,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;border-radius:12px;background:#174e5b;color:white;padding:12px 18px;font-weight:650}button:hover{filter:brightness(.94)}button:disabled{opacity:.55;cursor:wait}button.secondary{background:#eaf0ed;color:#214b55}button.ghost{background:transparent;color:#315660;border:1px solid #d5e0db}button.small{padding:8px 12px;font-size:13px;border-radius:9px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,5vw,46px);line-height:1.15;letter-spacing:-1.6px;font-weight:650}h2{font-size:23px;letter-spacing:-.6px}h3{font-size:17px;margin-bottom:7px}.muted{color:#677d81}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;text-transform:uppercase}.brand{font-size:21px;letter-spacing:4px;font-weight:800}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100dvh}.sidebar{padding:35px 24px;background:#eef2ec;border-right:1px solid #dce4dd;display:flex;flex-direction:column;gap:32px;position:sticky;top:0;height:100dvh}.sidebar nav{display:grid;gap:7px}.sidebar nav button{text-align:left;color:#42636a;background:transparent;font-size:14px}.sidebar nav button.active{background:#174e5b;color:white}.sidebar .bottom{margin-top:auto;font-size:13px}.sidebar .bottom strong{display:block}.main{width:100%;max-width:1210px;padding:35px 45px 60px;margin:auto}.topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:35px}.topline p{margin:0}.title-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 20px}.title-row h2{margin:0}.voyage{position:relative;overflow:hidden;background:#e1eff0;border-radius:24px;padding:32px 34px 0;isolation:isolate}.voyage header{display:flex;justify-content:space-between;gap:20px;position:relative;z-index:1}.voyage h2{font-size:30px;max-width:520px;margin:10px 0}.voyage p{max-width:470px}.progress-pill{background:#ffffffbd;border:1px solid white;border-radius:50%;height:84px;width:84px;display:grid;place-content:center;text-align:center;flex-shrink:0}.progress-pill b{font-size:24px}.progress-pill span{font-size:10px;text-transform:uppercase;letter-spacing:1px}.sea{height:135px;position:relative;margin:0 -34px;background:linear-gradient(0deg,#83bdc5 0%,#b8d9dc 62%,transparent 62%);overflow:hidden}.sea:before,.sea:after{content:'';position:absolute;border-radius:50%;height:90px;width:130%;left:-10%;background:#87bec7;top:85px;transform:rotate(-2deg)}.sea:after{background:#6aa9b7;top:115px;transform:rotate(2deg)}.boat{position:absolute;bottom:43px;left:calc(5% + var(--progress)*.73%);font-size:63px;z-index:3;transition:left 1s ease;filter:drop-shadow(0 7px 2px #32616c20)}.shore{position:absolute;bottom:0;right:-32px;width:145px;height:80px;background:#ecd8ab;border-radius:100% 0 0 0;z-index:2}.shore span{position:absolute;font-size:58px;top:-57px;right:36px}.sun{background:#f9dc91;border-radius:50%;width:45px;height:45px;position:absolute;top:7px;right:25%}.voyage.arrived{background:#e6efdf}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 32px}.stat{background:white;border:1px solid #e0e6df;border-radius:15px;padding:18px 20px}.stat b{font-size:27px;display:block}.stat span{font-size:12px;color:#678086}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}.filters button{background:transparent;color:#61777a;padding:8px 14px;font-size:13px}.filters button.active{background:#e3ebe5;color:#174e5b}.task-list{display:grid;gap:12px}.task{border:1px solid #dfe5df;background:#fff;border-radius:16px;padding:20px;display:flex;align-items:flex-start;gap:15px}.task.done{background:#f1f6ef}.check{border:1.5px solid #c4d4d0;border-radius:50%;width:30px;height:30px;min-width:30px;padding:0;background:white;color:#316c61;margin-top:3px;font-size:18px}.task.done .check{background:#387c69;color:white;border-color:#387c69}.task-body{flex:1;min-width:0}.task h3{overflow-wrap:anywhere}.task p{font-size:14px;color:#637a7d;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 10px}.meta{display:flex;gap:9px;flex-wrap:wrap;align-items:center;font-size:12px;color:#677d81}.tag{background:#edf2f1;color:#466670;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:650}.tag.ec{background:#eee9f3;color:#6e5587}.tag.overdue{background:#fff0e6;color:#98502a}.tag.done{background:#e3efe3;color:#3b7054}.task-actions{display:flex;gap:6px}.empty{padding:48px 20px;border:1px dashed #cad9d0;border-radius:18px;text-align:center;background:#f0f5ed}.empty .emoji{font-size:45px}.empty p{margin-bottom:0;color:#698078}.welcome{max-width:440px;margin:6vh auto;padding:30px 25px}.welcome .brand{margin-bottom:45px}.welcome .login-card{background:white;border:1px solid #dce5df;border-radius:22px;padding:25px;margin:25px 0}.welcome h1{font-size:42px}.welcome .mini-sea{text-align:center;font-size:55px;background:#e2f0ed;border-radius:18px;margin-bottom:22px;padding:15px}label{display:grid;gap:6px;font-size:13px;font-weight:650;margin:13px 0;color:#3c5d65}input,select,textarea{width:100%;border:1px solid #cad7d2;border-radius:10px;padding:11px 12px;color:#204650;background:#fff;min-height:45px}textarea{resize:vertical}.full{width:100%;margin-top:15px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkbox-label{display:flex;align-items:center;gap:9px}.checkbox-label input{width:18px;min-height:18px;height:18px}dialog{width:calc(100% - 28px);max-width:570px;border:1px solid #d9e4df;border-radius:24px;padding:28px;box-shadow:0 25px 100px #123f4a33;max-height:90dvh;color:#183e47}dialog::backdrop{background:#173c4f66;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dialog-head h2{margin:0}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.notice{padding:16px;border-radius:12px;background:#fff4db;color:#745f31;font-size:14px;margin:15px 0}.error{color:#a53535;font-size:14px;white-space:pre-wrap}.timeline{border-left:2px solid #d6e2da;margin:20px 0 0 6px;padding-left:20px}.event{position:relative;margin-bottom:26px;font-size:13px}.event:before{content:'';width:10px;height:10px;background:#6d9987;border-radius:50%;position:absolute;left:-26px;top:6px}.event p{margin:4px 0}.event details{margin-top:8px}.crew-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.crew-card{padding:24px;background:white;border:1px solid #dfe6df;border-radius:18px}.avatar{width:45px;height:45px;background:#e5ede4;color:#3d6958;border-radius:50%;display:grid;place-items:center;font-size:16px;font-weight:700;margin-bottom:15px}.crew-card .actions{justify-content:flex-start;flex-wrap:wrap}.bar{height:7px;background:#e8eee9;border-radius:10px;overflow:hidden;margin:12px 0}.bar i{display:block;height:100%;background:#79a98c;width:var(--progress)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;background:#173e46;color:white;box-shadow:0 8px 40px #0d29352a;border-radius:14px;padding:13px 22px;max-width:90vw;display:none}#toast.show{display:block}.help{max-width:700px}.help section{background:white;border:1px solid #dfe6df;padding:24px;border-radius:18px;margin:18px 0}.help ol{padding-left:22px}.help li{margin:10px 0}.offline{background:#fff0dc;padding:10px 15px;font-size:13px;border-radius:10px;margin-bottom:15px}footer{font-size:12px;color:#758888;margin-top:35px}.search{max-width:330px;margin-bottom:15px}.loading{opacity:.6;pointer-events:none}@media(max-width:850px){.shell{display:block}.sidebar{height:auto;position:relative;padding:20px;gap:15px;border-right:0;border-bottom:1px solid #dce4dd}.sidebar .brand{font-size:19px}.sidebar nav{display:flex;overflow:auto;gap:4px}.sidebar nav button{white-space:nowrap;padding:9px 12px;font-size:13px}.sidebar .bottom{display:flex;gap:12px;align-items:center;font-size:12px}.sidebar .bottom strong{display:inline}.sidebar .bottom button{margin-left:auto}.main{padding:24px 20px 45px}.topline{margin-bottom:20px}.voyage{padding:24px 22px 0}.voyage h2{font-size:25px}.voyage .sea{margin:0 -22px}.progress-pill{height:68px;width:68px}.progress-pill b{font-size:20px}.stats{gap:9px}.stat{padding:14px}.task{padding:16px;gap:10px}.task-actions{flex-direction:column}.task-actions button{font-size:11px;padding:7px 9px}.row{grid-template-columns:1fr}.topline .eyebrow{font-size:10px}.title-row{gap:10px}.title-row h2{font-size:22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.check:disabled{cursor:default;opacity:.65}.sidebar .bottom strong{margin-right:6px}@media(max-width:600px){.sidebar{padding:15px 18px;gap:12px}.sidebar .eyebrow{display:none}.sidebar nav{scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.main{padding-top:12px}.topline{justify-content:flex-end;margin-bottom:12px}.topline .eyebrow{display:none}.voyage{padding:20px 20px 0}.voyage h2{font-size:24px}.voyage p{font-size:14px;margin-bottom:8px}.sea{height:108px}.boat{font-size:54px;bottom:32px}.sun{width:35px;height:35px;top:15px}.progress-pill{width:60px;height:60px}.stats{margin:14px 0 20px}.stat{padding:11px}.stat b{font-size:24px}.stat span{font-size:11px}.task h3{font-size:16px}.task-actions button{min-height:36px}}
