@charset "UTF-8";:root{--brand: #5B3E8C;--brand-strong: #4A3175;--brand-on: #FFFFFF;--brand-wash: #EFEAF8;--header-bg: #1C1A23;--header-ink: #F5F4F8;--header-dim: rgba(245, 244, 248, .72);--header-hover: rgba(245, 244, 248, .09);--brand-on-dark: #8B6FD1;--header-line: #16141B;--header-avatar: #3D3356;--header-line: #100E15;--header-avatar: #3B3254;--header-avatar-ink: #16141B;--paper: #F5F4F8;--surface: #FFFFFF;--raise: #FAF9FC;--line: #DEDBE6;--ink: #1C1A23;--ink-soft: #5A5566;--ink-faint: #8A8595;--st-late: #C42B1C;--st-today: #B45309;--st-wait: #1D5FA8;--st-done: #1D6B47;--st-late-wash: #FBE9E7;--st-today-wash: #FBEEDF;--st-wait-wash: #E4EDF9;--st-done-wash: #E2EEE7;--font: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace;--radius: 6px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--brand: #8B6FD1;--brand-strong: #A98CE6;--brand-on: #16141B;--brand-wash: #2A2338;--header-bg: #1F1C26;--header-ink: #EDEBF2;--header-dim: rgba(237, 235, 242, .72);--header-hover: rgba(237, 235, 242, .09);--brand-on-dark: #8B6FD1;--header-line: #16141B;--header-avatar: #3D3356;--header-avatar-ink: #16141B;--paper: #16141B;--surface: #1F1C26;--raise: #262230;--line: #322D3D;--ink: #EDEBF2;--ink-soft: #A5A0AF;--ink-faint: #7B7589;--st-late: #FF6B5A;--st-today: #F0A020;--st-wait: #6BA8F0;--st-done: #4FBF8B;--st-late-wash: #3A1F1B;--st-today-wash: #3A2418;--st-wait-wash: #1B2A3F;--st-done-wash: #16301F}}:root[data-theme=dark]{--brand: #8B6FD1;--brand-strong: #A98CE6;--brand-on: #16141B;--brand-wash: #2A2338;--header-bg: #1F1C26;--header-ink: #EDEBF2;--header-dim: rgba(237, 235, 242, .72);--header-hover: rgba(237, 235, 242, .09);--brand-on-dark: #8B6FD1;--paper: #16141B;--surface: #1F1C26;--raise: #262230;--line: #322D3D;--ink: #EDEBF2;--ink-soft: #A5A0AF;--ink-faint: #7B7589;--st-late: #FF6B5A;--st-today: #F0A020;--st-wait: #6BA8F0;--st-done: #4FBF8B;--st-late-wash: #3A1F1B;--st-today-wash: #3A2418;--st-wait-wash: #1B2A3F;--st-done-wash: #16301F}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--brand)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.nav{background:var(--header-bg);color:var(--header-ink);border-bottom:1px solid var(--header-line)}.nav__row{display:flex;align-items:center;gap:1.1rem;padding:.45rem .9rem}.nav__brand{display:flex;align-items:center;gap:.45rem;font-weight:700;letter-spacing:-.025em;font-size:1.08rem;color:var(--header-ink);text-decoration:none;flex:none}.nav__brand .mark{color:var(--brand-on-dark)}.nav__links{display:flex;gap:.1rem}.nav__link{position:relative;color:var(--header-dim);text-decoration:none;white-space:nowrap;padding:.45rem .65rem calc(.45rem + 3px);border-radius:4px 4px 0 0;font-size:.94rem}.nav__link:hover{color:var(--header-ink);background:var(--header-hover)}.nav__link--active{color:var(--header-ink);background:transparent}.nav__link--active:after{content:"";position:absolute;left:.65rem;right:.65rem;bottom:0;height:3px;border-radius:2px;background:var(--brand-on-dark)}.nav__today{margin-left:auto;font-size:.82rem;color:var(--header-dim);white-space:nowrap}.nav__user{display:flex;align-items:center;gap:.3rem}.nav__user-link{display:flex;align-items:center;gap:.45rem;padding:.25rem .4rem;border-radius:6px;text-decoration:none;color:var(--header-dim)}.nav__user-link:hover{background:var(--header-hover);color:var(--header-ink)}.nav__user-link--active .nav__avatar{background:var(--brand-on-dark);color:var(--header-avatar-ink)}.nav__avatar{width:28px;height:28px;border-radius:50%;background:var(--header-avatar);color:var(--header-ink);font-size:.68rem;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;flex:none}.nav__username{font-size:.82rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav__role{font-family:var(--mono);font-size:.62rem;padding:.05rem .3rem;border-radius:3px;background:var(--header-hover)}.nav__logout,.nav__hamburger{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;background:transparent;color:var(--header-dim);border-radius:6px;cursor:pointer;flex:none}.nav__logout:hover,.nav__hamburger:hover{background:var(--header-hover);color:var(--header-ink)}.nav__hamburger{display:none;margin-left:auto}.nav__drawer{display:flex;flex-direction:column;gap:.1rem;padding:.4rem .9rem .9rem;border-top:1px solid var(--header-line)}.nav__drawer .nav__link{padding:.55rem .7rem;border-radius:4px}.nav__drawer .nav__link--active:after{left:.7rem;right:.7rem;bottom:.15rem}.nav__drawer-user{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--header-line)}.nav__drawer-user .link{color:var(--header-dim)}@media (max-width: 980px){.nav__today{display:none}.nav__links{margin-left:auto}}@media (max-width: 860px){.nav__username,.nav__role{display:none}.nav__link{padding:.45rem .45rem calc(.45rem + 3px)}.nav__link--active:after{left:.45rem;right:.45rem}}@media (max-width: 768px){.nav__links,.nav__user{display:none}.nav__hamburger{display:flex}}.warning-banner{background:var(--st-today-wash);color:var(--st-today);border-bottom:1px solid var(--line);padding:.4rem 1.1rem;font-size:.84rem;font-weight:600}main{padding:1.3rem 1.1rem 4rem;max-width:1200px}@media (max-width: 720px){main{padding:1rem .7rem 3rem}}h1{font-size:1.5rem;letter-spacing:-.02em;margin:0 0 1.2rem}.buckets{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 980px){.buckets{grid-template-columns:1fr 1fr}}.bucket{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.bucket header{display:flex;align-items:baseline;gap:.5rem;padding:.6rem .85rem .45rem}.bucket header h2{margin:0;font-family:var(--mono);font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-faint);font-weight:500}.bucket header .n{margin-left:auto;font-family:var(--mono);font-size:.72rem;color:var(--ink-faint)}.bucket.is-priority{border-color:var(--brand)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}tbody tr{border-top:1px solid var(--line)}tbody tr:hover{background:var(--brand-wash)}td{padding:.38rem .85rem;vertical-align:middle}td.customer{font-weight:600}td.what{color:var(--ink-soft)}td.when{text-align:right;font-family:var(--mono);font-size:.78rem;white-space:nowrap}.late{color:var(--st-late)}.today-c{color:var(--st-today)}.wait{color:var(--st-wait)}.chip{display:inline-block;font-family:var(--mono);font-size:.68rem;padding:.08rem .4rem;border-radius:3px;letter-spacing:.03em}.chip.wait{background:var(--st-wait-wash);color:var(--st-wait)}.chip.amber{background:var(--st-today-wash);color:var(--st-today)}.chip.red{background:var(--st-late-wash);color:var(--st-late)}.chip.task{background:var(--raise);color:var(--ink-faint)}.empty{padding:.8rem .85rem 1rem;color:var(--ink-faint);font-size:.88rem}.toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}input[type=search],select{font:inherit;font-size:.92rem;padding:.35rem .6rem;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink)}input[type=search]{min-width:260px}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.table-wrap .list{border:0;border-radius:0;min-width:620px}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.list thead th{text-align:left;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;padding:.5rem .85rem;background:var(--raise)}.count{color:var(--ink-faint);font-size:.85rem;margin:.6rem 0 0}.gate{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.gate .card{width:min(380px,100%);display:flex;flex-direction:column;gap:.8rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem 1.5rem}.gate .card .brand{display:flex;align-items:center;gap:.45rem;margin:0 0 .4rem;font-size:1.5rem;font-weight:700;letter-spacing:-.03em}.gate .card .brand .mark{color:var(--brand)}.gate .card h2{margin:0;font-size:1.05rem}.gate .card .hint{margin:0;color:var(--ink-soft);font-size:.88rem}.gate .card label{display:flex;flex-direction:column;gap:.25rem;font-size:.88rem;color:var(--ink-soft)}.gate .card small{color:var(--ink-faint);font-size:.78rem}.gate .card input{font:inherit;padding:.45rem .6rem;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}.gate .card button[type=submit]{font:inherit;font-weight:600;padding:.5rem;border:0;border-radius:4px;background:var(--brand);color:var(--brand-on);cursor:pointer}.gate .card button[type=submit]:hover:not(:disabled){background:var(--brand-strong)}.gate .card button[type=submit]:disabled{opacity:.6;cursor:default}.error{color:var(--st-late);background:var(--st-late-wash);border-radius:4px;padding:.45rem .6rem;margin:0;font-size:.88rem}button.link{font:inherit;font-size:.84rem;background:none;border:0;color:inherit;opacity:.75;cursor:pointer;padding:.2rem .35rem}button.link:hover{opacity:1;text-decoration:underline}button.link.danger{color:var(--st-late);opacity:1}h2.sub{font-size:1.05rem;margin:1.8rem 0 .6rem}.crumb{margin:0 0 .3rem;font-size:.86rem}.crumb a{text-decoration:none}.subhead{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem;margin:-.7rem 0 1.2rem;color:var(--ink-soft);font-size:.86rem}.subhead .sep{font-family:var(--mono);font-size:.78rem;color:var(--ink-faint)}.panels{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 900px){.panels{grid-template-columns:1.1fr .9fr}}.wide-panel{margin-top:1rem}.bucket header button.link{margin-left:auto;color:var(--brand);opacity:1}.fields{display:grid;grid-template-columns:1fr;gap:.7rem 1rem;margin:0;padding:.8rem .85rem 1rem}@media (min-width: 620px){.fields{grid-template-columns:1fr 1fr}}.fields>div{min-width:0}.fields .wide{grid-column:1/-1}.fields dt{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.fields dd{margin:.1rem 0 0}.fields label{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem;color:var(--ink-soft)}.fields input,.fields select,.fields textarea{font:inherit;font-size:.92rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);width:100%}.fields textarea{resize:vertical}.fields .check{flex-direction:row;align-items:center;gap:.45rem;color:var(--ink);font-size:.92rem}.fields .check input{width:auto}.fields .hint{margin:.2rem 0 0;font-size:.82rem;color:var(--ink-faint);max-width:60ch}.fields .next{border-top:1px dashed var(--line);padding-top:.7rem}.fields .actions{display:flex;align-items:center;gap:.6rem}.fields button[type=submit]{font:inherit;font-weight:600;font-size:.92rem;padding:.4rem .9rem;border:0;border-radius:4px;background:var(--brand);color:var(--brand-on);cursor:pointer}.fields button[type=submit]:hover:not(:disabled){background:var(--brand-strong)}.fields button[type=submit]:disabled{opacity:.6;cursor:default}td.what em{color:var(--ink-faint);font-style:italic}.inline dd.inline__value{border-radius:3px;padding:.1rem .25rem;margin:.1rem 0 0 -.25rem}.inline__value--editable{cursor:text;border-bottom:1px dashed transparent}.inline__value--editable:hover{background:var(--brand-wash);border-bottom-color:var(--line)}.inline__empty{color:var(--ink-faint);font-style:italic}.inline__edit{margin:.1rem 0 0}.inline__edit input,.inline__edit select,.inline__edit textarea{font:inherit;font-size:.92rem;padding:.25rem .4rem;border:1px solid var(--brand);border-radius:4px;background:var(--surface);color:var(--ink);width:100%}.inline__edit input:focus,.inline__edit input:focus-visible,.inline__edit select:focus,.inline__edit select:focus-visible,.inline__edit textarea:focus,.inline__edit textarea:focus-visible{outline:none}.ok{color:var(--st-done);background:var(--st-done-wash);border-radius:4px;padding:.45rem .6rem;margin:0;font-size:.88rem}.perms{margin:0;padding:.6rem .85rem .2rem 1.9rem;font-size:.92rem;color:var(--ink-soft)}.perms li{margin:.15rem 0}.fields.contact{border-top:1px solid var(--line);padding-top:.7rem}.fields.contact:first-of-type{border-top:0}.bucket header .n{text-transform:none;letter-spacing:0}tr.row-link{cursor:pointer}a.plain{color:inherit;text-decoration:none}.subnav{display:flex;gap:.2rem;margin:-.6rem 0 1.1rem;border-bottom:1px solid var(--line)}.subnav a{position:relative;padding:.4rem .7rem calc(.4rem + 3px);color:var(--ink-soft);text-decoration:none;font-size:.94rem}.subnav a:hover,.subnav a.subnav--active{color:var(--ink)}.subnav a.subnav--active:after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:-1px;height:3px;border-radius:2px;background:var(--brand)}.scopes{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.scopes__row{display:grid;grid-template-columns:1fr;gap:.1rem .9rem;padding:.55rem .8rem;border-top:1px solid var(--line)}.scopes__row:first-child{border-top:0}@media (min-width: 620px){.scopes__row{grid-template-columns:minmax(0,20rem) 1fr;align-items:baseline}}.scopes__row--pick{cursor:pointer}.scopes__row--pick:hover{background:var(--brand-wash)}.scopes__pick{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .9rem}.scopes__pick b{font-size:.92rem;min-width:6.5rem}.scopes__pick label{display:flex;align-items:center;gap:.3rem;font-size:.86rem;color:var(--ink-soft)}.scopes__pick input{accent-color:var(--brand)}.scopes__ro{font-size:.78rem;color:var(--ink-faint);font-style:italic}.scopes__what{margin:0;font-size:.86rem;color:var(--ink-soft)}.token-once{margin:.2rem .85rem .9rem;padding:.7rem .85rem;border:1px solid var(--brand);border-radius:var(--radius);background:var(--brand-wash)}.token-once p{margin:0 0 .4rem;font-size:.88rem}.token-once code{display:block;font-family:var(--mono);font-size:.82rem;word-break:break-all;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:.4rem .5rem}.token-once .link{color:var(--brand);opacity:1;padding-left:0}
