:root{--bg:#f5f5ef;--ink:#202b24;--muted:#6c746c;--line:#dfe3d9;--gold:#e5b94e;--green:#225e42;--red:#a7412e;--white:#fff;--radius:20px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;border-radius:12px;padding:12px 16px;background:#e8ece4;color:var(--ink);font-weight:650;min-height:46px}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #3c7959;outline-offset:3px}a{color:inherit}h1{font-size:clamp(30px,6vw,43px);line-height:1.14;letter-spacing:-1.4px;margin:12px 0 16px}h2{font-size:21px;line-height:1.3;margin:0 0 16px;letter-spacing:-.4px}h3{margin:8px 0;font-size:18px;line-height:1.35}p{margin:8px 0 16px}.header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:auto;padding:16px 22px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-size:19px;font-weight:750;letter-spacing:-.5px}.brand b{font-weight:450}.brand small{display:block;font-size:9px;letter-spacing:1.7px;color:var(--muted);margin-top:2px}.brandmark{width:44px;height:46px;background:var(--ink);border-radius:12px;color:#f1cb6d;display:flex;align-items:center;justify-content:center;font-size:27px;position:relative}.brandmark span{font-size:19px;position:absolute;right:5px;bottom:1px;color:white}.avatar{background:#e6bd59;border-radius:50%;width:44px;padding:0}main{max-width:1080px;margin:0 auto;padding:28px 20px 115px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:var(--green)}.muted,.hint{color:var(--muted)}.hint{font-size:13px}.hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.hero p{max-width:450px}.primary{background:var(--ink);color:white;padding:15px 20px}.gold{background:var(--gold);color:var(--ink)}.secondary{background:white;border:1px solid var(--line)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 28px}.stat{padding:18px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.stat strong{display:block;font-size:34px;line-height:1.2;letter-spacing:-1px}.stat span{font-size:12px;color:var(--muted)}.stat:first-child{background:var(--ink);color:white;border:0}.stat:first-child span{color:#c6d2c6}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}.section-head h2{margin:0}.pill{display:inline-block;padding:4px 9px;font-size:11px;border-radius:30px;font-weight:750;background:#e8eee7;color:var(--green)}.pill.warn{background:#fff0d0;color:#87580e}.pill.red{background:#fbe7de;color:var(--red)}.pill.blue{background:#e6eef9;color:#355986}.pill.purple{background:#efe8f9;color:#76529c}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel,.pack{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:21px;margin-bottom:16px}.pack{margin:0;border-top:4px solid #dac27c}.pack-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.count{font-size:38px;font-weight:760;letter-spacing:-1px;line-height:1.25;margin-top:15px}.count small{font-size:13px;font-weight:450;letter-spacing:0;color:var(--muted)}.people{border-top:1px solid var(--line);margin:16px 0;padding-top:12px;display:flex;gap:8px;flex-wrap:wrap}.person-chip{font-size:12px;color:var(--muted);background:#f3f5ef;padding:5px 8px;border-radius:7px}.person-chip b{color:var(--ink);margin-left:6px}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button{font-size:13px;padding:8px 12px}.actions .grow{flex:1}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 20px}.filters input{flex:2;min-width:170px}.filters select{flex:1;min-width:145px}.empty{padding:35px 22px;text-align:center;background:white;border:1px dashed #c9d2c4;border-radius:var(--radius);color:var(--muted)}.empty h2{color:var(--ink)}.activity{display:flex;gap:13px;padding:17px 0;border-bottom:1px solid var(--line)}.activity:last-child{border:0}.activity strong{display:block}.activity p{font-size:13px;margin:3px 0;color:var(--muted)}.activity .delta{font-size:19px;font-weight:800;color:var(--green);min-width:48px}.activity .delta.negative{color:var(--red)}.notice{border:1px solid #ead095;background:#fff5dd;border-radius:14px;padding:16px;margin:16px 0;font-size:14px}.notice strong{display:block}.sync{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);margin-top:12px}.sync::before{content:'';width:7px;height:7px;background:#599c69;border-radius:50%}.sync.off::before{background:#c35d42}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,740px);display:flex;background:#fffef9f5;border:1px solid var(--line);border-radius:22px 22px 0 0;padding:8px 9px calc(8px + env(safe-area-inset-bottom));z-index:5;box-shadow:0 -6px 30px #1b352208;backdrop-filter:blur(12px)}nav button{flex:1;font-size:11px;padding:9px 3px;background:transparent;border-radius:12px;font-weight:550}nav button span{font-size:20px;display:block;line-height:24px;margin-bottom:3px}nav button.selected{background:#ecf0e6;color:var(--green);font-weight:750}label{display:block;font-size:13px;font-weight:650;margin:13px 0}input,select,textarea{display:block;width:100%;border:1px solid #cdd5c8;border-radius:11px;padding:12px;background:white;color:var(--ink);min-height:48px;margin-top:5px}textarea{min-height:82px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #8cac88;outline-offset:1px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}dialog{border:0;border-radius:24px;padding:24px;width:calc(100% - 24px);max-width:500px;max-height:90dvh;box-shadow:0 25px 100px #0003;color:var(--ink);background:#fafbf6}dialog::backdrop{background:#17231cb0;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.dialog-head h2{margin:0}.iconbutton{font-size:26px;padding:0;width:42px;background:transparent}#save{width:100%;margin-top:12px}.error{color:var(--red);font-size:14px}.error:empty{display:none}#toast{position:fixed;left:50%;bottom:100px;transform:translateX(-50%);padding:14px 22px;background:var(--ink);color:white;border-radius:14px;z-index:20;width:max-content;max-width:90%;box-shadow:0 5px 25px #0002}.login{max-width:430px;margin:30px auto}.login h1{font-size:37px}.login .primary{width:100%}.setup{max-width:580px;padding-top:40px}.setup>.primary,.setup form>.primary{width:100%}.task{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.task .actions{margin-top:10px}.team-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.team-row .avatar{display:grid;place-items:center;flex-shrink:0}.team-name{flex:1;min-width:0}.team-name strong{overflow-wrap:anywhere}.team-name small{display:block;color:var(--muted)}.pack h3,.activity strong,.task strong{overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:600px){.cards{grid-template-columns:1fr}.hero{display:block}.hero>.primary{width:100%}.stats{gap:8px}.stat{padding:15px 12px}.stat strong{font-size:29px}main{padding-top:24px}.hero h1{max-width:300px}.row{gap:8px}.team-row{flex-wrap:wrap}.team-row .actions{width:100%}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,transform .15s}button:active{transform:scale(.98)}}
