@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8bcddb47c8219945-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/c0680f1bdb3a2e90-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.TydNlq_className{font-family:Outfit,Outfit Fallback;font-style:normal}
:root{--bg:#0b0b17;--panel:#ffffff0d;--border:#ffffff1a;--text:#eceaf7;--muted:#9a97b5;--accent:#935af6;--accent2:#38b9fa;--danger:#f36868}*{box-sizing:border-box;margin:0}html,body{min-height:100%}body{color:var(--text);background:radial-gradient(900px 500px at 10% -10%, #3c0f8a8c, transparent), radial-gradient(800px 500px at 100% 0%, #08639166, transparent), var(--bg);background-attachment:fixed}a{color:inherit;text-decoration:none}h1{font-size:1.6rem;font-weight:600}h2{font-size:1.05rem;font-weight:600}.muted{color:var(--muted)}.small{font-size:.8rem}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.glass{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:16px}.center{place-items:center;min-height:100vh;padding:24px;display:grid}.hero{text-align:center;justify-items:center;gap:16px;max-width:380px;padding:48px;display:grid}.logo{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:3rem}.page{gap:24px;max-width:960px;margin:0 auto;padding:32px 20px 64px;display:grid}.page.wide{max-width:1280px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.btn{font:inherit;color:var(--text);cursor:pointer;border:1px solid var(--border);background:var(--panel);border-radius:10px;padding:9px 16px;transition:transform .15s,background .15s,box-shadow .15s}.btn:hover{background:#ffffff1a;transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.primary{background:linear-gradient(135deg, var(--accent), var(--accent2));border:0;font-weight:600}.btn.primary:hover{box-shadow:0 6px 24px #813df573}.btn.big{padding:13px 26px;font-size:1rem}.btn.ghost{background:0 0}.btn.danger{color:var(--danger)}input,textarea,select{font:inherit;color:var(--text);border:1px solid var(--border);background:#0000004d;border-radius:10px;outline:none;width:100%;padding:9px 12px;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #935af640}select option{background:#1a1a2e}input[type=checkbox]{width:auto;accent-color:var(--accent)}.check{white-space:nowrap;color:var(--muted);align-items:center;gap:8px;display:flex}.newboard{flex-wrap:wrap;align-items:center;gap:14px;padding:16px;display:flex}.newboard input[name=name]{flex:1;min-width:200px}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.boardcard{gap:14px;padding:22px;transition:transform .2s,border-color .2s;display:grid}.boardcard:hover{border-color:var(--accent);transform:translateY(-4px)}.pill{text-transform:capitalize;border:1px solid var(--border);border-radius:99px;padding:3px 10px;font-size:.72rem}.pill.shared{color:#83d3fc;background:#0da6f22e}.pill.private{color:var(--muted);background:#ffffff12}.pill.p-low{color:#7de8b3;background:#2eb87333}.pill.p-medium{color:#fbcb6a;background:#f2a60d33}.pill.p-high{color:#fc9292;background:#ee2b2b38}.columns{grid-template-columns:repeat(3,minmax(260px,1fr));align-items:start;gap:18px;display:grid;overflow-x:auto}.column{background:var(--panel);border:1px solid var(--border);border-radius:16px;gap:12px;min-height:160px;padding:14px;transition:border-color .15s,background .15s;display:grid}.column.over{border-color:var(--accent);background:#8347eb1a}.count{color:var(--muted);margin-left:6px;font-weight:400}.cards{gap:10px;display:grid}.card{border:1px solid var(--border);cursor:grab;background:#ffffff12;border-radius:12px;gap:10px;padding:12px;transition:transform .15s,border-color .15s,box-shadow .15s;animation:.25s pop;display:grid}.card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px #00000059}.card:active{cursor:grabbing}.ctitle{font-weight:500}.meta{flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.due{color:var(--muted)}.due.today{color:#fbcb6a}.due.overdue{color:var(--danger)}.avatar{background:linear-gradient(135deg, var(--accent), var(--accent2));border-radius:50%;place-items:center;width:24px;height:24px;margin-left:auto;font-size:.75rem;font-weight:600;display:grid}.add{font:inherit;color:var(--muted);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:10px;padding:9px;transition:color .15s,border-color .15s}.add:hover{color:var(--text);border-color:var(--accent)}.backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;background:#05050ca6;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{background:#14142a;gap:14px;width:min(560px,100%);max-height:95vh;padding:24px;animation:.2s pop;display:grid;overflow-y:auto}.modal label{color:var(--muted);gap:6px;font-size:.82rem;display:grid}.three{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.actions{align-items:center;gap:10px;display:flex}.comments{border-top:1px solid var(--border);gap:10px;padding-top:12px;display:grid}.comments h3{font-size:.9rem}.comment{background:#ffffff0d;border-radius:10px;padding:8px 12px}.comment p{white-space:pre-wrap;margin-top:4px}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:720px){.three{grid-template-columns:1fr}input,textarea,select{padding:12px;font-size:16px}.btn{min-height:44px;padding:10px 16px}h1{font-size:1.3rem}.page{padding:16px 14px calc(48px + env(safe-area-inset-bottom));gap:16px}.topbar{gap:10px}.topbar>.row{justify-content:space-between;width:100%}.topbar>.row h1{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.hero{padding:36px 24px}.newboard{flex-direction:column;align-items:stretch}.newboard .btn{width:100%}.grid{grid-template-columns:1fr}.check{padding:6px 0}input[type=checkbox]{width:20px;height:20px}.columns{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;margin:0 -14px;padding:0 14px 8px;display:flex}.column{scroll-snap-align:center;flex:0 0 86%}.card{cursor:pointer;padding:14px}.meta{font-size:.85rem}.add{min-height:44px}.backdrop{align-items:end;padding:0}.modal{width:100%;max-height:92dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.25s sheet}.actions{bottom:calc(-20px - env(safe-area-inset-bottom));background:#14142a;padding:10px 0;position:sticky}.actions .btn{flex:1}}@keyframes sheet{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (hover:none){.card:hover,.boardcard:hover,.btn:hover{transform:none}}.colhead{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.total{color:#7de8b3;background:#2eb87326;border-radius:99px;padding:2px 8px;font-size:.8rem;font-weight:500}.budget{color:#86eab8}.two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.money{position:relative}.money span{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.money input{padding-left:26px}.money input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.money input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.money input[type=number]{appearance:textfield}@media (max-width:720px){.money input{padding-left:28px}}.segmented{grid-template-columns:1fr 1fr;gap:8px;display:grid}.seglabel{color:var(--muted);grid-column:1/-1;font-size:.82rem}.segmented button{font:inherit;color:var(--muted);cursor:pointer;border:1px solid var(--border);background:#0000004d;border-radius:10px;min-height:44px;padding:10px;transition:all .15s}.segmented button:hover{color:var(--text);border-color:var(--accent)}.segmented button.on{color:var(--text);border-color:var(--accent);background:#8347eb38;box-shadow:0 0 0 3px #935af633}.pill.by-diy{color:#db9efa;background:#a73cdd33}.pill.by-contractor{color:#fcb583;background:#f47b2533}
