:root{--well: #e4e9f1;--ground: #eef1f6;--surface-2: #f2f5f9;--surface: #ffffff;--ink: #1f2430;--ink-2: #525c73;--ink-3: #5f6980;--rule: #d5dce6;--rule-2: #7a85a0;--accent: #7551f4;--accent-text: #573ac0;--on-accent: #ffffff;--brand-a: #7551f4;--brand-b: #4a32ae;--on-brand: #ffffff;--pos: #096949;--amber: #79560c;--ox: #ad2033;--tone-1: #c84262;--tone-2: #0a8359;--tone-3: #aa4eae;--tone-4: #647b04;--tone-5: #3270d6;--tone-6: #bf5105;--tone-7: #027f85;--tone-8: #bd458b;--tone-9: #1d8514;--tone-10: #6a64d6;--tone-11: #8f6e02;--tone-12: #0079b7;--tone-neutral: #687383;--tip-bg: #1f2430;--tip-fg: #ffffff;--scrim: #0b0d14;--login-field: #ffffff;--login-field-ink: #1f2430;--login-field-edge: var(--rule-2);--shadow: 0 8px 24px rgba(31, 36, 48, .1);--shadow-sm: 0 2px 8px rgba(31, 36, 48, .12);--r-xs: 6px;--r-sm: 9px;--r: 14px;--r-lg: 18px;--r-pill: 999px;--measure: 1560px;--gutter: 1.5rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur: .24s;--dur-lift: .18s;--dur-fast: .16s;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--fs-micro: .6875rem;--fs-xs: .8125rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-md: 1.0625rem;--fs-lg: 1.25rem;--fs-xl: 1.625rem;color-scheme:light}html[data-theme=dark]{--ground: #0f1118;--surface: #171a22;--well: #1c1f29;--surface-2: #242835;--ink: #e7e9f2;--ink-2: #a1a9c0;--ink-3: #8b93ad;--rule: #272c39;--rule-2: #677090;--accent: #a68fff;--accent-text: #bbaaff;--on-accent: #12141c;--brand-a: #7551f4;--brand-b: #4a32ae;--on-brand: #ffffff;--pos: #5ecf9e;--amber: #e3b45f;--ox: #f28d9b;--tip-bg: #e7e9f2;--tip-fg: #171a22;--login-field: #eef1fa;--login-field-ink: #1f2430;--login-field-edge: transparent;--scrim: #05060b;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box}html,body,#root{max-width:100%;overflow-x:hidden}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;color:inherit}h1,h2,h3{margin:0 0 .35rem;font-weight:650;letter-spacing:-.015em;line-height:1.2}p{margin:0 0 1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}body,.panel,.stat,.capture,.table-wrap,.report{transition:background-color var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.label{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);line-height:1.3}.muted{color:var(--ink-2)}.tiny{font-size:var(--fs-xs)}.fig{font-variant-numeric:tabular-nums;white-space:nowrap}.fig-lg{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;line-height:1.05}.fig-md{font-size:var(--fs-lg);font-weight:700;letter-spacing:-.015em;line-height:1.1}.fig-sm{font-size:var(--fs-base);font-weight:560;letter-spacing:-.01em}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.neg,.err{color:var(--ox)}.warn{color:var(--amber)}.nowrap{white-space:nowrap}.hint{margin:.4rem 0 0}.intro{margin:0 0 .5rem}.foot{margin-top:1.5rem}.beside{margin-left:.6rem}.ends{color:var(--accent-text);font-weight:560}.btn.back{margin-bottom:.8rem}.actions.snug{margin-top:.5rem}.actions.inline{margin:0}.actions.flush{margin-top:0}.actions.lead{margin-top:0;margin-bottom:1rem}.actions.center{justify-content:center}.empty-action{margin-top:.9rem}.panel-note{padding:1rem 1.1rem}.panel-note.lead{padding-bottom:.2rem}.fields>.full-note{grid-column:1 / -1;margin:0;align-self:end}th.tick{width:2.5rem}.hidden-input{display:none}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--rule)}.topbar-inner,.nav-inner,main{max-width:var(--measure);margin:0 auto;width:100%;padding-left:var(--gutter);padding-right:var(--gutter)}.topbar-inner{display:flex;align-items:center;gap:.75rem;padding-block:.6rem}.brand{font-weight:650;letter-spacing:-.01em;line-height:1.15}.brand small{display:block;font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.spacer{margin-left:auto}.nav{position:sticky;top:49px;z-index:9;background:var(--surface);border-bottom:1px solid var(--rule)}.nav-inner{display:flex;align-items:center;gap:.15rem}.nav-main button{font-weight:650}.nav-sub{border-top:1px solid var(--rule)}.nav-sub button{font-size:var(--fs-xs);margin:.2rem 0;padding:.4rem .65rem}.nav-tabs{display:flex;gap:.15rem;overflow-x:auto;scrollbar-width:none;min-width:0;flex:1 1 auto}.nav-tabs::-webkit-scrollbar{display:none}.nav button{margin:.3rem 0;padding:.5rem .75rem;border:1px solid transparent;border-radius:var(--r-sm);background:none;color:var(--ink-2);font-size:var(--fs-sm);font-weight:560;white-space:nowrap;transition:color var(--dur-fast),background var(--dur-fast)}.nav button:hover{color:var(--ink);background:var(--surface-2)}.nav button[aria-current=page]{color:var(--accent-text);font-weight:650;background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}main{flex:1;padding-top:1.5rem;padding-bottom:3.5rem}.page-head{margin-bottom:1.25rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.page-head:not(:has(>:not(.visually-hidden))){margin-bottom:0}.page-head h1{font-size:var(--fs-xl)}.page-head p{margin:0;color:var(--ink-2);font-size:var(--fs-base);flex:1 1 22rem;max-width:66ch}.page-figs{margin-left:auto;display:flex;gap:1.5rem;flex-wrap:wrap}.page-figs>div{display:flex;flex-direction:column;gap:1px}.section-head{display:flex;align-items:baseline;gap:.7rem;margin:2rem 0 .75rem}.section-head h2{font-size:var(--fs-lg);margin:0}.section-head .count{color:var(--ink-3);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:1rem 1.1rem;margin-bottom:1rem}.panel.flush{padding:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.panel.flush .panel-head{padding:.9rem 1.1rem .1rem;margin-bottom:0}.panel-head h2,.panel-head h3{margin:0;font-size:var(--fs-md)}.list{display:flex;flex-direction:column}.panel.flush .list{padding:.25rem .35rem .35rem}.row{display:flex;align-items:center;gap:1rem;padding:.8rem .55rem;border:0;border-bottom:1px solid var(--rule);background:none;width:100%;text-align:left;color:inherit;border-radius:var(--r-sm);transition:background var(--dur-fast),padding-left var(--dur-fast) var(--ease-out)}.row:last-child{border-bottom:none}button.row{cursor:pointer}button.row:hover{background:var(--surface-2);padding-left:1rem}.row .main{min-width:0;flex:1}.row .main strong{display:block;font-weight:560}.row .main span{display:block;color:var(--ink-2);font-size:var(--fs-sm)}.row .end{margin-left:auto;text-align:right;white-space:nowrap;display:flex;align-items:center;gap:.5rem}.row[aria-disabled=true]{cursor:default}.go{width:26px;height:26px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;font-size:13px;background:var(--surface-2);color:var(--ink-2);transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast) var(--ease-out)}.row:hover .go{background:var(--accent);color:var(--on-accent);transform:translate(3px)}.record-head{border-bottom:1px solid var(--rule);padding-bottom:1rem;margin-bottom:1rem}.record-head h1{margin:0 0 .15rem;font-size:var(--fs-xl)}.facts{display:flex;flex-wrap:wrap;gap:.35rem 1.6rem;color:var(--ink-2);font-size:var(--fs-sm)}.facts b{color:var(--ink);font-weight:650;font-variant-numeric:tabular-nums}.capture{background:var(--surface);border:1px solid var(--rule);border-top:2px solid var(--accent);border-radius:var(--r);padding:1.15rem 1.25rem;margin:0 auto 1.25rem;box-shadow:var(--shadow);animation:revealUp .3s var(--ease-out) both;max-width:46rem;width:100%}.capture.wide{max-width:60rem}.capture h3{margin:0 0 .85rem;font-size:var(--fs-md)}.fields{display:grid;gap:.75rem;grid-template-columns:1fr}@media(min-width:640px){.fields{grid-template-columns:repeat(2,1fr)}}.field{display:flex;flex-direction:column;gap:.25rem}.field.full{grid-column:1 / -1}.field>span{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.field input,.field select,.field textarea,.searchbar input,.searchbar select,.cal-tools select{background:var(--well);border:1px solid var(--rule-2);border-radius:var(--r-sm);padding:.55rem .7rem;transition:border-color var(--dur-fast),background var(--dur-fast)}.field input:focus,.field select:focus,.field textarea:focus,.searchbar input:focus,.searchbar select:focus,.cal-tools select:focus{border-color:var(--accent);outline:none;background:var(--surface)}.actions{display:flex;gap:.55rem;margin-top:.95rem;align-items:center;flex-wrap:wrap}.table-wrap,.report{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:auto;margin-bottom:1rem}table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}th{text-align:left;font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);background:var(--well);position:sticky;top:0;z-index:1;line-height:1.25;max-width:12ch;white-space:normal}th,td{padding:.6rem .9rem;border-bottom:1px solid var(--rule);vertical-align:top}td.r,th.r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background var(--dur-fast)}tbody tr:hover{background:var(--surface-2)}tfoot td{font-weight:700;background:var(--well);border-top:2px solid var(--rule);border-bottom:none}.verdict{font-size:var(--fs-sm);color:var(--ink-2);max-width:76ch;margin:0 0 .85rem}.routine{display:flex;flex-direction:column}.step{display:flex;gap:.9rem;padding:.85rem .2rem;border-bottom:1px solid var(--rule);align-items:flex-start}.step:last-child{border-bottom:none}.step .mark{width:1.5rem;height:1.5rem;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;font-size:var(--fs-xs);font-weight:650;background:var(--well);color:var(--ink-2)}.step.done .mark{background:linear-gradient(135deg,var(--brand-a),var(--brand-b));color:var(--on-brand)}.step .body strong{display:block;font-weight:560}.step .body span{color:var(--ink-2);font-size:var(--fs-sm)}.cards{display:grid;gap:1rem;margin-bottom:1.25rem;grid-template-columns:1fr}@media(min-width:640px){.cards.two{grid-template-columns:repeat(2,1fr)}}@media(min-width:860px){.cards.three{grid-template-columns:repeat(3,1fr)}}@media(min-width:860px){.cards.four{grid-template-columns:repeat(4,1fr)}}.stat{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:.85rem 1rem;display:flex;flex-direction:column;gap:.3rem}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.85}.stat.wait:before{background:var(--amber)}.stat.bad:before{background:var(--ox)}.stat small{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.stat strong{font-size:var(--fs-lg);font-weight:700;letter-spacing:-.015em;font-variant-numeric:tabular-nums;line-height:1.1}.stat em{font-style:normal;font-size:var(--fs-xs);color:var(--ink-3)}.btn{border:1px solid var(--rule-2);background:var(--surface);color:var(--ink);padding:.45rem .85rem;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:560;transition:transform .15s var(--ease-out),border-color var(--dur-fast),background var(--dur-fast)}.btn:hover{border-color:var(--accent);transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.995)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:650}.btn.primary:hover{filter:brightness(1.08)}.btn.quiet{border-color:transparent;background:none;color:var(--ink-2)}.btn.quiet:hover{background:var(--surface-2);color:var(--ink)}.btn.bad{color:var(--ox);border-color:color-mix(in srgb,var(--ox) 40%,transparent)}.btn.bad:hover{background:color-mix(in srgb,var(--ox) 12%,transparent);border-color:var(--ox)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.small{padding:.3rem .6rem;font-size:var(--fs-xs)}.pill{display:inline-block;font-size:var(--fs-micro);font-weight:650;letter-spacing:.05em;text-transform:uppercase;padding:.18rem .55rem;border-radius:var(--r-pill);border:1px solid var(--rule);background:var(--surface-2);color:var(--ink-2);white-space:nowrap}.pill.wait{background:color-mix(in srgb,var(--amber) 14%,transparent);border-color:color-mix(in srgb,var(--amber) 40%,transparent);color:var(--amber)}.pill.good{background:color-mix(in srgb,var(--pos) 14%,transparent);border-color:color-mix(in srgb,var(--pos) 40%,transparent);color:var(--pos)}.pill.bad{background:color-mix(in srgb,var(--ox) 14%,transparent);border-color:color-mix(in srgb,var(--ox) 40%,transparent);color:var(--ox)}.banner{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;border-radius:13px;padding:.75rem 1rem;margin-bottom:1.25rem;font-size:var(--fs-sm);background:color-mix(in srgb,var(--amber) 14%,transparent);border:1px solid color-mix(in srgb,var(--amber) 45%,transparent)}.banner.good{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.banner.bad{background:color-mix(in srgb,var(--ox) 14%,transparent);border-color:color-mix(in srgb,var(--ox) 45%,transparent)}.banner .spacer{margin-left:auto}.searchbar{display:flex;gap:.6rem;margin-bottom:.95rem;flex-wrap:wrap;align-items:center}.searchbar input[type=search],.searchbar input[type=text]{flex:1 1 20rem;max-width:28rem}.whoami{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin-right:.1rem;white-space:nowrap}.who{font-size:var(--fs-sm);font-weight:650;white-space:nowrap}.empty{padding:2.6rem 1.25rem;text-align:center;color:var(--ink-2);border:1px dashed var(--rule-2);border-radius:var(--r);background:var(--surface)}.empty strong{display:block;color:var(--ink);font-size:var(--fs-md);margin-bottom:.3rem}.empty p{max-width:42ch;margin:0 auto;font-size:var(--fs-sm)}.loading{display:grid;place-items:center;min-height:40vh;color:var(--ink-2)}.scaffold{border:1px dashed var(--rule-2);border-radius:var(--r);padding:1rem 1.1rem;color:var(--ink-2);font-size:var(--fs-sm);background:var(--surface)}.scaffold strong{color:var(--ink)}.scaffold ul{margin:.5rem 0 0;padding-left:1.1rem}.scaffold li{margin-bottom:.25rem}.monthbar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.55rem .75rem;margin-bottom:.875rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r)}.monthbar .title{display:flex;flex-direction:column;line-height:1.2;min-width:13rem;text-align:center;font-size:var(--fs-md);font-weight:650}.monthbar .title small{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal .dow{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);text-align:center;padding:.35rem 0}.cal .day{min-height:4.75rem;background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--r-sm);padding:4px;display:flex;flex-direction:column;gap:2px;overflow:hidden;transition:border-color var(--dur-fast),transform var(--dur-fast) var(--ease-out)}.cal .day:hover{border-color:var(--accent);transform:translateY(-1px)}.cal .day.today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cal .day.blank{background:none;border-color:transparent}.cal .day .n{font-size:var(--fs-micro);color:var(--ink-3);font-variant-numeric:tabular-nums}.cal .day.today .n{color:var(--accent-text);font-weight:700}.cal .ev{font-size:var(--fs-micro);font-weight:600;color:var(--on-brand);border-radius:var(--r-xs);padding:3px 6px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal .ev.done{box-shadow:inset 0 0 0 1.5px #ffffffbf}.cal .ev.off{color:var(--ink-2);text-decoration:line-through}@keyframes revealUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.reveal{animation:revealUp .42s var(--ease-out) both}@media(max-width:720px){:root{--gutter: 1rem}.page-head h1{font-size:1.375rem}.monthbar .title{min-width:0;flex:1 1 auto}.monthbar .spacer{flex-basis:100%;height:0;margin:0}.page-figs{margin-left:0;gap:1.25rem}.whoami{display:none}.cal .day{min-height:3.25rem}.cal .ev{font-size:9px;padding:2px 4px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.btn:hover,.cal .day:hover,button.row:hover,.go,.side-card:hover,.row:hover .go{transform:none!important}button.row:hover{padding-left:.55rem}}.attendees{background:var(--well);border:1px solid var(--rule);border-radius:var(--r-sm);padding:.85rem .95rem}.attendees-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.attendees-head h4{margin:0;font-size:var(--fs-md);font-weight:650}.attendees>p{margin:0 0 .7rem;max-width:72ch}.attendee-row{display:flex;gap:.5rem;margin-bottom:.45rem;align-items:center}.attendee-row:last-of-type{margin-bottom:0}.attendee-row input{background:var(--surface);border:1px solid var(--rule-2);border-radius:var(--r-sm);padding:.55rem .7rem;flex:1;min-width:0;transition:border-color var(--dur-fast)}.attendee-row input:focus{border-color:var(--accent);outline:none}.attendee-row input[aria-invalid=true]{border-color:var(--ox)}.attendee-row input.rate{flex:0 0 7rem;text-align:right;font-variant-numeric:tabular-nums}@media(max-width:560px){.attendee-row{flex-wrap:wrap}.attendee-row input.rate{flex:1 1 auto;text-align:left}}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,var(--scrim) 55%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:scrimIn .18s var(--ease-out) both;overflow-y:auto}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:34rem;background:var(--surface);color:var(--ink);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:0 24px 64px #00000052;animation:modalIn .24s var(--ease-out) both;outline:none;max-height:calc(100vh - 2.5rem);display:flex;flex-direction:column}.modal.wide{max-width:46rem}@keyframes modalIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}.modal-head{display:flex;align-items:center;gap:1rem;padding:1.05rem 1.25rem;border-bottom:1px solid var(--rule)}.modal-head h2{margin:0;font-size:var(--fs-lg);flex:1;min-width:0}.modal-x{width:34px;height:34px;flex:0 0 auto;font-size:18px;line-height:1;background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--r-sm);color:var(--ink-2);transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}.modal-x:hover{background:var(--well);color:var(--ink);border-color:var(--rule-2)}.modal-body{padding:1.25rem 1.25rem 2.5rem;overflow-y:auto}.modal-foot{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;padding:1rem 1.25rem;border-top:1px solid var(--rule)}.modal .capture{max-width:none;margin:0;border:0;border-top:0;padding:0;box-shadow:none;background:none;animation:none}@media(prefers-reduced-motion:reduce){.scrim,.modal{animation:none!important}}.cal .day[role=button]{cursor:pointer}.cal .day[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cal .ev{position:relative;z-index:1}.searchbar .inline-field{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--fs-xs);color:var(--ink-2)}.searchbar .inline-field select{width:auto}.searchbar .count{font-variant-numeric:tabular-nums;white-space:nowrap}.searchbar .spacer{flex:1 1 auto}.client-grid{display:grid;gap:.85rem;margin-bottom:1.1rem;grid-template-columns:repeat(auto-fill,minmax(20.5rem,1fr))}.client-card{display:flex;flex-direction:column;gap:.6rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:.9rem 1rem;box-shadow:var(--shadow-sm);transition:border-color var(--dur-fast),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast)}.client-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}.client-top{display:flex;align-items:flex-start;gap:.7rem}.client-avatar{flex:none;width:2.25rem;height:2.25rem;border-radius:10px;display:grid;place-items:center;background:var(--brand-a);color:var(--on-brand);font-weight:700;font-size:var(--fs-md)}.client-name{display:flex;flex-direction:column;gap:.1rem;min-width:0}.linkish{background:none;border:0;padding:0;cursor:pointer;text-align:left;font:inherit;font-weight:650;font-size:var(--fs-sm);color:var(--ink)}.linkish:hover{color:var(--accent-text)}.client-no{color:var(--ink-3);font-weight:500}.client-rate{font-size:var(--fs-xs);font-weight:600;color:var(--amber);font-variant-numeric:tabular-nums}.client-meta{display:flex;flex-direction:column;gap:.22rem;font-size:var(--fs-xs);color:var(--ink-2)}.client-meta a{color:var(--accent-text);text-decoration:none}.client-meta a:hover{text-decoration:underline}.client-meta .mk{color:var(--ink-3)}.client-statuses{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.client-statuses .pill{text-transform:none;letter-spacing:0}.client-notes{font-size:var(--fs-xs);color:var(--ink-2);background:var(--surface-2);border-radius:var(--r-sm);padding:.5rem .65rem}.client-actions{display:flex;gap:.4rem;align-items:center;margin-top:auto;padding-top:.2rem}.learner-row{display:grid;gap:.4rem;margin-top:.4rem;align-items:center;grid-template-columns:minmax(7rem,1.4fr) 5.5rem minmax(6rem,1fr) 6.5rem auto}@media(max-width:780px){.learner-row{grid-template-columns:1fr 1fr}.client-grid{grid-template-columns:1fr}}.segmented{display:inline-flex;padding:2px;gap:2px;background:var(--well);border:1px solid var(--rule-2);border-radius:var(--r-sm)}.segmented .seg{border:0;background:none;font-size:var(--fs-xs);font-weight:560;color:var(--ink-2);padding:.3rem .75rem;border-radius:var(--r-xs);transition:background var(--dur-fast),color var(--dur-fast)}.segmented .seg:hover{color:var(--ink)}.segmented .seg[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent-text)}.cal-tools{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:0 0 .875rem}.cal-tools select{min-width:13rem}.cal-hint{font-size:var(--fs-micro);color:var(--ink-3);text-align:center;margin:.5rem 0 1rem}.plan-head{font-size:var(--fs-sm);font-weight:650;margin:1.1rem 0 .4rem}tr.off{opacity:.7}tr.off td{text-decoration:none}.note-line{width:100%;max-width:32rem;margin-top:.3rem;padding:.35rem .5rem;font-size:var(--fs-xs);background:var(--well);border:1px solid var(--rule-2);border-radius:var(--r-xs);color:inherit}.note-line:focus{border-color:var(--accent);outline:none;background:var(--surface)}.appt-row{display:grid;grid-template-columns:9.5rem 1fr;gap:.25rem 1rem;padding:.8rem .9rem;margin-bottom:.55rem;background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--r-sm)}.appt-row:last-child{margin-bottom:0}.appt-row.off{opacity:.78}.appt-when{display:flex;flex-direction:column;gap:.1rem}.appt-when strong{font-size:var(--fs-xs);font-weight:650}.appt-when span{font-size:var(--fs-xs);color:var(--ink-3);font-variant-numeric:tabular-nums}.appt-body{display:flex;flex-direction:column;gap:.3rem;min-width:0}.appt-who{display:flex;align-items:center;gap:.45rem;font-size:var(--fs-sm);font-weight:650}.appt-who .dot{width:10px;height:10px;border-radius:3px;flex:none}.appt-row.off .appt-who strong{text-decoration:line-through;color:var(--ink-2)}.appt-meta{font-size:var(--fs-xs);color:var(--ink-2);line-height:1.45}.appt-meta .tag{display:inline-block;font-size:var(--fs-micro);font-weight:600;padding:1px .45rem;margin-right:.3rem;border-radius:var(--r-pill);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent-text)}.appt-foot{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.1rem}.appt-foot .money{font-weight:700;color:var(--pos);font-variant-numeric:tabular-nums}.appt-foot .pill{text-transform:none;letter-spacing:0}.appt-row.off .appt-foot .money{color:var(--ink-3)}.appt-acts{display:flex;gap:.3rem;margin-left:auto;align-items:center}.modal.day{max-width:44rem}.appt-form{margin-top:.5rem;padding:.7rem .75rem;background:var(--surface);border:1px solid var(--rule-2);border-radius:var(--r-sm)}.appt-form-fields{display:flex;gap:.6rem;flex-wrap:wrap}.appt-form label,.appt-form-note,.appt-form-fee{display:flex;flex-direction:column;gap:.2rem;font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.appt-form-note,.appt-form-fee{margin-top:.5rem}.appt-form input,.appt-form select,.appt-form textarea{background:var(--well);border:1px solid var(--rule-2);border-radius:var(--r-xs);padding:.4rem .5rem;font:inherit;font-size:var(--fs-xs);text-transform:none;letter-spacing:0;color:var(--ink)}.appt-form input:focus,.appt-form select:focus,.appt-form textarea:focus{border-color:var(--accent);outline:none;background:var(--surface)}.appt-form-fee input{max-width:7rem}.appt-meta .lock{cursor:help}.icon-btn{width:1.9rem;height:1.9rem;flex:none;display:inline-grid;place-items:center;font-size:var(--fs-sm);line-height:1;background:var(--surface);color:var(--ink-2);border:1px solid var(--rule-2);border-radius:var(--r-xs);transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast)}.icon-btn:hover{border-color:var(--accent);color:var(--accent-text)}.icon-btn.bad:hover{border-color:var(--ox);color:var(--ox);background:color-mix(in srgb,var(--ox) 10%,transparent)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{border-color:var(--rule-2);color:var(--ink-2);background:var(--surface)}.appt-ask{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-top:.5rem;padding:.5rem .6rem;background:var(--surface);border:1px solid var(--rule-2);border-radius:var(--r-sm)}.appt-ask .tiny{color:var(--ink-2);margin-right:.2rem}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--tip-bg);color:var(--tip-fg);font-size:var(--fs-micro);font-weight:560;letter-spacing:.01em;padding:.25rem .5rem;border-radius:var(--r-xs);white-space:nowrap;pointer-events:none;z-index:5;opacity:0;transition:opacity var(--dur-fast)}[data-tip]:before{content:"";position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);border:4px solid transparent;border-bottom-color:var(--tip-bg);pointer-events:none;opacity:0;transition:opacity var(--dur-fast)}[data-tip]:hover:after,[data-tip]:hover:before,[data-tip]:focus-visible:after,[data-tip]:focus-visible:before{opacity:1}@media(hover:none){[data-tip]:hover:after,[data-tip]:hover:before{opacity:0}}.appt-acts>:last-child[data-tip]:after{left:auto;right:0;transform:none}.appt-acts>:last-child[data-tip]:before{left:auto;right:.65rem;transform:none}.pill.pressable{cursor:pointer;font:inherit;font-size:var(--fs-micro);font-weight:600}.pill.pressable:hover{filter:brightness(1.12);transform:translateY(-1px)}.sheet-steps{display:grid;gap:1.25rem;padding:1rem 1.1rem 1.25rem}@media(min-width:900px){.sheet-steps{grid-template-columns:repeat(3,1fr)}}.sheet-steps h4{font-size:var(--fs-sm);margin:0 0 .25rem}.sheet-steps p{margin:0 0 .6rem}.sheet-steps label.btn{cursor:pointer;display:inline-block}.crash{max-width:40rem;margin:3rem auto;padding:0 var(--gutter)}.guide{max-width:72ch}.guide-side{margin:2rem 0 .5rem}.guide-side h2{font-size:var(--fs-lg)}.guide-side p{color:var(--ink-2);font-size:var(--fs-sm);max-width:66ch}.guide-place{margin-bottom:1.5rem;padding-top:.5rem;scroll-margin-top:7rem}.guide-place h3{font-size:var(--fs-md);margin-bottom:.35rem}.guide-place p,.guide-place li{font-size:var(--fs-sm)}.guide-place p{margin-bottom:.6rem;max-width:66ch}.guide-place ul{margin:0 0 .75rem;padding-left:1.2rem}.guide-place li{margin-bottom:.25rem}.guide-place .soon{color:var(--ink-3);font-style:italic}.tone-1{--tone: var(--tone-1)}.tone-2{--tone: var(--tone-2)}.tone-3{--tone: var(--tone-3)}.tone-4{--tone: var(--tone-4)}.tone-5{--tone: var(--tone-5)}.tone-6{--tone: var(--tone-6)}.tone-7{--tone: var(--tone-7)}.tone-8{--tone: var(--tone-8)}.tone-9{--tone: var(--tone-9)}.tone-10{--tone: var(--tone-10)}.tone-11{--tone: var(--tone-11)}.tone-12{--tone: var(--tone-12)}.swatch{display:inline-block;width:.7rem;height:.7rem;border-radius:3px;background:var(--tone);flex:none}.rings{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));margin-bottom:1rem}.ring{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.8rem}.ring-face{position:relative;width:10.5rem;margin:0 auto}.ring-face svg{width:100%;height:auto;display:block}.ring-track{fill:none;stroke:var(--well);stroke-width:11}.ring-slices{transform:rotate(-90deg);transform-origin:50% 50%}.ring-slice{fill:none;stroke:var(--tone);stroke-width:11;animation:ringIn .7s var(--ease-out) both}@keyframes ringIn{0%{stroke-dasharray:0 277}}.ring-centre{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.7rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.1rem}.ring-centre small{font-size:var(--fs-micro);color:var(--ink-3);line-height:1.25}.legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;font-size:var(--fs-xs)}.legend li{display:flex;align-items:center;gap:.5rem}.legend-label{flex:1}.ring>p{margin:0}.bridge{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--r-sm);padding:.7rem .9rem;font-size:var(--fs-sm);margin-bottom:1.25rem}.bridge p{margin:0 0 .25rem;max-width:none}.bridge p:last-child{margin:0}.linechart{overflow-x:auto;margin:0 0 1rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:.8rem 1rem}.linechart figcaption{display:flex;gap:.5rem;align-items:center;font-size:var(--fs-xs);color:var(--ink-2);margin-bottom:.4rem}.linechart svg{width:100%;height:auto;min-width:34rem;display:block}.linechart text{font:11px var(--sans);fill:var(--ink-3)}.line-axis{stroke:var(--rule-2);stroke-width:1}.line-grid{stroke:var(--rule);stroke-width:1}.line-path{fill:none;stroke:var(--tone);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:lineIn .9s var(--ease-out) forwards}@keyframes lineIn{to{stroke-dashoffset:0}}.line-point{fill:var(--surface);stroke:var(--tone);stroke-width:2;animation:pointIn .3s var(--ease-out) .7s both}@keyframes pointIn{0%{opacity:0}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.needs .row .end .btn{margin-left:.25rem}.row-note{padding:0 .55rem .7rem;font-size:var(--fs-xs);color:var(--ink-2);border-bottom:1px solid var(--rule)}.row-note p{margin:0 0 .2rem;max-width:none}.row-note.preview{color:var(--ink-3)}.row-note.preview.err p:first-child{color:var(--ox)}.row-note:last-child{border-bottom:none}.row-form{margin:0 .35rem .6rem;padding:.7rem .75rem;background:var(--surface-2);border:1px solid var(--rule-2);border-radius:var(--r-sm)}.row-form .fields{gap:.55rem}.row .end .btn{margin-left:.15rem}textarea.grow{field-sizing:content;resize:none;overflow:hidden;display:block;width:100%;min-height:2.35rem;line-height:1.45;font:inherit}.note-line.grow{min-height:1.9rem}.history{margin-top:1.25rem}.home-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));margin-bottom:1rem}.home-grid.small{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.side-card{display:flex;flex-direction:column;gap:.85rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:1.1rem 1.2rem;color:inherit;text-decoration:none;transition:border-color var(--dur-fast),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast)}.side-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow)}.side-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.side-card h2{font-size:var(--fs-lg);margin:.1rem 0 0}.side-card .ring{border:0;padding:0;background:none}.side-card.link{padding:.9rem 1.1rem;gap:.2rem}.side-card.link h2{font-size:var(--fs-md);font-weight:560;color:var(--ink-2)}.side-facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;font-size:var(--fs-sm);color:var(--ink-2)}.side-facts b{color:var(--ink);font-variant-numeric:tabular-nums}.side-facts li.warn,.side-facts li.warn b{color:var(--amber)}.side-facts li.err,.side-facts li.err b{color:var(--ox)}.side-go{margin-top:auto;font-size:var(--fs-sm);font-weight:650;color:var(--accent-text)}.agenda{padding:.2rem .35rem .35rem;display:flex;flex-direction:column}.agenda-row{display:grid;grid-template-columns:13rem minmax(0,1fr) auto;gap:.75rem;align-items:baseline;width:100%;text-align:left;padding:.32rem .55rem;border:0;background:none;color:inherit;border-radius:var(--r-xs);font-size:var(--fs-sm);transition:background var(--dur-fast)}.agenda-row:hover{background:var(--surface-2)}.agenda-when{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.agenda-who{font-weight:560;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-where{color:var(--ink-3);white-space:nowrap;font-size:var(--fs-xs)}.agenda-row.done>*{text-decoration:line-through;color:var(--ink-3)}.agenda-more{border:0;background:none;text-align:left;padding:.4rem .55rem;color:var(--ink-2);font-size:var(--fs-sm)}.agenda-more:hover{color:var(--accent-text)}@media(max-width:720px){.agenda-row{grid-template-columns:minmax(0,1fr) auto;row-gap:.1rem}.agenda-when{grid-column:1 / -1;font-size:var(--fs-xs)}}.report-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:1.6rem 0 .5rem;flex-wrap:wrap}.report-head h2{font-size:var(--fs-lg);margin:0}.sheet-grid{display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}.sheet-grid table+table{border-left:1px solid var(--rule)}@media(max-width:720px){.sheet-grid table+table{border-left:0;border-top:2px solid var(--rule)}}tr.reversed td:not(:last-child){text-decoration:line-through;color:var(--ink-3)}.print-only{display:none}@media print{:root,html[data-theme=dark]{--ground: #fff;--surface: #fff;--surface-2: #fff;--well: #f1f1f1;--ink: #000;--ink-2: #333;--ink-3: #555;--rule: #bbb;--rule-2: #888;--accent-text: #000;--pos: #000;--amber: #333;--ox: #000;--shadow: none;--shadow-sm: none}.print-only{display:block}.topbar,.nav,.btn,.actions,.report-tools,.searchbar,.row-note,.side-go,.cal-hint{display:none!important}main{padding:0;max-width:none}.report,.panel,.stat,.bridge,table{break-inside:avoid;box-shadow:none}.report{overflow:visible}th{position:static}body{font-size:11pt}}.cover{width:2.2rem;height:3rem;object-fit:cover;border-radius:3px;border:1px solid var(--rule);background:var(--well);flex:none}.cover.big{width:4.6rem;height:6.2rem}.title-with-cover{display:inline-flex;align-items:center;gap:.6rem;min-width:0}.lookup{grid-column:1 / -1;display:flex;gap:.5rem;align-items:flex-end}.lookup .field{flex:1 1 auto}.cover-field>span{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.cover-pick{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cover-pick input[type=file]{font-size:var(--fs-xs);max-width:100%}.row-note .holder{display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center;justify-content:space-between}.verbs{display:inline-flex;gap:.35rem;flex-wrap:wrap;align-items:center}.fig.bad{color:var(--ox)}.full-note.good{color:var(--pos)}.photos{grid-column:1 / -1;display:grid;gap:.7rem}.photo-thumbs{display:flex;gap:.75rem;flex-wrap:wrap}.photo-thumb{margin:0;display:flex;flex-direction:column;gap:.3rem;width:9rem}.photo-thumb img{width:100%;height:7rem;object-fit:contain;background:var(--well);border:1px solid var(--rule);border-radius:var(--r-xs)}.photo-thumb figcaption{display:flex;align-items:center;justify-content:space-between;gap:.4rem;font-size:var(--fs-xs);color:var(--ink-2)}.photo-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.crop{grid-column:1 / -1;display:grid;gap:.5rem}.crop-stage{position:relative;width:100%;touch-action:none;user-select:none;-webkit-user-select:none}.crop-stage img{display:block;width:100%;height:auto;border-radius:var(--r-xs)}.crop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:grab}.crop-dim{fill:color-mix(in srgb,var(--ink) 55%,transparent)}.crop-edge{fill:none;stroke:var(--accent);stroke-width:2}.crop-handle{fill:var(--surface);stroke:var(--accent);stroke-width:2.5}.crop-handle.live,.crop-dot{fill:var(--accent)}.prev-line{display:block;font-size:var(--fs-xs);color:var(--ink-3);margin-bottom:.3rem}.prev-line b{color:var(--ink-2);font-weight:560}.login{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1fr;background:var(--ground);color:var(--ink)}@media(min-width:900px){.login{grid-template-columns:1fr 1fr}}.login-half{display:flex;align-items:center;padding:2.5rem 1.5rem;min-width:0}@media(min-width:900px){.login-half{padding:3rem 2rem}}.login-waiting{background:var(--surface);border-top:1px solid var(--rule);align-items:flex-start}@media(min-width:900px){.login-waiting{border-top:0;border-left:1px solid var(--rule)}}.login-half>.login-form{margin-inline:auto}@media(min-width:900px){.login-half>.login-form{margin-inline:auto 0;margin-right:clamp(2rem,9vw,6.5rem)}.login-waiting-inner{margin-left:clamp(2rem,9vw,6.5rem);padding-top:clamp(0rem,6vh,4rem)}}.login-form{width:100%;max-width:24rem;display:flex;flex-direction:column;gap:.85rem}.login-mark{display:flex;align-items:center;gap:.7rem;margin-bottom:1.6rem}.login-badge{width:2.6rem;height:2.6rem;flex:none;display:grid;place-items:center;border-radius:var(--r-sm);background:linear-gradient(150deg,var(--brand-a),var(--brand-b));color:var(--on-brand);font-weight:700;font-size:var(--fs-lg);letter-spacing:-.02em}.login-form .brand{display:block;font-weight:700;font-size:var(--fs-md)}.login-form .brand small{display:block;margin-top:.15rem;font-size:var(--fs-micro);font-weight:560;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.login-form h1{margin:0;font-size:clamp(1.75rem,3.4vw,2.2rem);letter-spacing:-.025em;line-height:1.1}.login-sub{margin:-.25rem 0 1.1rem;color:var(--ink-2);font-size:var(--fs-sm)}.login-form .field{gap:.35rem}.login-form .field>span{font-size:var(--fs-xs);font-weight:560;letter-spacing:0;text-transform:none;color:var(--ink-2)}.login-form .field input{background:var(--login-field);color:var(--login-field-ink);border:1px solid var(--login-field-edge);border-radius:var(--r-sm);padding:.7rem .85rem;font-size:var(--fs-sm)}.login-form .field input:focus{background:var(--login-field);border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}.btn.login-go{width:100%;margin-top:.4rem;padding-block:.75rem;background:linear-gradient(100deg,var(--brand-a),var(--brand-b));border-color:transparent;color:var(--on-brand);font-size:var(--fs-sm)}.btn.login-go:hover{border-color:transparent;filter:brightness(1.08)}.linkish.login-forgot{align-self:flex-start;margin-top:.2rem;font-weight:560;color:var(--ink-2);text-decoration:underline}.linkish.login-forgot:hover{color:var(--accent-text)}.login-dev{border-top:1px solid var(--rule);padding-top:.8rem;margin-top:.4rem}.login-dev p{margin:0 0 .5rem}.login-dev .actions{margin-top:0}.login-waiting-inner{width:100%;max-width:34rem}.waits-all{margin:0 0 1.4rem}.waits+.waits{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--rule)}.waits-head{display:flex;align-items:center;gap:.5rem;margin:0 0 .7rem;font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.waits-glyph{display:flex;color:var(--accent)}.waits-glyph svg{width:1rem;height:1rem}.waits-name{min-width:0;color:var(--ink)}.waits-count{margin-left:auto;font-size:var(--fs-xs);font-weight:650;letter-spacing:0;color:var(--ink-3);font-variant-numeric:tabular-nums}.waits-count.pressing{padding:.05rem .45rem;border-radius:var(--r-pill);background:color-mix(in srgb,var(--amber) 20%,transparent);color:var(--amber)}.waits-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}@media(min-width:560px){.waits-list{gap:.45rem}}.waits-row{display:grid;grid-template-columns:1fr;gap:.05rem .9rem;font-size:var(--fs-sm);min-width:0}@media(min-width:560px){.waits-row{grid-template-columns:11.5rem minmax(0,1fr) max-content;align-items:baseline}}.waits-when{color:var(--ink-2);font-variant-numeric:tabular-nums}.waits-what{color:var(--ink);font-weight:560;overflow-wrap:anywhere}.waits-end{color:var(--ink-3);font-size:var(--fs-xs)}@media(min-width:560px){.waits-end{text-align:right}}.waits-row.warn .waits-end{color:var(--amber)}.waits-row.bad .waits-what{color:var(--ox)}.waits-note{margin:.6rem 0 0;font-size:var(--fs-xs);color:var(--ink-3)}.waits-note.warn{color:var(--amber)}.waits-note.bad{color:var(--ox)}.waits-kept{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.waits-keep{display:grid;grid-template-columns:1.6rem minmax(0,1fr);gap:.7rem;align-items:baseline;font-size:var(--fs-sm)}.waits-figure{text-align:right;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}.waits-text{color:var(--ink-2)}.waits-keep.warn .waits-figure{color:var(--amber)}.waits-keep.bad .waits-figure,.waits-keep.bad .waits-text{color:var(--ox)}.waits-asat{margin:.7rem 0 0;font-size:var(--fs-micro);letter-spacing:.04em;color:var(--ink-3)}.waits-hidden{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.1rem 0 .4rem}.waits-dots{display:flex;gap:.45rem}.waits-dots i{width:4px;height:4px;border-radius:50%;background:var(--rule-2)}.waits-hidden p{margin:0}.good{color:var(--pos)}.rings-row{margin-bottom:1.25rem}.section-head .spacer{margin-left:auto}.recent{display:grid;gap:1rem;margin-bottom:1.25rem;grid-template-columns:1fr;align-items:start}@media(min-width:860px){.recent{grid-template-columns:minmax(16rem,1fr) 2fr}}.recent .panel{margin-bottom:0}.row.picked{background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:inset 3px 0 0 var(--accent)}.row.picked .main strong{color:var(--accent-text)}.book-record-top{display:flex;gap:1.1rem;align-items:flex-start;flex-wrap:wrap}.book-record-main{flex:1 1 16rem;min-width:0;display:flex;flex-direction:column;gap:.65rem}.book-record h3{margin:0;font-size:var(--fs-md)}.book-facts{display:grid;grid-template-columns:max-content 1fr;gap:.3rem 1rem;margin:0;font-size:var(--fs-sm)}.book-facts dt{color:var(--ink-2)}.book-facts dd{margin:0;overflow-wrap:anywhere}.cover.record{width:8.5rem;height:11.5rem}.book-record .row-note{padding:.8rem 0 0;border-bottom:0}.book-record .row-form{margin-top:.8rem}.record-photos{display:flex;gap:.9rem;flex-wrap:wrap}.record-photos figure{margin:0;display:flex;flex-direction:column;gap:.3rem}.record-photos img{height:14rem;width:auto;max-width:100%;object-fit:contain;background:var(--well);border:1px solid var(--rule);border-radius:var(--r-xs)}.record-photos figcaption{font-size:var(--fs-micro);font-weight:560;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2)}.photo-pick{padding:0;border:0;background:none;width:100%;cursor:pointer;border-radius:var(--r-xs)}.photo-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.photo-pick:disabled{cursor:wait}.photo-thumb p{margin:0}.photo-thumb{width:11rem}.photo-thumb img{height:8rem}.modal .book-record{border:0;padding:0;margin:0}@media(max-width:560px){.record-photos img{height:11rem}}.covers-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));align-content:start}.cover-tile{display:flex;flex-direction:column;gap:.35rem;align-items:center;padding:.6rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-sm);cursor:pointer;text-align:center;color:inherit;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.cover-tile:hover{border-color:var(--accent)}.cover-tile.picked{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.cover-tile img,.cover-tile .cover-blank{width:5.5rem;height:7.5rem;border-radius:3px;border:1px solid var(--rule);background:var(--well)}.cover-tile img{object-fit:cover}.cover-tile .cover-blank{display:grid;place-items:center;padding:.4rem;font-size:var(--fs-xs);color:var(--ink-2);overflow:hidden}.cover-tile .cover-title{font-size:var(--fs-xs);font-weight:560;line-height:1.25}.book-record h4{margin:.5rem 0 .15rem;font-size:var(--fs-sm)}.book-record h4+p{margin:0}.record-history{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.2rem;font-size:var(--fs-sm)}
