:root{--accent: #c9a227;--ink: #1c1b1a;--surface: #faf7f2;--font-display: Georgia, "Times New Roman", serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--ink-55: rgba(28, 27, 26, .55);--ink-06: rgba(28, 27, 26, .06);--accent-06: rgba(201, 162, 39, .06);--surface-55: rgba(250, 247, 242, .55);--surface-40: rgba(250, 247, 242, .4);--surface-18: rgba(250, 247, 242, .18);--surface-14: rgba(250, 247, 242, .14);--surface-06: rgba(250, 247, 242, .06);--ink-38: rgba(28, 27, 26, .38);--hairline: rgba(28, 27, 26, .12);--card: #ffffff}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.shell{max-width:40rem;margin:0 auto;padding:2.5rem 1.5rem 5rem}h1,h2{font-family:var(--font-display);font-weight:400;margin:0}h1{font-size:2rem;letter-spacing:.01em}.overline{font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-55)}.overline--accent{color:var(--accent)}.muted{color:var(--ink-55)}.small{font-size:.875rem}.topbar{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:3rem}button{font:inherit;cursor:pointer}.btn-quiet{background:none;border:none;padding:0;color:var(--ink-55);font-size:.875rem}.btn-quiet:hover{color:var(--ink)}.btn-primary{width:100%;padding:.875rem 1rem;border:none;border-radius:.625rem;background:var(--ink);color:var(--surface);font-size:1rem}.btn-primary:disabled{opacity:.45;cursor:default}.btn-inline{width:auto;padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem}.row-between{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:1.25rem;margin-top:1.25rem}.field{display:block;margin-bottom:1.25rem}.field span{display:block;margin-bottom:.375rem}.field input{width:100%;padding:.8125rem 1rem;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:.625rem;outline:none}.field input:focus{border-color:var(--accent)}.signin{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.signin-card{width:100%;max-width:22.5rem}.signin-card h1{margin:.5rem 0 2.5rem}.roster-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}.roster-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.375rem .25rem;background:none;border:none;border-bottom:1px solid var(--hairline);text-align:left}.roster-row:hover{background:var(--accent-06)}.roster-name{font-family:var(--font-display);font-size:1.25rem}.roster-meta{margin-top:.125rem}.chevron{color:var(--ink-38);font-size:1.125rem}.profile-header{margin-bottom:2.5rem}.profile-header h1{margin:.375rem 0 1rem}.contact-lines div{margin-bottom:.125rem}.section{margin-top:3rem}.section>.overline,.section>.overline--accent{display:block;margin-bottom:1rem}.pref-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.75rem}.pref-cell{background:var(--card);border:1px solid var(--hairline);border-radius:.75rem;padding:.875rem 1rem}.pref-cell .value{font-size:1.0625rem;margin-top:.125rem}.pref-cell .value.unset{color:var(--ink-38)}.profile-editor .field:first-of-type{margin-top:.75rem}.pref-editor{display:grid;gap:1.25rem}.pref-edit-row .overline{display:block;margin-bottom:.5rem}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.5rem .875rem;font-size:.9375rem;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:999px}.chip:hover{border-color:var(--accent)}.chip--on{color:var(--surface);background:var(--ink);border-color:var(--ink)}.composer{margin-top:.5rem;padding-top:1.25rem;border-top:1px solid var(--hairline)}.composer textarea{width:100%;padding:.8125rem 1rem;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:.625rem;outline:none;resize:vertical}.composer textarea:focus{border-color:var(--accent)}.composer--vault{border-top-color:var(--surface-14)}.composer--vault textarea{color:var(--surface);background:var(--surface-06);border-color:var(--surface-18)}.composer--vault textarea::placeholder{color:var(--surface-40)}.composer--vault .btn-primary{background:var(--surface);color:var(--ink)}.fountain{background:var(--card);border:1px solid var(--hairline);border-left:3px solid var(--accent);border-radius:.75rem;padding:1.5rem 1.5rem .5rem}.vault{background:var(--ink);color:var(--surface);border-radius:.75rem;padding:1.5rem 1.5rem .5rem}.vault .entry{border-bottom-color:var(--surface-14)}.vault .entry .when,.vault .surface-note{color:var(--surface-55)}.entry{padding:1rem 0;border-bottom:1px solid var(--hairline)}.entry:last-child{border-bottom:none}.entry .when{color:var(--ink-55);font-size:.8125rem;margin-bottom:.25rem}.entry p{margin:0;white-space:pre-wrap}.surface-note{font-size:.8125rem;color:var(--ink-55);margin:0 0 1rem}.empty{padding:1rem 0 1.5rem;color:var(--ink-55)}.vault .empty{color:var(--surface-55)}.skeleton{border-radius:.5rem;background:linear-gradient(100deg,var(--ink-06) 40%,var(--hairline) 50%,var(--ink-06) 60%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}.boot{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.boot-card{max-width:30rem}.boot-card.refused{border-left:3px solid #b3261e;padding-left:1.5rem}.boot-card.refused h1{color:#b3261e;font-size:1.5rem}.boot-card code{font-size:.875rem;background:var(--ink-06);padding:.125rem .375rem;border-radius:.25rem}.error-line{color:#b3261e;font-size:.875rem;margin-top:.75rem}.subnav{display:flex;gap:1.5rem;margin:-1.5rem 0 2.5rem;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none}.subnav::-webkit-scrollbar{display:none}.subnav-item{flex:0 0 auto;white-space:nowrap}.subnav-item{background:none;border:none;padding:0 0 .75rem;color:var(--ink-55);font-size:.9375rem;border-bottom:2px solid transparent;margin-bottom:-1px}.subnav-item:hover{color:var(--ink)}.subnav-item.is-active{color:var(--ink);border-bottom-color:var(--accent)}.field select{width:100%;padding:.8125rem 1rem;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:.625rem;outline:none}.field select:focus,.field input[type=time]:focus,.field input[type=date]:focus{border-color:var(--accent)}.field--inline{margin-bottom:0}.field--inline>span{margin-bottom:.375rem}.inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin:1.25rem 0 .75rem}.inline-form .field--inline{flex:1 1 8rem}.inline-form .btn-inline{flex:0 0 auto}.window-list{list-style:none;margin:.5rem 0 0;padding:0}.window-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem .25rem;border-bottom:1px solid var(--hairline)}.window-list li.is-paused>span:first-child{color:var(--ink-38);text-decoration:line-through}.day-nav{display:inline-flex;align-items:center;gap:.5rem}.day-nav input[type=date]{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:.5rem;padding:.375rem .625rem;outline:none}.day-nav .btn-quiet{font-size:1.5rem;line-height:1}.appt-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}.appt-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem .25rem;border-bottom:1px solid var(--hairline)}.appt-main{display:flex;flex-direction:column;gap:.125rem}.appt-time{font-family:var(--font-display);font-size:1.125rem}.appt-who{font-size:1rem}.appt-row.is-cancelled .appt-time,.appt-row.is-cancelled .appt-who{color:var(--ink-38);text-decoration:line-through}.appt-actions,.appt-edit{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.appt-edit input{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline);border-radius:.5rem;padding:.375rem .625rem;outline:none}.appt-edit input:focus{border-color:var(--accent)}.change-list{list-style:none;margin:1.5rem 0 0;padding:0;border-top:1px solid var(--hairline)}.change-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem .25rem;border-bottom:1px solid var(--hairline)}.change-main{display:flex;flex-direction:column;gap:.125rem}.change-headline{font-family:var(--font-display);font-size:1.125rem}.change-row.needs-touch{padding-left:1rem;margin-left:-.75rem;border-left:3px solid var(--accent)}.touch-badge{flex:0 0 auto;font-size:.75rem;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:.25rem .75rem}
