:root{color:#18261f;font-synthesis:none;--green:#153d32;--border:#dce2de;--mobile-nav-height:68px;--keyboard-inset:0px;--viewport-offset-top:0px;--composer-max-height:144px;background:#f6f7f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-bottom:1rem}body{margin:0}.app-shell{min-height:100dvh}.skip-link{z-index:30;border:2px solid var(--green);background:#fff;padding:.75rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:.5rem}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,input,select,textarea,summary{scroll-margin-block:1rem}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.025em;margin-bottom:.35rem;font-size:1.65rem}h2{margin-bottom:.8rem;font-size:1.2rem}h3{font-size:1rem}a{color:var(--green)}header{border-bottom:1px solid var(--border);background:#fff}.header-inner,.nav-inner{align-items:center;gap:1rem;max-width:960px;margin:auto;padding:1rem;display:flex}.header-inner{justify-content:space-between}.brand{min-height:44px;color:var(--green);white-space:nowrap;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.account{color:#627167;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}nav{border-bottom:1px solid var(--border);background:#fff}.nav-inner{gap:.3rem;padding:.5rem 1rem;overflow-x:auto}.container{max-width:900px;margin:auto;padding:1.5rem 1rem}.login{max-width:440px;margin:auto;padding:4rem 1rem}.card{border:1px solid var(--border);background:#fff;border-radius:8px;margin-bottom:1rem;padding:1.25rem}.narrow{max-width:620px}.muted,.hint{color:#657269}.hint{margin:.4rem 0 1rem;font-size:.8rem}.local-note{color:#6d766f;margin-bottom:1rem;font-size:.78rem}.social-logins{gap:.75rem;display:grid}.social-logins:empty{display:none}.local-banner{background:#eef2ee;border-radius:4px;margin:1rem 0;padding:.5rem .75rem;font-size:.8rem}label{margin-bottom:.9rem;font-size:.9rem;font-weight:500;display:block}input,select,textarea{width:100%;min-width:0;max-width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #bac6be;border-radius:5px;min-height:48px;margin-top:.3rem;padding:.7rem .75rem;font-size:16px;display:block}input[type=date],input[type=time]{appearance:none;min-inline-size:0}input::-webkit-date-and-time-value{text-align:left}textarea{resize:vertical}input[type=checkbox]{width:auto;min-height:auto;margin:0 .5rem 0 0;display:inline-block}.check{cursor:pointer;align-items:center;gap:.5rem;min-height:48px;margin:.3rem 0;padding:.5rem 0;display:flex}.check input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #4b8972}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-grid>label{min-width:0}fieldset{border:0;min-width:0;margin:0;padding:0}button,.button{border:1px solid var(--green);background:var(--green);color:#fff;font:inherit;cursor:pointer;border-radius:5px;justify-content:center;align-items:center;min-height:44px;padding:.65rem 1rem;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){button:hover,.button:hover{filter:brightness(1.1)}}button:active:not(:disabled),.button:active{filter:brightness(.95)}button:disabled{cursor:not-allowed;opacity:.55}button.secondary,.button.secondary{color:var(--green);background:#fff;border-color:#cbd5cd}button.danger{color:#a32c2c;background:#fff;border-color:#e4c5c5}button.small{padding:.4rem .65rem;font-size:.83rem}.full{width:100%}.nav-item{color:#66746a;background:0 0;border-color:#0000;padding:.5rem .8rem;font-size:.9rem}.nav-item.active{color:var(--green);background:#edf3ef}.nav-icon{flex-shrink:0;width:22px;height:22px;display:none}.presets,.actions{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.actions{margin-top:1rem;margin-bottom:0}.presets button[aria-pressed=true]{border-color:var(--green);background:#edf3ef}.optional-fields{margin-top:.25rem}.optional-fields summary{color:var(--green)}.session-form fieldset:disabled .optional-fields summary{pointer-events:none}.session-editor{scroll-margin-top:1rem}.pagination .hint{align-self:center;margin:0}.notice{white-space:pre-wrap;overflow-wrap:anywhere;background:#edf6ef;border:1px solid #bad4c4;border-radius:5px;margin:.8rem 0;padding:.75rem 1rem;font-size:.9rem}.notice.error{color:#963328;background:#fff2f0;border-color:#e9c5c1}.range-picker{margin-bottom:.5rem}.day-group{margin-bottom:1.25rem}.day-group h2{color:#607066;margin:1rem 0 .5rem;font-size:.9rem}.session-row{border:1px solid var(--border);background:#fff;border-radius:5px;align-items:center;gap:1rem;margin-bottom:.4rem;padding:.8rem;display:flex}.session-info{flex:1;min-width:0}.session-info p{margin:0}.session-meta{color:#69766c;overflow-wrap:anywhere;font-size:.8rem}.session-fee{white-space:nowrap;font-weight:600}.badge{background:#eef1f0;border-radius:3px;margin-left:.4rem;padding:.1rem .35rem;font-size:.7rem;display:inline-block}.voided{color:#788078;background:#fafafa}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.metric{border:1px solid var(--border);background:#fff;border-radius:6px;padding:1rem}.metric span{color:#69766c;font-size:.8rem;display:block}.metric strong{overflow-wrap:anywhere;margin-top:.35rem;font-size:1.2rem;display:block}.metric strong,.session-fee,table{font-variant-numeric:tabular-nums}.table-scroll{overscroll-behavior-x:contain;min-width:0;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid #edf0ed;padding:.6rem .3rem}th{color:#617067;font-weight:500}td:last-child,th:last-child{text-align:right}details{margin-top:1rem}summary{cursor:pointer;min-height:44px;margin-bottom:.5rem;padding:.65rem 0;font-weight:500}.assistant-card{height:560px;min-height:380px;flex-direction:column;height:clamp(380px,65dvh,640px);display:flex}.assistant-info{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.assistant-info .hint{flex:1;margin:0}.assistant-info button{flex-shrink:0}.chat{overscroll-behavior-y:contain;flex-direction:column;flex:1;gap:.75rem;min-width:0;min-height:0;margin:.75rem 0;padding:.25rem;scroll-padding:.5rem;display:flex;overflow-y:auto}.chat-suggestions{flex-shrink:0;align-content:start}.chat>p{flex-shrink:0}.message{border:1px solid var(--border);background:#fff;border-radius:6px;flex-shrink:0;min-width:0;max-width:95%;padding:.9rem}.message.user{background:#edf3ef;align-self:flex-end}.message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.message-label{color:#657269;margin-bottom:.3rem;font-size:.75rem}.draft{background:#f5faf7;border:1px solid #adc7b7;border-radius:5px;min-width:0;margin-top:.75rem;padding:1rem}.draft h3{margin-bottom:.5rem}.draft p{margin-bottom:.25rem}.chat-form{flex-shrink:0;align-items:flex-end;gap:.6rem;display:flex}.chat-form textarea{min-height:48px;max-height:var(--composer-max-height);resize:none;flex:1;margin:0}.chat-form button{flex-shrink:0;min-height:48px}.chat-privacy{flex-shrink:0;margin:.5rem 0 0}.assistant-card>.notice{flex-shrink:0;max-height:100px;margin:0 0 .75rem;overflow-y:auto}.audit-entry{border-bottom:1px solid var(--border);padding:.6rem 0;font-size:.8rem}footer{text-align:center;color:#7c857f;padding:1rem;font-size:.75rem}@media (max-width:600px),(max-width:1000px) and (max-height:500px) and (pointer:coarse){html{scroll-padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 1rem)}.app-shell{padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px))}.header-inner{padding:.45rem max(1rem, env(safe-area-inset-right,0px)) .45rem max(1rem, env(safe-area-inset-left,0px));gap:.5rem}header{padding-top:env(safe-area-inset-top,0px)}.account{max-width:42%;font-size:.75rem}.brand{font-size:.95rem}.container{padding:1rem max(1rem, env(safe-area-inset-right,0px)) 1rem max(1rem, env(safe-area-inset-left,0px))}.app-nav{z-index:20;border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0px);border-bottom:0;position:fixed;inset:auto 0 0;box-shadow:0 -2px 12px #153d3208}.nav-inner{height:var(--mobile-nav-height);padding:.35rem max(.4rem, env(safe-area-inset-right,0px)) .35rem max(.4rem, env(safe-area-inset-left,0px));grid-template-columns:repeat(5,minmax(0,1fr));gap:.2rem;display:grid;overflow:visible}.nav-item{border-radius:7px;flex-direction:column;gap:.2rem;min-width:0;min-height:52px;padding:.2rem 0;font-size:.68rem;line-height:1.2}.nav-icon{display:block}.card{padding:1rem}.form-grid{gap:.7rem}.optional-grid{grid-template-columns:minmax(0,1fr);gap:0}.range-presets{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fee-presets{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.fee-presets button{min-width:0;padding-inline:.25rem;font-size:.78rem}button,.button,summary{min-height:48px}.form-actions{grid-template-columns:minmax(0,1fr);display:grid}.form-actions:has(>button:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-full{width:100%}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.metric{min-width:0;padding:.85rem}.metric:first-child{background:#edf3ef;border-color:#bed1c5;grid-column:1/-1}.metric:first-child strong{font-size:1.65rem}.metric:last-child{grid-column:1/-1}.metric strong{font-size:1.1rem}.session-row{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;padding:.9rem;display:grid}.session-info{grid-column:1/-1;min-width:0}.session-fee{white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:1rem}.session-action{min-width:76px}.session-editor{scroll-margin-top:1rem}.pagination .hint{text-align:center;width:100%}.pagination button{flex:1}.day-group h2{font-size:.95rem}.assistant-card{height:440px;min-height:0;height:clamp(260px, calc(100dvh - 290px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)), 760px);padding:.75rem}.assistant-info{align-items:flex-start}.assistant-info .hint{font-size:.75rem}.chat{padding:.2rem 0}.message{max-width:100%;padding:.75rem}.message.user{max-width:92%}.draft{padding:.75rem}.draft .actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.draft .actions button{min-width:0;padding-inline:.5rem}.chat-suggestions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.chat-suggestions button{text-align:left;justify-content:flex-start;font-size:.8rem}.chat-form{gap:.5rem}.chat-form button{padding-inline:.75rem}.chat-privacy{font-size:.73rem}.login{padding:max(2rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(1rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px))}footer{padding-bottom:1.25rem}[data-keyboard-open=true] .app-nav,[data-keyboard-open=true] .chat-privacy{display:none}[data-keyboard-open=true] .assistant-card{inset:calc(max(.5rem, env(safe-area-inset-top,0px)) + var(--viewport-offset-top)) max(.5rem, env(safe-area-inset-right,0px)) calc(var(--keyboard-inset) + .5rem) max(.5rem, env(safe-area-inset-left,0px));z-index:21;height:auto;margin:0;position:fixed}}@media (max-width:350px){.container{padding-inline:max(.75rem, env(safe-area-inset-left,0px)) max(.75rem, env(safe-area-inset-right,0px))}.card{padding:.85rem}.range-grid{grid-template-columns:minmax(0,1fr);gap:0}.fee-presets button{font-size:.75rem}.account{max-width:36%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
