@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap";:root{color:#242b25;font-synthesis:none;background:#f6f4ef;font-family:DM Sans,Arial,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}:root{--ink:#24312a;--forest:#1f4a39;--moss:#698562;--clay:#c96b50;--cream:#f5f1e9;--paper:#fffdf9;--line:#ddd6c8;--soft:#eef2ea;--danger:#a3402a}*{box-sizing:border-box}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.04em;font-family:Fraunces,Georgia,serif}button,input,select,textarea{font:inherit}textarea{resize:vertical}a{color:inherit;text-decoration:none}.shell{max-width:860px;min-height:100vh;margin:0 auto;padding-bottom:96px}.auth-page,.loading-screen{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card,.section-card,.hero-card,.tile,.empty-state{background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 24px #1f4a390d}.auth-card{width:100%;max-width:520px;padding:32px}.brand-lockup,.wordmark{align-items:center;gap:14px;display:flex}.brand-badge{background:var(--clay);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;font:700 1.1rem Fraunces,serif;display:inline-flex}.brand-badge.small{width:34px;height:34px}.wordmark{letter-spacing:.18em;font-size:.72rem;font-weight:700}.wordmark b{color:var(--forest);letter-spacing:0;font-size:.95rem;display:block}.eyebrow,.tile-kicker{color:var(--moss);letter-spacing:.14em;text-transform:uppercase;font:600 .7rem DM Mono,monospace}.lead,.muted,.support-note{color:#5d6b62;line-height:1.55}.lead{margin:12px 0 22px}.stack-form,.stack-page,.stack-list{gap:14px;display:grid}.stack-page{padding:24px 18px}.stack-list.compact{gap:10px}.topbar{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f1e9f5;justify-content:space-between;align-items:center;padding:16px 18px 12px;display:flex;position:sticky;top:0}.header-actions{align-items:center;gap:10px;display:flex}.icon-button,.avatar-link{background:var(--paper);border:1px solid var(--line);color:var(--forest);border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;position:relative}.avatar-link{font-weight:700}.icon{font-size:1rem}.count-badge{background:var(--clay);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;top:-4px;right:-4px}.count-badge.inline{position:static}.role-ribbon{flex-wrap:wrap;gap:8px;padding:0 18px 4px;display:flex}.role-pill,.status-pill{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:7px 10px;font:600 .74rem DM Mono,monospace;display:inline-flex}.role-pill{color:var(--forest);background:#dfe9db}.role-pill.alert,.status-pill.stale{color:var(--danger);background:#f9e1dc}.status-pill.open{color:#3b6331;background:#e3f0de}.status-pill.urgent,.status-pill.cancellation_recommended{color:#9a571f;background:#fdebd8}.status-pill.reserved,.status-pill.manual_pending{color:#2d4f83;background:#e5edf9}.status-pill.resolved{color:#516154;background:#edf1e9}.global-error,.form-note{color:var(--danger);padding:0 18px}.page-title{gap:8px;display:grid}.page-title h1{font-size:clamp(2.1rem,8vw,3.2rem);line-height:.98}.page-title p:last-child{color:#5d6b62}.hero-card{gap:18px;padding:20px;display:grid}.hero-card h2{font-size:2.6rem}.hero-metrics,.detail-grid,.action-grid{gap:12px;display:grid}.hero-metrics,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{background:var(--soft);border-radius:16px;padding:14px}.metric span{color:var(--moss);font-size:.78rem;display:block}.metric strong{color:var(--forest);font-size:1.4rem}.section-card{gap:14px;padding:18px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2{font-size:1.4rem}.section-action{color:var(--forest);font-weight:700}.tile{align-items:start;gap:14px;padding:16px;display:grid}.tile.compact,.mini-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.tile-stacked{gap:12px}.tile-side{color:#5d6b62;text-align:right;justify-items:end;gap:8px;display:grid}.request-card,.mini-row,.detail-grid{gap:12px;display:grid}.request-actions{gap:10px;display:grid}.primary,.secondary-button{border:0;border-radius:14px;justify-content:center;align-items:center;min-height:46px;padding:0 16px;font-weight:700;display:inline-flex}.primary{background:var(--forest);color:#fff}.primary.small{min-height:42px}.secondary-button{border:1px solid var(--line);color:var(--forest);background:0 0}.text-button{color:var(--forest);background:0 0;border:0;padding:0;font-weight:700}.notice{border-radius:16px;padding:14px 16px}.notice.warning{color:#6b4b18;background:#fcf0de}.notice.info{color:#355043;background:#ebf0ea}.empty-state{gap:8px;padding:18px;display:grid}.bottom-nav{border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));z-index:11;background:#fffdf9fa;grid-auto-flow:column;gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.bottom-nav a{color:#52635a;border-radius:12px;place-items:center;gap:2px;min-width:72px;padding:8px 10px;display:grid}.bottom-nav a.active{background:var(--soft);color:var(--forest);font-weight:700}.update-banner{color:var(--forest);background:#eef4ea;padding:10px 18px}.thread{gap:12px}.bubble{border-radius:18px;gap:10px;padding:14px;display:grid}.bubble.incoming{background:#f3efe6}.bubble.outgoing{background:#e6f0e8}.bubble header,.bubble footer,.inline-actions,.reaction-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.reaction-row{justify-content:flex-start}.reaction-button,.attachment-link{border:1px solid var(--line);color:var(--forest);background:#fff;border-radius:999px;padding:6px 10px}.composer-box{border:1px solid var(--line);border-radius:16px;width:100%;min-height:120px;padding:14px}.otp-fieldset{border:0;margin:0;padding:0}.otp-inputs{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.otp-inputs input,.stack-form input,.stack-form select,.composer-box{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:14px;min-height:48px;padding:12px 14px}.otp-inputs input{text-align:center;padding:0;font-size:1.5rem;font-weight:700}input:focus,select:focus,textarea:focus{border-color:var(--forest);outline:none;box-shadow:0 0 0 3px #1f4a391f}.back-link{color:var(--forest);align-items:center;gap:8px;font-weight:700;display:inline-flex}.loading-screen{background:var(--cream);color:var(--forest);text-align:center;justify-items:center;gap:14px;display:grid}.spinner{border:4px solid #d8e0d6;border-top-color:var(--forest);border-radius:50%;width:42px;height:42px;animation:1s linear infinite spin}.admin-controls{gap:8px;display:grid}.subsection{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.segmented{background:#e4e7df;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segmented button{color:#52635a;background:0 0;border:0;border-radius:12px;min-height:40px}.segmented .selected{background:var(--paper);color:var(--forest);font-weight:700}.danger{color:var(--danger)}@media (width>=700px){.stack-page{padding:32px 24px}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tile,.request-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-controls{grid-template-columns:repeat(2,auto);justify-content:end;align-items:center}}@keyframes spin{to{transform:rotate(360deg)}}
