:root{--bg:#f4f2ec;--surface:#fffdf8;--ink:#1c1b18;--muted:#6d6a61;--line:#dfdbd0;--press:#ebe8df;--primary:#1c1b18;--on-primary:#f4f2ec;--late:#c23a17;--late-bg:#fbe6df;--now:#8a5a00;--now-bg:#f8ecc9;--flag-bg:#f8ecc9;--flag-ink:#5e4100;--todo:#8d897d;--talks:#2563b0;--deal:#c07a00;--live:#1f8a4c;--parked:#b9b4a6;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#161513;--surface:#211f1c;--ink:#f0ede5;--muted:#a09c91;--line:#35322d;--press:#2c2a26;--primary:#f0ede5;--on-primary:#161513;--late:#ff8a66;--late-bg:#47210f;--now:#eebd55;--now-bg:#3f3110;--flag-bg:#3f3110;--flag-ink:#f3d693;--todo:#8f8b80;--talks:#6aa5ec;--deal:#e7a93a;--live:#4cc47f;--parked:#5d5a52}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);overscroll-behavior-y:none;font:16px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}h1,h2,p{margin:0}code{font-size:.9em}.app{--tabbar:calc(60px + var(--safe-bottom));background:var(--bg);max-width:560px;height:100%;margin:0 auto;position:relative;overflow:hidden}.tab{height:100%}.screen{height:100%;padding:var(--safe-top) 0 calc(var(--tabbar) + 16px);-webkit-overflow-scrolling:touch;overflow-y:auto}.top{justify-content:space-between;align-items:baseline;padding:16px 16px 12px;display:flex}.top h1{letter-spacing:-.02em;font-size:26px;font-weight:750}.top-note{color:var(--muted);font-size:14px}.tabbar{height:var(--tabbar);padding-bottom:var(--safe-bottom);background:var(--surface);border-top:1px solid var(--line);z-index:5;grid-template-columns:repeat(5,1fr);display:grid;position:absolute;bottom:0;left:0;right:0}.tabbtn{color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:600;display:flex}.tabbtn.on{color:var(--ink)}.tabicon{display:inline-flex;position:relative}.tabbtn-add .tabicon{background:var(--primary);width:46px;height:46px;color:var(--on-primary);border-radius:12px;justify-content:center;align-items:center}.badge{background:var(--late);color:#fff;text-align:center;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-6px;left:14px}@media (prefers-color-scheme:dark){.badge{color:#161513}}.tiles{background:var(--line);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:1px;margin:0 16px;display:grid;overflow:hidden}.tile{background:var(--surface);border:0;flex-direction:column;align-items:center;gap:1px;min-height:64px;padding:12px 2px;display:flex}.tile:active{background:var(--press)}.tile-num{font-variant-numeric:tabular-nums;font-size:24px;font-weight:750;line-height:1.1}.tile-label{color:var(--muted);font-size:12px}.stage-text-todo{color:var(--ink)}.stage-text-talks{color:var(--talks)}.stage-text-deal{color:var(--deal)}.stage-text-live{color:var(--live)}.section{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:20px 16px 8px;font-size:13px;font-weight:700}.section .count{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:4px}.empty{color:var(--muted);text-align:center;padding:24px 16px}.list{background:var(--surface);border-block:1px solid var(--line)}.row{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:12px;width:100%;min-height:60px;padding:9px 14px 9px 16px;display:flex}.list>:last-child{border-bottom:0}.row:active,.log:active,.row-more:active{background:var(--press)}.row-main{flex-direction:column;flex:1;min-width:0;display:flex}.row-name{white-space:nowrap;text-overflow:ellipsis;font-weight:620;overflow:hidden}.row-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.row-side{flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.row-num{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.row-more{background:0 0;border:0;width:100%;min-height:48px;font-weight:620}.dot{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.stage-todo{background:var(--todo)}.stage-talks{background:var(--talks)}.stage-deal{background:var(--deal)}.stage-live{background:var(--live)}.stage-parked{background:var(--parked)}.due{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:5px;padding:2px 7px;font-size:12px;font-weight:700}.due-overdue{background:var(--late-bg);color:var(--late)}.due-today{background:var(--now-bg);color:var(--now)}.due-upcoming{background:var(--press);color:var(--muted)}.muted{color:var(--muted);font-size:14px}.sticky{z-index:2;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 0 10px;position:sticky;top:0}.search{background:var(--surface);border:1px solid var(--line);height:46px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;margin:0 16px;padding:0 12px;display:flex}.search input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.search:focus-within{border-color:var(--ink)}.search input:focus-visible{outline:none}.chips{scrollbar-width:none;gap:6px;padding:10px 16px 0;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips-wrap{flex-wrap:wrap;padding:0;overflow:visible}.chip{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:8px;flex:none;min-height:38px;padding:0 12px;font-size:14px;font-weight:580}.chip:active{background:var(--press)}.chip.on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.chip-num{opacity:.6;font-variant-numeric:tabular-nums;margin-left:2px}.chip-date{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:38px;padding:0 8px;font-size:14px}.selects{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px 16px 0;display:grid}select{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;min-width:0;height:40px;padding:0 8px;font-size:14px}@supports (-webkit-touch-callout:none){select,.chip-date{font-size:16px}}.overlay{z-index:10;background:var(--bg);flex-direction:column;display:flex;position:absolute;inset:0}.bar{padding:calc(var(--safe-top) + 4px) 6px 4px;flex:none;justify-content:space-between;align-items:center;display:flex}.iconbtn{background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.iconbtn:active{background:var(--press)}.overlay-body{flex:1;padding-bottom:20px;overflow-y:auto}.footer-action{padding:10px 16px calc(10px + var(--safe-bottom));background:var(--surface);border-top:1px solid var(--line);flex:none}.d-name{letter-spacing:-.02em;overflow-wrap:anywhere;padding:0 16px;font-size:26px;font-weight:750;line-height:1.15}.d-sub{color:var(--muted);padding:4px 16px 0;font-size:14px}.flag{background:var(--flag-bg);color:var(--flag-ink);border-radius:10px;flex-direction:column;align-items:flex-start;gap:8px;margin:12px 16px 0;padding:10px 12px;font-size:14px;display:flex}.acts{grid-template-columns:repeat(4,1fr);gap:8px;padding:14px 16px 0;display:grid}.act{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:62px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.act:active{background:var(--press)}.act-off{color:var(--muted);opacity:.45}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:12px 16px 0}.panel-row{justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.panel-row+.panel-row{border-top:1px solid var(--line)}.panel-col{flex-direction:column;align-items:stretch}.panel-line{justify-content:space-between;align-items:center;display:flex}.panel-label{flex:none;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.panel-row select{flex:1;width:auto;max-width:62%;margin-left:auto;font-weight:600}.infos{background:var(--surface);border-block:1px solid var(--line);margin:16px 0 0}.info{border-bottom:1px solid var(--line);gap:12px;padding:10px 16px;font-size:15px;display:flex}.info:last-child{border-bottom:0}.info dt{width:96px;color:var(--muted);flex:none;font-size:14px}.info dd{overflow-wrap:anywhere;flex:1;min-width:0;margin:0}.phone-link{display:block}.notes{white-space:pre-wrap;overflow-wrap:anywhere;padding:0 16px;font-size:15px}.log{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;flex-direction:column;gap:1px;width:100%;padding:10px 16px;font-size:14px;display:flex}.log-note{white-space:pre-wrap;overflow-wrap:anywhere}.log-what{font-weight:560}.log-meta{color:var(--muted);font-size:12px}.old{color:var(--muted);padding:16px;font-size:13px}.old summary{cursor:pointer;min-height:32px;font-weight:600}.old p{overflow-wrap:anywhere;margin-top:6px}.sheet-wrap{z-index:20;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.sheet-backdrop{background:#00000073;border:0;position:absolute;inset:0}.sheet{background:var(--bg);max-height:92%;padding:8px 16px calc(14px + var(--safe-bottom));border-radius:16px 16px 0 0;flex-direction:column;gap:6px;display:flex;position:relative;overflow-y:auto}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head h2{font-size:20px;font-weight:720}.sheet-save{margin-top:10px}.label{color:var(--muted);margin:8px 0 4px;font-size:13px;font-weight:620;display:block}input:not([type=search]):not(.chip-date),textarea{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;padding:10px 12px;font-size:16px}.form select,.sheet select{height:46px;font-size:16px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:-1px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}textarea{resize:vertical}.form{flex-direction:column;gap:4px;padding-inline:16px;display:flex}.form .form{padding:0}.form details{margin-top:10px}.form summary{cursor:pointer;padding:9px 0;font-weight:620}.grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.warn{color:var(--late);font-size:14px}.linklike{color:inherit;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.btn{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-height:46px;padding:0 16px;font-weight:650}.btn:active{background:var(--press)}.btn:disabled{opacity:.5}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);min-height:50px}.btn-primary:active{background:var(--primary);opacity:.85}.btn-danger{color:var(--late);margin-top:16px}.btn-block{width:100%}.btn-small{min-height:36px;color:var(--ink);padding:0 12px;font-size:14px}.stack{flex-direction:column;gap:10px;padding:0 16px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:8px;padding:14px;font-size:15px;display:flex}.card h2{font-size:16px;font-weight:700}.hint{color:var(--muted);font-size:14px}.rules{margin:0}.rules div{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 0;font-size:14px;display:flex}.rules dd{color:var(--muted);margin:0}.gate{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;max-width:360px;height:100%;margin:0 auto;padding:24px;display:flex}.gate-logo{border-radius:16px;width:72px;height:72px}.gate h1{letter-spacing:-.02em;font-size:26px;font-weight:750}.gate p{color:var(--muted);overflow-wrap:anywhere;margin-bottom:8px}.gate strong{color:var(--ink)}.error{font-size:14px;color:var(--late)!important}.toast{left:50%;bottom:calc(76px + var(--safe-bottom));z-index:30;background:var(--primary);width:max-content;max-width:calc(100vw - 32px);color:var(--on-primary);border-radius:10px;padding:10px 14px;font-size:14px;font-weight:600;position:fixed;transform:translate(-50%)}.toast-error{background:var(--late);color:#fff}
