.offline-banner[data-v-ac5c0a29]{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px calc(8px + env(safe-area-inset-top));background:var(--danger);color:#fff;font-size:.82rem;font-weight:650}.offline-slide-enter-active[data-v-ac5c0a29],.offline-slide-leave-active[data-v-ac5c0a29]{transition:transform .25s ease,opacity .25s ease}.offline-slide-enter-from[data-v-ac5c0a29],.offline-slide-leave-to[data-v-ac5c0a29]{transform:translateY(-100%);opacity:0}.loading-state[data-v-ed4ebdf2]{display:flex;flex-direction:column;align-items:center;gap:14px;padding:48px 16px}.loading-spinner[data-v-ed4ebdf2]{width:28px;height:28px;border:2.5px solid var(--border-soft);border-top-color:var(--brand);border-radius:50%;animation:spin-ed4ebdf2 .65s linear infinite}@keyframes spin-ed4ebdf2{to{transform:rotate(360deg)}}.loading-message[data-v-ed4ebdf2]{margin:0;color:var(--text-muted);font-size:.84rem;font-weight:500}.mobile-screen-no-pad[data-v-1d4f2e37]{padding:0}.login-logo[data-v-1d4f2e37]{height:36px;width:auto}.page-fade-enter-active[data-v-1d4f2e37]{transition:opacity .15s ease}.page-fade-leave-active[data-v-1d4f2e37]{transition:opacity .1s ease}.page-fade-enter-from[data-v-1d4f2e37],.page-fade-leave-to[data-v-1d4f2e37]{opacity:0}:root{--primary: #4e6342;--primary-dark: #3d5034;--primary-light: #7a9467;--primary-bg: rgba(78,99,66,.08);--primary-bg-hover: rgba(78,99,66,.14);--gradient-start: #4e6342;--gradient-end: #7a9467;--background: #f8faf7;--surface: #ffffff;--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--success: #16a34a;--accent: #F59E0B;--warning: #d97706;--error: #dc2626;--danger: #dc2626;--border: rgba(17,24,39,.09);--border-medium: rgba(17,24,39,.15);--shadow: 0 2px 8px rgba(17,24,39,.08), 0 1px 3px rgba(17,24,39,.05);--shadow-lg: 0 4px 16px rgba(17,24,39,.1), 0 2px 6px rgba(17,24,39,.06);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--text-primary);background:var(--background)}@media(prefers-color-scheme:dark){:root{--background: #0F1117;--surface: #1A1F2E;--text-primary: #F1F5F9;--text-secondary: #94A3B8;--text-muted: #64748B;--border: rgba(255,255,255,.08);--border-medium: rgba(255,255,255,.13);--shadow: 0 2px 8px rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.2);--shadow-lg: 0 4px 16px rgba(0,0,0,.4), 0 2px 6px rgba(0,0,0,.25)}}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}h1,h2,h3,h4,h5,h6{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0}p{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}.muted{color:var(--text-secondary)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;color:var(--text-secondary)}.page{min-height:100vh;padding:1.25rem;background:radial-gradient(ellipse at 8% 8%,rgba(78,99,66,.08),transparent 38%),radial-gradient(ellipse at 92% 5%,rgba(78,99,66,.06),transparent 32%),radial-gradient(ellipse at 50% 98%,rgba(245,158,11,.06),transparent 42%),var(--background)}.form-page{display:grid;place-items:center}.form-card{width:min(620px,100%);display:grid;gap:.8rem;padding:1.35rem;border-radius:1.25rem;border:1px solid rgba(0,0,0,.08);background:var(--surface);box-shadow:var(--shadow)}.card{width:min(820px,100%);margin:0 auto;border-radius:1.1rem;border:1px solid rgba(0,0,0,.08);background:var(--surface);padding:1.25rem;box-shadow:var(--shadow)}.field-label{font-size:.9rem;font-weight:600;margin-top:.25rem}.field-input{width:100%;border:1px solid var(--border);border-radius:.75rem;background:#fff;color:var(--text-primary);padding:.85rem .95rem;transition:border-color .12s ease,box-shadow .12s ease}.field-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #4e634226}.btn-primary,.btn-secondary,.btn-ghost,.btn-danger{border-radius:999px;border:1px solid transparent;cursor:pointer;font-weight:700;transition:transform .1s ease,box-shadow .12s ease,opacity .12s ease}.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled,.btn-danger:disabled{cursor:not-allowed;opacity:.65}.btn-primary{background:var(--primary);color:#fff;padding:.9rem 1.3rem;box-shadow:0 4px 14px -6px #4e634280}.btn-primary:not(:disabled):hover{transform:translateY(-1px);background:var(--primary-dark);box-shadow:0 8px 20px -8px #4e63428c}.btn-secondary:not(:disabled):hover{transform:translateY(-1px);background:var(--primary-bg)}.btn-ghost:not(:disabled):hover{transform:translateY(-1px);background:var(--primary-bg-hover)}.btn-primary.compact{padding:.7rem 1rem}.btn-secondary{background:#fff;color:var(--primary);border-color:var(--primary);padding:.8rem 1.2rem}.btn-secondary.compact,.btn-ghost.compact,.btn-danger.compact{padding:.5rem .75rem;font-size:.82rem}.btn-ghost{background:var(--primary-bg);color:var(--primary);border-color:#4e634233;padding:.7rem 1rem}.btn-danger{background:#fff1f2;color:var(--error);border-color:#d32f2f33;padding:.8rem 1rem}.alert{border-radius:.75rem;padding:.72rem .85rem;font-size:.94rem}.alert.error{background:#d32f2f1a;color:var(--error)}.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr;background:linear-gradient(160deg,var(--background) 0%,rgba(78,99,66,.04) 100%)}.auth-panel{margin:auto;width:min(480px,100%);padding:1.5rem}.auth-brand-mark{width:72px;height:72px;border-radius:999px;display:grid;place-items:center;font-size:1.75rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#fff;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--primary),var(--primary-light));box-shadow:0 8px 32px -8px #4e634273}.auth-title{font-size:clamp(1.6rem,2.5vw,2rem)}.auth-subtitle{margin-top:.4rem;margin-bottom:1.4rem;color:var(--text-secondary)}.auth-form{display:grid;gap:.72rem}.auth-row.right{display:flex;justify-content:flex-end}.text-link{color:var(--primary-light);font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.auth-footnote{color:var(--text-secondary);text-align:center;padding-top:.5rem}.verify-code-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.verify-digit{text-align:center;font-size:1.35rem;font-weight:700;border:1px solid var(--border);border-radius:.72rem;padding:.72rem 0;background:#fff}.verify-digit:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #4e634226}.auth-side{display:none;background:linear-gradient(145deg,var(--primary),var(--primary-light));color:#fff;padding:3rem 2.5rem;align-items:center;justify-content:center}.auth-side-content{max-width:400px}.auth-side-icon{font-size:2.5rem;margin-bottom:1.2rem}.auth-side-content h2{font-size:clamp(1.8rem,3vw,2.4rem);color:#fff;line-height:1.2;margin-bottom:1rem}.auth-side-content p{color:#ffffffd9;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.auth-side-features{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}.auth-side-features li{color:#ffffffe6;font-size:.95rem;font-weight:600}@media(min-width:860px){.auth-page{grid-template-columns:1fr 1fr}.auth-side{display:flex}}.profiles-page{min-height:100vh;padding:1.25rem;background:radial-gradient(ellipse at 8% 8%,rgba(78,99,66,.08),transparent 38%),radial-gradient(ellipse at 92% 5%,rgba(78,99,66,.06),transparent 32%),var(--background)}.profiles-header{display:flex;justify-content:space-between;align-items:end;gap:1rem;max-width:980px;margin:0 auto 1rem}.profiles-header h1{font-size:clamp(1.5rem,2.2vw,2rem)}.profiles-actions{display:flex;gap:.55rem}.profiles-card{max-width:980px;margin:0 auto;border-radius:1.1rem;border:1px solid rgba(0,0,0,.08);background:var(--surface);box-shadow:var(--shadow);padding:1.1rem}.profiles-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.8rem}.profiles-toolbar-actions{display:flex;gap:.5rem}.status-block{display:grid;gap:.55rem;border:1.5px dashed rgba(78,99,66,.2);border-radius:1rem;padding:2rem 1.25rem;color:var(--text-secondary);text-align:center;place-items:center;background:#4e634208}.status-block.empty{place-items:center;text-align:center}.profiles-list{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}.profile-item{width:100%;border:1px solid rgba(0,0,0,.07);background:#fff;border-radius:1.1rem;padding:.9rem 1rem;display:grid;grid-template-columns:auto 1fr auto;gap:.9rem;align-items:center;text-align:left;cursor:pointer;transition:border-color .14s ease,transform .12s ease,box-shadow .14s ease;box-shadow:0 2px 8px -4px #4e634214}.profile-item:hover{border-color:#4e634247;box-shadow:0 8px 28px -12px #4e634238;transform:translateY(-2px)}.avatar{width:56px;height:56px;border-radius:999px;object-fit:cover;border:2px solid rgba(78,99,66,.14)}.avatar.initials{display:grid;place-items:center;background:linear-gradient(135deg,#4e634224,#7a946733);color:var(--primary);font-weight:800}.profile-copy{display:grid;gap:.15rem}.profile-copy h3{font-size:1rem}.profile-copy p{color:var(--text-secondary);font-size:.9rem}.date-ideas-page .profiles-card{display:grid;gap:.9rem}.ideas-list{margin:0;padding:0;list-style:none;display:grid;gap:.7rem}.idea-card{border:1px solid rgba(0,0,0,.07);border-radius:1.1rem;background:#fff;padding:.85rem;display:grid;gap:.8rem;box-shadow:0 2px 8px -4px #4e634214;transition:box-shadow .14s ease,transform .12s ease}.idea-card:hover{box-shadow:0 6px 20px -8px #4e634238;transform:translateY(-1px)}.idea-main{all:unset;display:grid;grid-template-columns:92px 1fr;gap:.8rem;cursor:pointer}.idea-thumb{width:92px;height:92px;border-radius:.85rem;object-fit:cover;border:1px solid rgba(0,0,0,.07)}.idea-thumb.placeholder{display:grid;place-items:center;font-size:1.7rem;background:linear-gradient(145deg,#4e634224,#7a946729)}.idea-copy{display:grid;gap:.35rem}.idea-copy h3{font-size:1.03rem}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.idea-meta{display:flex;flex-wrap:wrap;gap:.35rem}.pill{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.pill.pinned{background:#4e63421a;border-color:#4e634238;color:var(--primary-dark)}.idea-actions{display:flex;gap:.45rem;justify-content:flex-end}.load-more-row{display:flex;justify-content:center}.detail-card{gap:.9rem}.detail-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.detail-image{width:100%;border-radius:.9rem;max-height:320px;object-fit:cover;border:1px solid var(--border)}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:.6rem}.detail-stats>div{border:1px solid var(--border);border-radius:.75rem;padding:.7rem;text-align:center;background:#fff}.detail-stats strong{display:block;color:var(--primary);font-size:1.1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.detail-stats span{color:var(--text-secondary);font-size:.8rem}.toggle-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.65rem;color:var(--text-primary)}.toggle-row label{display:inline-flex;align-items:center;gap:.4rem}.tabs-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tab-pill{border:1px solid rgba(78,99,66,.22);color:var(--primary);background:var(--primary-bg);padding:.5rem .8rem;border-radius:999px;font-weight:700;cursor:pointer}.tab-pill.active{background:var(--primary);color:#fff;border-color:transparent}.thread-open{all:unset;flex:1;text-align:left;cursor:pointer}.thread-meta{display:grid;justify-items:end;gap:.35rem;min-width:3.5rem}.notes-section{margin-top:.6rem;display:grid;gap:.6rem}.receiver-list{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}.receiver-row{width:100%;border:1px solid rgba(0,0,0,.07);border-radius:1rem;background:#fff;display:flex;align-items:center;gap:.75rem;padding:.8rem .9rem;text-align:left;box-shadow:0 1px 4px #0000000a}.receiver-copy{display:grid;gap:.2rem}.notes-list{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}.note-item{border:1px solid var(--border);border-radius:.75rem;padding:.7rem;background:#fff}.note-actions{margin-top:.5rem;display:flex;gap:.45rem}.note-compose{display:flex;gap:.5rem;align-items:center}.dates-list{margin:0;padding:0;list-style:none;display:grid;gap:.65rem}.date-item{border:1px solid rgba(0,0,0,.07);border-radius:1.1rem;background:#fff;padding:.9rem 1rem;display:grid;gap:.65rem;box-shadow:0 2px 8px -4px #4e634214;transition:box-shadow .14s ease,transform .12s ease}.date-item:hover{box-shadow:0 6px 20px -8px #4e634233;transform:translateY(-1px)}.date-main{display:flex;flex:1;justify-content:space-between;align-items:center;gap:.8rem}.date-main-copy{all:unset;flex:1;text-align:left;cursor:pointer}.date-main h3{font-size:1rem;margin-bottom:.15rem}.thread-avatar{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;margin:0;width:44px;height:44px;border-radius:999px;border:1px solid var(--border);overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:#f8fafc;color:var(--text-secondary);font-weight:700;flex-shrink:0}.thread-avatar img{width:100%;height:100%;object-fit:cover}.date-actions{display:flex;gap:.5rem}.week-nav{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.5rem 0}.slots-grid{display:grid;gap:.8rem}.day-group{border:1px solid var(--border);border-radius:.75rem;padding:.65rem;background:#fff}.day-group h3{font-size:.95rem;margin-bottom:.45rem}.slot-buttons{display:flex;flex-wrap:wrap;gap:.45rem}.slot-btn{padding:.48rem .7rem;border-radius:.65rem}.slot-btn.active{background:var(--primary);color:#fff;border-color:transparent}.json-preview{margin:0;padding:.8rem;border-radius:.75rem;border:1px solid var(--border);background:#0f172a;color:#cbd5e1;overflow:auto;font-size:.83rem}.schedule-page .profiles-card{display:grid;gap:.8rem}.legend-row{display:flex;flex-wrap:wrap;gap:.4rem}.legend-chip{padding:.22rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid transparent}.legend-chip.available{background:#4e634224;color:var(--primary)}.legend-chip.booked{background:#38bd5e29;color:#166534}.legend-chip.blocked{background:#d32f2f1f;color:#991b1b}.legend-chip.past{background:#0f172a14;color:#475569}.calendar-wrap{overflow:auto}.calendar-grid{min-width:760px;display:grid;grid-template-columns:52px repeat(7,minmax(90px,1fr));gap:2px}.grid-corner{height:46px}.day-head{height:46px;border-radius:.55rem;border:1px solid var(--border);background:#fff;display:grid;place-items:center}.day-name{font-size:.74rem;color:var(--text-secondary)}.day-num{font-weight:700;line-height:1}.hour-label{height:38px;display:grid;place-items:center;font-size:.7rem;color:var(--text-secondary)}.slot-cell{height:38px;border:1px solid var(--border);border-radius:.4rem;background:#fff;color:var(--primary);font-size:.67rem;font-weight:700;cursor:pointer}.slot-cell.selected{background:#4e634229}.slot-cell.booked{background:#38bd5e33;color:#166534}.slot-cell.blocked{background:#d32f2f1f}.slot-cell.past{background:#0f172a14;color:#64748b}.schedule-settings-card{gap:1rem}.settings-card{display:grid;gap:1.25rem}.settings-block{border:1px solid var(--border);border-radius:1.1rem;padding:1.25rem;display:grid;gap:.85rem;background:var(--primary-bg);box-shadow:0 1px 6px #0000000a}.settings-block h2,.settings-block h3{margin:0}.date-range-row{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:.5rem;align-items:center}.chip-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.chip{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:700;color:var(--text-secondary);background:#fff}.hours-groups{display:grid;gap:.6rem}.viewer-page{background:radial-gradient(circle at 80% 0%,rgba(78,99,66,.07),transparent 35%),radial-gradient(circle at 20% 20%,rgba(78,99,66,.05),transparent 32%),var(--background)}.viewer-enter-page .auth-panel{width:min(560px,100%)}.viewer-card{width:min(980px,100%);margin:0 auto;border:1px solid rgba(0,0,0,.08);border-radius:1.25rem;background:#fff;box-shadow:var(--shadow);padding:1.1rem;display:grid;gap:1rem}.profile-nav{width:min(980px,100%);margin:0 auto .9rem;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}.profile-tab{text-align:center;text-decoration:none;color:var(--primary);font-weight:700;font-size:.8rem;letter-spacing:.01em;padding:.62rem .5rem;border:1.5px solid rgba(78,99,66,.22);border-radius:.9rem;background:var(--primary-bg);transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,color .14s ease}.profile-tab.active{color:#fff;border-color:transparent;background:var(--primary);box-shadow:0 4px 14px -4px #4e634273}.viewer-nav{width:min(980px,100%);margin:0 auto .9rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.viewer-tab{text-align:center;text-decoration:none;color:var(--primary);font-weight:700;font-size:.85rem;letter-spacing:.01em;padding:.65rem;border:1.5px solid rgba(78,99,66,.22);border-radius:.9rem;background:var(--primary-bg);transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,color .14s ease}.viewer-tab.active{color:#fff;border-color:transparent;background:var(--primary);box-shadow:0 4px 14px -4px #4e634273}.viewer-nav-message{width:min(980px,100%);margin:-.35rem auto .8rem;color:var(--text-secondary);font-size:.92rem}.viewer-nav-actions{width:min(980px,100%);margin:-.35rem auto .6rem;display:flex;justify-content:flex-end}.viewer-nav-actions-left{justify-content:flex-start;margin-top:0;margin-bottom:.45rem}.idea-as-card{border:1px solid var(--border);border-radius:.9rem;padding:.65rem;background:#fff}.profile-banner{display:flex;gap:1rem;align-items:flex-end;position:relative;overflow:hidden;border-radius:1.25rem;min-height:210px;padding:1.35rem 1.25rem;background:linear-gradient(155deg,var(--primary-dark),var(--primary-light));color:#fff}.profile-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(10,4,24,.75) 0%,rgba(10,4,24,.18) 55%,transparent 100%);pointer-events:none;z-index:1}.profile-banner>*{position:relative;z-index:2}.profile-banner-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.profile-banner-photo{width:92px;height:92px;border-radius:999px;border:3px solid rgba(255,255,255,.9);object-fit:cover;flex-shrink:0;box-shadow:0 4px 20px #0000004d}.profile-banner .muted{color:#ffffffb8}.profile-name-link,.profile-location-link{all:unset;display:block;cursor:pointer}.profile-name-link{color:#fff;font-size:1.35rem;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.2}.profile-location-link{color:#ffffffb8;font-size:.9rem}.settings-link-title{all:unset;display:inline-flex;align-items:center;gap:.4rem;font-weight:700;cursor:pointer;margin-bottom:.45rem}.viewer-ideas-title{display:flex;align-items:center;gap:.55rem}.viewer-ideas-avatar{width:30px;height:30px;border-radius:999px;border:1px solid var(--border);object-fit:cover}.contact-list{display:grid;gap:.55rem}.contact-item{text-decoration:none;color:inherit;border:1px solid var(--border);border-radius:.72rem;padding:.62rem .7rem;display:grid;gap:.15rem}.contact-item-btn{width:100%;text-align:left;background:#fff}.upload-preview{width:100%;max-height:320px;object-fit:cover;border-radius:.8rem;border:1px solid var(--border)}.upload-btn{position:relative;overflow:hidden}.upload-btn.disabled{opacity:.7;pointer-events:none}.upload-progress{margin:.2rem 0 0;font-size:.84rem;color:var(--text-secondary);font-weight:700}.hidden-file-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.image-button-reset{border:0;padding:0;background:transparent;cursor:pointer}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.gallery-cell{display:grid;gap:.28rem}.gallery-tile{width:100%;aspect-ratio:1 / 1;border-radius:.75rem;object-fit:cover;border:1px solid rgba(0,0,0,.07);transition:transform .14s ease,box-shadow .14s ease}.gallery-tile:hover{transform:scale(1.02);box-shadow:0 6px 20px -8px #00000040}.gallery-remove-btn{border:1px solid rgba(211,47,47,.18);color:var(--error);background:#fff1f2;border-radius:.5rem;padding:.28rem .42rem;font-size:.76rem;font-weight:700}.chevron{font-size:1.35rem;color:var(--text-secondary)}.form-actions{margin-top:.7rem;display:flex;gap:.55rem;justify-content:end}.form-actions.split{justify-content:space-between;align-items:center}.form-actions-right{display:flex;gap:.55rem}.onboarding-page{background:radial-gradient(circle at 12% 0%,rgba(78,99,66,.1),transparent 32%),radial-gradient(circle at 88% 10%,rgba(78,99,66,.07),transparent 30%),var(--background)}.onboarding-shell{width:min(980px,100%);margin:0 auto;display:grid;gap:.75rem}.onboarding-header{display:flex;align-items:center;justify-content:space-between}.onboarding-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem}.onboarding-progress-item{border:1px solid var(--border);background:#fff;border-radius:.65rem;padding:.38rem .5rem;text-align:center}.onboarding-progress-item span{font-size:.74rem;color:var(--text-secondary);font-weight:700}.onboarding-progress-item.active{border-color:transparent;background:linear-gradient(135deg,#4e634229,#7a946729)}.onboarding-card{border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow);background:#fff;padding:1rem;display:grid;gap:.8rem}.onboarding-hero{border-radius:1.1rem;background:linear-gradient(140deg,var(--gradient-start),var(--gradient-end));color:#fff;padding:1.25rem;display:grid;gap:.4rem;box-shadow:0 10px 32px -12px #4e634266,inset 0 1px #ffffff26}.onboarding-feature-list{margin:0;padding:0 0 0 1rem;display:grid;gap:.35rem}.onboarding-idea-card{gap:.55rem}.onboarding-idea-check{display:flex;align-items:center;gap:.55rem}.onboarding-photo-picker{display:grid;justify-items:center;gap:.45rem;margin:.25rem 0 .85rem}.onboarding-photo-placeholder,.onboarding-photo-preview{width:104px;height:104px;border-radius:999px;border:1px solid var(--border)}.onboarding-photo-placeholder{display:inline-flex;align-items:center;justify-content:center;font-size:2rem;color:var(--text-secondary);background:#f8fafc}.onboarding-photo-preview{object-fit:cover}.onboarding-success{background:#38bd5e1f;color:#166534}.chat-card{max-width:820px}.chat-date-header{text-align:left;border:1px solid var(--border);border-radius:.75rem;background:#f8fafc;color:var(--text-secondary);font-weight:700;padding:.6rem .75rem;cursor:pointer}.chat-shell{display:grid;gap:.75rem}.chat-messages{height:min(58vh,560px);overflow:auto;border:1px solid rgba(0,0,0,.07);border-radius:1rem;background:#f8f6ff;padding:.9rem;display:grid;align-content:start;gap:.5rem}.chat-row{display:flex;justify-content:flex-start}.chat-row.me{justify-content:flex-end}.chat-bubble{max-width:min(72ch,82%);padding:.65rem .82rem;border-radius:.25rem 1rem 1rem;border:1px solid rgba(0,0,0,.07);background:#fff;display:grid;gap:.25rem;box-shadow:0 1px 4px #0000000d}.chat-bubble.me{border-top-left-radius:.85rem;border-top-right-radius:.2rem;border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end))}.chat-sender{font-size:.74rem;font-weight:700;color:var(--text-secondary)}.chat-time{font-size:.72rem;color:#33333394}.chat-bubble.me .chat-time{color:#ffffffc7}.chat-compose{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:end}.chat-image{width:min(320px,100%);border-radius:.6rem;border:1px solid var(--border)}.chat-actions{display:flex;flex-wrap:wrap;gap:.35rem}.chat-reaction{font-size:.9rem}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a47;display:grid;align-items:end;z-index:60}.sheet-card{background:#fff;border-radius:1rem 1rem 0 0;border:1px solid var(--border);padding:1rem;display:grid;gap:.6rem}.sheet-row{display:flex;align-items:center;gap:.6rem}.profile-summary-card{width:100%;border:1px solid var(--border);background:#fff;border-radius:14px;padding:.8rem;display:flex;align-items:center;gap:.75rem;text-align:left;margin-bottom:1rem}.profile-summary-avatar{width:2.75rem;height:2.75rem;border-radius:999px;object-fit:cover;background:#eff4f8}.profile-summary-copy{display:grid;gap:.2rem}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#141c2873;display:grid;align-items:end}.idea-modal-sheet{background:#fff;border-radius:1rem 1rem 0 0;border:1px solid var(--border);padding:1rem 1rem 1.25rem;max-height:min(80vh,42rem);overflow:auto}.idea-modal-image{width:100%;max-height:12.5rem;object-fit:cover;border-radius:.75rem;margin:.75rem 0}@media(min-width:900px){.auth-page{grid-template-columns:minmax(420px,540px) 1fr}.auth-panel{width:min(520px,100%);padding:3rem}.auth-side{display:grid;place-items:center;background:linear-gradient(155deg,var(--primary-dark) 0%,var(--primary) 60%,var(--primary-light) 100%);color:#fff;padding:2rem;position:relative;overflow:hidden}.auth-side:before{content:"";position:absolute;top:-30%;right:-20%;width:70%;aspect-ratio:1;background:radial-gradient(circle,rgba(255,255,255,.09),transparent 70%);pointer-events:none}.auth-side:after{content:"";position:absolute;bottom:-20%;left:-10%;width:55%;aspect-ratio:1;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 70%);pointer-events:none}.auth-side-content{max-width:400px;display:grid;gap:1rem;position:relative;z-index:1}.auth-side h2{font-size:2.5rem;line-height:1.15}.auth-side p{opacity:.88;line-height:1.65;font-size:1.05rem}}@media(max-width:640px){.profiles-header,.profiles-toolbar{flex-direction:column;align-items:stretch}.profiles-actions,.profiles-toolbar-actions{justify-content:stretch}.profiles-actions>button,.profiles-toolbar-actions>button,.form-actions>button,.form-actions-right>button{flex:1}.form-actions,.form-actions-right{flex-direction:column}.detail-header{flex-direction:column;align-items:stretch}.idea-main{grid-template-columns:1fr}.idea-thumb{width:100%;height:170px}.idea-actions>button{flex:1}.note-compose{flex-direction:column;align-items:stretch}.note-actions>button{flex:1}.date-actions{flex-direction:column}.date-actions>button{flex:1}.week-nav{flex-direction:column;align-items:stretch}.date-range-row{grid-template-columns:1fr}.profile-nav,.viewer-nav{position:fixed;bottom:0;left:0;right:0;width:100%;margin:0;padding:.55rem .75rem env(safe-area-inset-bottom,.55rem);border-radius:0;background:#fffffff7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(0,0,0,.08);z-index:50;gap:.3rem;grid-template-columns:repeat(5,minmax(0,1fr));box-shadow:0 -4px 20px -8px #4e63421f}.viewer-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-tab,.viewer-tab{font-size:.72rem;padding:.48rem .3rem;border-radius:.65rem}.page:has(.profile-nav),.page:has(.viewer-nav){padding-bottom:calc(5rem + env(safe-area-inset-bottom,0px))}.profile-banner{min-height:180px;padding:1rem}.profile-banner-photo{width:76px;height:76px}.form-actions.split{align-items:stretch}.chat-compose,.onboarding-progress{grid-template-columns:1fr}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#4e634238;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#4e634261}:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px}.onboarding-card-simple{max-width:720px}.onboarding-feature-grid{display:grid;gap:.9rem;margin-top:.5rem}.onboarding-feature-grid article{border:1px solid rgba(78,99,66,.14);border-radius:.85rem;padding:.85rem;background:#fff}.public-chats-shell,.public-chat-room{display:grid;gap:1.1rem}.public-chats-header{display:flex;gap:.75rem;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding-bottom:.85rem;border-bottom:1px solid var(--border)}.public-chats-actions{display:flex;gap:.5rem;flex-shrink:0}.distance-chips{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.distance-chip{border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--text-secondary);padding:.3rem .75rem;font-size:.82rem;font-weight:700;cursor:pointer;transition:border-color .1s ease,background .1s ease,color .1s ease}.distance-chip:hover{border-color:var(--primary);color:var(--primary)}.distance-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.public-composer{display:grid;gap:.6rem;background:var(--primary-bg);border:1px solid rgba(78,99,66,.15);border-radius:1rem;padding:.9rem}.public-composer-label{font-weight:700;font-size:.88rem;color:var(--primary);display:flex;align-items:center;gap:.4rem}.public-composer-actions{display:flex;justify-content:flex-end;gap:.5rem}.public-thread-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}.public-thread-item{display:grid;grid-template-columns:1fr auto;gap:.75rem;border:1px solid var(--border);border-radius:.95rem;padding:.85rem .9rem;background:#fff;transition:border-color .12s ease,box-shadow .12s ease,transform .1s ease}.public-thread-item:hover{border-color:#4e634238;box-shadow:0 4px 16px -8px #4e63422e;transform:translateY(-1px)}.public-thread-main{text-align:left;border:none;background:transparent;padding:0;cursor:pointer;display:grid;gap:.35rem;min-width:0}.public-thread-title{font-weight:700;font-size:.97rem;line-height:1.4}.public-thread-meta{font-size:.8rem;color:var(--text-secondary)}.category-pill-row{display:flex;align-items:center;gap:.4rem}.category-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.16rem .52rem;font-size:.72rem;font-weight:700;color:var(--primary);border:1px solid rgba(78,99,66,.25);background:var(--primary-bg)}.public-thread-side{display:flex;flex-direction:column;gap:.4rem;align-items:flex-end;flex-shrink:0}.vote-controls{display:flex;align-items:center;gap:.2rem}.vote-score{min-width:1.6rem;text-align:center;font-weight:700;font-size:.9rem}.vote-btn{min-width:2rem;min-height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;background:transparent;cursor:pointer;color:var(--text-secondary);font-size:.85rem;transition:background .1s ease,color .1s ease,border-color .1s ease;padding:0}.vote-btn:hover:not(:disabled){background:var(--primary-bg);color:var(--primary)}.vote-btn.selected{border-color:var(--primary);color:var(--primary);background:#4e63421f}.vote-btn.selectedDown{border-color:var(--error);color:var(--error);background:#fee2e2}.vote-btn:disabled{opacity:.5;cursor:not-allowed}.my-badge{font-size:.74rem;font-weight:700;color:#9a6700;background:#fef3c7;border:1px solid #fde68a;border-radius:999px;padding:.2rem .55rem;white-space:nowrap}.room-thread-header{display:grid;gap:.5rem;padding-bottom:.85rem;border-bottom:1px solid var(--border)}.room-thread-header h1{font-size:1.15rem;line-height:1.4}.room-vote-controls{justify-content:flex-start}.room-messages{display:flex;flex-direction:column;gap:.55rem;max-height:52vh;min-height:120px;overflow-y:auto;padding-right:.25rem;scroll-behavior:smooth}.room-message{display:grid;gap:.3rem;justify-items:start}.room-message.mine{justify-items:end}.room-message-body{max-width:min(88%,600px);border-radius:.95rem;background:#f1f5f9;border:1px solid #e2e8f0;padding:.65rem .85rem;display:grid;gap:.25rem}.room-message.mine .room-message-body{background:var(--primary);border-color:transparent;color:#fff}.room-message.mine .room-message-body p{color:#fff}.room-message.mine .room-message-body .muted,.room-message.mine .room-message-body .small{color:#ffffffc7}.room-actions{display:flex;gap:.35rem}.room-compose{display:grid;gap:.6rem;padding-top:.85rem;border-top:1px solid var(--border)}.room-compose-row{display:flex;gap:.5rem;align-items:flex-end}.room-compose-row .field-input{flex:1;resize:none}.alert.success,.alert.onboarding-success{background:#22c55e1a;color:#166534}.inline-edit-form{display:grid;gap:.5rem;margin-top:.35rem}.inline-edit-actions{display:flex;gap:.4rem;justify-content:flex-end}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:100;padding:1rem}.confirm-dialog{background:#fff;border-radius:1rem;padding:1.5rem;width:min(420px,100%);display:grid;gap:1rem;box-shadow:var(--shadow-lg)}.confirm-dialog h3{font-size:1.05rem;margin-bottom:.2rem}.confirm-dialog p{color:var(--text-secondary);font-size:.92rem}.confirm-dialog-actions{display:flex;gap:.6rem;justify-content:flex-end}.spinner{width:28px;height:28px;border:3px solid rgba(78,99,66,.18);border-top-color:var(--primary);border-radius:999px;animation:spin .7s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.loading-block{display:grid;place-items:center;gap:.75rem;padding:2rem 1.25rem;color:var(--text-secondary)}.small{font-size:.8rem}@media(max-width:900px){.public-thread-item{grid-template-columns:1fr}.public-thread-side{flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:wrap}.room-messages{max-height:44vh}}.app-shell-page{min-height:100vh;display:grid;grid-template-columns:260px 1fr;background:var(--background)}.app-sidebar{border-right:1px solid var(--border);background:var(--surface);padding:1rem;display:flex;flex-direction:column;gap:.9rem}.app-sidebar-header{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1.15rem;font-weight:700}.app-main-wrap{min-width:0;padding-bottom:0}.app-header{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;border-bottom:1px solid var(--border);background:#fffffff2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.app-main-content{padding:1rem}.app-nav-list{display:grid;gap:.45rem}.app-nav-link{display:block;text-decoration:none;border:1px solid var(--border);border-radius:.65rem;padding:.6rem .75rem;color:var(--text-primary);background:#fff}.app-nav-link.router-link-active{border-color:var(--primary);background:var(--primary-bg)}.app-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:20}.app-drawer{position:fixed;left:0;top:0;height:100vh;width:min(86vw,320px);background:var(--surface);border-right:1px solid var(--border);z-index:25;transform:translate(-100%);transition:transform .17s ease;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.app-drawer.open{transform:translate(0)}.app-drawer-header{display:flex;justify-content:space-between;align-items:center}.app-bottom-nav{position:fixed;bottom:0;left:0;right:0;border-top:1px solid var(--border);background:#fff;display:grid;grid-template-columns:repeat(5,1fr);z-index:30}.app-bottom-link{text-decoration:none;text-align:center;padding:.72rem .25rem;font-size:.78rem;color:var(--text-secondary)}.app-bottom-link.router-link-active{color:var(--primary);font-weight:700}.mobile-only{display:none}@media(max-width:960px){.app-shell-page{grid-template-columns:1fr}.desktop-only{display:none}.mobile-only{display:inline-flex}.app-main-wrap{padding-bottom:4.1rem}}:root{--bg-page: #f5f6f2;--bg-surface: #ffffff;--bg-subtle: #eef1ec;--bg-inset: #fafbf9;--text-strong: #111827;--text-body: #374151;--text-muted: #6b7280;--brand: #4e6342;--brand-strong: #3d4f35;--brand-soft: rgba(78, 99, 66, .1);--accent: #b7791f;--accent-soft: #fff7ed;--ink: #1f2933;--border-soft: rgba(17, 24, 39, .08);--border-strong: rgba(17, 24, 39, .16);--danger: #dc2626;--danger-soft: #fef2f2;--warning: #d97706;--warning-soft: #fffbeb;--success: #16a34a;--success-soft: #f0fdf4;--shadow-soft: 0 1px 3px rgba(17, 24, 39, .06), 0 1px 2px rgba(17, 24, 39, .04);--shadow-tight: 0 1px 2px rgba(17, 24, 39, .05);--shadow-card: 0 1px 3px rgba(17, 24, 39, .04);--radius-sm: 10px;--radius-md: 12px;--radius-lg: 16px;--tap-size: 44px;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif}@media(prefers-color-scheme:dark){:root{--bg-page: #0f1117;--bg-surface: #1a1d27;--bg-subtle: #242833;--bg-inset: #15171f;--text-strong: #f3f4f6;--text-body: #d1d5db;--text-muted: #9ca3af;--brand: #6b8a5a;--brand-strong: #7fa06c;--brand-soft: rgba(107, 138, 90, .15);--accent: #d4a02a;--accent-soft: #2a2110;--ink: #e5e7eb;--border-soft: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--danger: #f87171;--danger-soft: rgba(248, 113, 113, .12);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, .12);--success: #4ade80;--success-soft: rgba(74, 222, 128, .12);--shadow-soft: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-tight: 0 1px 2px rgba(0, 0, 0, .25);--shadow-card: 0 1px 3px rgba(0, 0, 0, .2)}}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;background:var(--bg-page);font-family:var(--font-sans)}.mobile-page{min-height:100vh;min-height:100dvh;background:linear-gradient(180deg,#4e63420f,#4e634200 240px),var(--bg-page);color:var(--text-strong)}.mobile-screen{width:min(100%,760px);margin:0 auto;padding:16px 16px 92px}.mobile-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:10px 16px;border-bottom:1px solid var(--border-soft);background:#ffffffe0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.mobile-title{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em;line-height:1.25;color:var(--text-strong)}.mobile-subtitle{margin:2px 0 0;color:var(--text-muted);font-size:.8rem;line-height:1.35}.branch-hub .detail-view,.branch-hub .form-view,.packhouse-hub .detail-view,.packhouse-hub .form-view{gap:8px!important}.branch-hub .detail-header,.packhouse-hub .detail-header{min-height:auto!important;margin:0!important;padding:0!important;gap:0!important}.branch-hub .detail-header>.back-btn,.packhouse-hub .detail-header .back-link{display:none!important}.branch-hub .detail-header>.mobile-title,.packhouse-hub .detail-header .mobile-title{font-size:1.05rem;line-height:1.2}.topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.topbar-logo{height:28px;width:auto;flex-shrink:0}.topbar-title{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;gap:6px;flex-shrink:0}.topbar-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-soft);border-radius:50%;background:var(--bg-surface);color:var(--text-muted);cursor:pointer;text-decoration:none;transition:border-color .12s ease,color .12s ease;-webkit-tap-highlight-color:transparent}.topbar-btn:active{border-color:var(--brand);color:var(--brand)}.mobile-grid{display:grid;grid-template-columns:1fr;gap:10px}@media(min-width:480px){.mobile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.mobile-stack{display:grid;gap:8px}.mobile-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-card{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-surface);box-shadow:var(--shadow-card);overflow:hidden}.mobile-card-body{padding:14px 16px}.mobile-kpi-label{color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.01em;line-height:1.25;text-transform:uppercase}.mobile-kpi-value{margin-top:6px;font-size:1.5rem;font-weight:800;line-height:1.05;letter-spacing:-.02em;color:var(--text-strong)}.mobile-muted{color:var(--text-muted)}.mobile-form{display:grid;gap:14px}.mobile-field{display:grid;gap:5px}.mobile-label{color:var(--text-body);font-size:.82rem;font-weight:600}.mobile-input,.mobile-textarea{width:100%;min-height:var(--tap-size);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-strong);padding:10px 12px;font-size:.9rem;font-family:var(--font-sans);transition:border-color .15s ease,box-shadow .15s ease}.mobile-textarea{min-height:88px;resize:vertical}.mobile-input:focus,.mobile-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.mobile-input::placeholder,.mobile-textarea::placeholder{color:var(--text-muted)}.packhouse-hub .field-input,.packhouse-hub .status-filter,.packhouse-hub .stage-filter,.packhouse-hub .filter-select,.packhouse-hub .fields-grid input:not([type=checkbox]),.packhouse-hub .fields-grid select,.packhouse-hub .fields-grid textarea,.packhouse-hub .line-card input:not([type=checkbox]),.packhouse-hub .line-card select,.packhouse-hub .line-card textarea{width:100%!important;min-width:0!important;min-height:var(--tap-size)!important;border:1px solid var(--border-strong)!important;border-radius:var(--radius-sm)!important;background:var(--bg-surface)!important;color:var(--text-strong)!important;padding:10px 12px!important;font-size:.9rem!important;font-family:var(--font-sans)!important;font-weight:500!important;transition:border-color .15s ease,box-shadow .15s ease!important}.packhouse-hub .field-textarea,.packhouse-hub .fields-grid textarea,.packhouse-hub .line-card textarea{min-height:88px!important;resize:vertical!important}.packhouse-hub .field-input:focus,.packhouse-hub .status-filter:focus,.packhouse-hub .stage-filter:focus,.packhouse-hub .filter-select:focus,.packhouse-hub .fields-grid input:not([type=checkbox]):focus,.packhouse-hub .fields-grid select:focus,.packhouse-hub .fields-grid textarea:focus,.packhouse-hub .line-card input:not([type=checkbox]):focus,.packhouse-hub .line-card select:focus,.packhouse-hub .line-card textarea:focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px var(--brand-soft)!important;outline:none!important}.packhouse-hub .field-input::placeholder,.packhouse-hub .fields-grid input::placeholder,.packhouse-hub .fields-grid textarea::placeholder,.packhouse-hub .line-card input::placeholder,.packhouse-hub .line-card textarea::placeholder{color:var(--text-muted)!important}.mobile-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-size);border:1px solid transparent;border-radius:var(--radius-sm);padding:10px 16px;font-size:.88rem;font-weight:650;font-family:var(--font-sans);cursor:pointer;box-shadow:var(--shadow-tight);transition:background .12s ease,border-color .12s ease,transform 80ms ease,box-shadow .12s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent}.mobile-button:not(:disabled):active{transform:translateY(1px);box-shadow:none}.mobile-button:disabled{cursor:not-allowed;opacity:.55}.mobile-button-primary{background:var(--brand);color:#fff}.mobile-button-primary:not(:disabled):hover{background:var(--brand-strong)}.mobile-button-secondary{border-color:var(--border-strong);background:var(--bg-surface);color:var(--text-body)}.mobile-button-danger{border-color:transparent;background:var(--danger-soft);color:var(--danger)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:24px}.confirm-dialog{width:min(100%,340px);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:0 20px 60px #0003;padding:24px;text-align:center}.confirm-title{margin:0 0 8px;color:var(--text-strong);font-size:1.1rem;font-weight:750}.confirm-message{margin:0 0 20px;color:var(--text-muted);font-size:.88rem;line-height:1.45}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-alert{border-radius:var(--radius-sm);padding:10px 12px;font-size:.84rem;font-weight:500;line-height:1.4}.mobile-alert-error{background:var(--danger-soft);color:var(--danger)}.mobile-alert-retry{display:flex;flex-direction:column;gap:8px}.mobile-alert-warning{background:var(--warning-soft);color:var(--warning)}.upload-status-list{display:grid;gap:8px}.upload-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-inset);padding:8px 10px}.upload-status-main{min-width:0}.upload-status-name{color:var(--text-strong);font-size:.8rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-status-meta{margin-top:2px;color:var(--text-muted);font-size:.72rem;font-weight:650}.upload-status-error{color:var(--danger)}.upload-spinner{width:18px;height:18px;border:2px solid var(--border-soft);border-top-color:var(--brand);border-radius:50%;animation:upload-spin .7s linear infinite;flex-shrink:0}@keyframes upload-spin{to{transform:rotate(360deg)}}.mobile-table{width:100%;border-collapse:collapse;font-size:.84rem}.mobile-table th,.mobile-table td{border-bottom:1px solid var(--border-soft);padding:10px 0}.mobile-table th{color:var(--text-muted);font-size:.72rem;font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.03em}.mobile-table td:last-child,.mobile-table th:last-child{text-align:right}.mobile-table tbody tr:last-child td{border-bottom:none}.app-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--radius-sm);background:var(--brand);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.02em;box-shadow:var(--shadow-tight);flex-shrink:0}.hero-panel{position:relative;border:1px solid rgba(78,99,66,.15);border-radius:var(--radius-sm);background:linear-gradient(135deg,#4e6342f5,#1f2933f2),var(--brand);color:#fff;overflow:hidden;box-shadow:var(--shadow-soft)}.hero-panel:after{content:"";position:absolute;right:14px;top:14px;width:100px;height:100px;border:1px solid rgba(255,255,255,.08);border-radius:999px;opacity:.6}.hero-panel-body{position:relative;z-index:1;display:grid;gap:16px;padding:18px}.hero-kicker{color:#ffffffb3;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.hero-title{margin:0;font-size:1.4rem;font-weight:800;line-height:1.1;letter-spacing:-.01em}.hero-copy{margin:6px 0 0;color:#ffffffbf;font-size:.84rem;line-height:1.45}.status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.status-pill{min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);background:#ffffff14;padding:8px}.status-pill-label{color:#ffffff8c;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.status-pill-value{margin-top:2px;color:#fff;font-size:.84rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-shell{display:grid;min-height:calc(100vh - 80px);min-height:calc(100dvh - 80px);align-items:center}.login-card{border:1px solid rgba(78,99,66,.12)}.login-header{display:grid;gap:10px;margin-bottom:20px}.login-icon-row{display:flex;align-items:center;gap:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:4px 0 12px}.metric-card{position:relative}.metric-card:before{content:"";display:block;height:3px;background:var(--border-soft);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.metric-card-good:before{background:var(--success)}.metric-card-warn:before{background:var(--warning)}.metric-card-danger:before{background:var(--danger)}.metric-card-neutral:before{background:var(--brand)}.metric-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.metric-badge{border-radius:6px;background:var(--bg-subtle);color:var(--text-muted);padding:2px 7px;font-size:.66rem;font-weight:700;letter-spacing:.01em;white-space:nowrap}.insight-list{display:grid;gap:6px}.insight-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-inset);padding:10px 12px}.insight-label{color:var(--text-body);font-size:.84rem;font-weight:650}.insight-value{color:var(--text-strong);font-size:.9rem;font-weight:750;letter-spacing:-.01em}.bottom-action-bar{position:fixed;right:0;bottom:0;left:0;z-index:30;border-top:1px solid var(--border-soft);background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.bottom-action-inner{display:flex;width:min(100%,760px);margin:0 auto;gap:10px}.bottom-action-inner .mobile-button{flex:1}.install-page{min-height:100vh;min-height:100dvh;background:linear-gradient(180deg,#4e63421f,#4e634200 280px),var(--bg-page);color:var(--text-strong)}.install-shell{display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:22px}.install-card{display:grid;width:min(100%,400px);gap:24px;justify-items:center;border:1px solid rgba(78,99,66,.1);border-radius:20px;background:#fffffff7;box-shadow:0 20px 60px #1118271a,0 4px 12px #1118270f;padding:48px 28px 40px;text-align:center}.install-icon{width:100px;height:100px;border-radius:24px;box-shadow:0 12px 28px #4e634233}.install-title{margin:0;color:var(--text-strong);font-size:clamp(1.8rem,8vw,2.1rem);font-weight:800;line-height:1.08;letter-spacing:-.02em}.install-copy{max-width:300px;margin:14px auto 0;color:var(--text-muted);font-size:1.05rem;line-height:1.5}.install-actions{display:grid;width:100%;gap:10px}.install-actions .mobile-button{width:100%;min-height:52px;font-size:1rem}.install-status{width:100%;font-weight:650}.install-hint{max-width:280px;margin:-6px 0 0;color:var(--text-muted);font-size:.88rem;line-height:1.45}@media(max-width:380px){.install-card{padding:36px 20px 30px}.install-icon{width:84px;height:84px;border-radius:20px}.install-copy{font-size:.95rem}}@media(prefers-color-scheme:dark){.mobile-page{background:linear-gradient(180deg,#6b8a5a0f,#6b8a5a00 240px),var(--bg-page)}.mobile-topbar{background:#1a1d27eb}.mobile-input,.mobile-textarea{background:var(--bg-inset);color:var(--text-strong);border-color:var(--border-strong)}.mobile-button-primary{background:var(--brand)}.mobile-button-primary:not(:disabled):hover{background:var(--brand-strong)}.mobile-button-secondary{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-body)}.mobile-button-danger{background:var(--danger-soft);color:var(--danger)}.app-mark{background:var(--brand)}.bottom-action-bar{background:#1a1d27f0}.login-card{border-color:var(--border-soft)}.install-page{background:linear-gradient(180deg,#6b8a5a14,#6b8a5a00 280px),var(--bg-page)}.install-card{background:var(--bg-surface);border-color:var(--border-soft);box-shadow:0 20px 60px #0006}}
