@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap";.app-shell{grid-template-columns:var(--sidebar-width) 1fr;background:var(--color-bg);min-height:100vh;transition:grid-template-columns .2s;display:grid}.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-width-collapsed) 1fr}.sidebar{background:var(--color-sidebar);height:100vh;width:var(--sidebar-width);border-right:1px solid #ffffff14;flex-direction:column;padding:0;transition:width .2s;display:flex;position:sticky;top:0}.app-shell.sidebar-collapsed .sidebar{width:var(--sidebar-width-collapsed);z-index:40;overflow:visible}.brand{box-sizing:border-box;text-align:left;background:0 0;border-bottom:1px solid #d4af6a73;justify-content:space-between;align-items:center;gap:8px;width:100%;height:78px;padding:4px 12px 4px 20px;display:flex;position:relative}.brand-logo{object-fit:contain;object-position:left center;opacity:1;filter:brightness(1.12)contrast(1.08);background:0 0;flex-shrink:1;width:auto;min-width:0;max-width:calc(100% - 44px);height:90px;margin:0;transition:opacity .15s,max-width .2s,height .2s;display:block}.sidebar-collapse-toggle{color:#ffffffeb;cursor:pointer;background:#f7f1e71a;border:1px solid #ffffff2e;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,border-color .15s;display:inline-flex}.sidebar-collapse-toggle:hover{background:#f7f1e733;border-color:#d4af6a8c}.sidebar-collapse-icon,.sidebar-collapse-icon:before,.sidebar-collapse-icon:after{background:currentColor;border-radius:2px;width:16px;height:2px;display:block}.sidebar-collapse-icon{position:relative}.sidebar-collapse-icon:before,.sidebar-collapse-icon:after{content:"";position:absolute;left:0}.sidebar-collapse-icon:before{top:-5px}.sidebar-collapse-icon:after{top:5px}.app-shell.sidebar-collapsed .brand{justify-content:center;padding:8px}.app-shell.sidebar-collapsed .brand-logo{display:none}.app-shell.sidebar-collapsed .sidebar-collapse-toggle{width:36px;height:36px}.nav-section-label{letter-spacing:.08em;color:#ffffff8c;padding:0 12px 10px;font-size:11px;font-weight:700}.nav-list{flex-direction:column;flex:1;gap:4px;min-height:0;margin:0;padding:16px 16px 8px;list-style:none;display:flex;overflow-y:auto}.nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-link{color:#ffffffe0;border-radius:12px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s,padding .2s;display:flex}.nav-link:hover{color:#fff;background:#f7f1e71f}.nav-link.active{color:#fff;background:#ffffff1a;border:none;font-weight:600;box-shadow:inset 3px 0 #d4af6a}.nav-icon{color:currentColor;opacity:.92;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.nav-icon svg{width:18px;height:18px;display:block}.nav-link.active .nav-icon{opacity:1}.nav-group{flex-direction:column;gap:2px;display:flex;position:relative}.nav-parent{text-align:left;cursor:pointer;background:0 0;border:none;width:100%}.nav-caret{justify-content:center;align-items:center;width:18px;height:18px;margin-left:auto;font-size:16px;font-weight:700;line-height:1;transition:transform .15s;display:inline-flex}.nav-caret.open{transform:rotate(180deg)}.nav-submenu{flex-direction:column;gap:2px;margin:0;padding:0 0 4px 30px;list-style:none;display:flex}.nav-submenu .nav-link{color:#ffffffc7;padding:8px 12px;font-size:13px}.app-shell.sidebar-collapsed .nav-list{align-items:stretch;padding:12px 10px 8px;overflow:visible}.app-shell.sidebar-collapsed .nav-link{justify-content:center;gap:0;padding:12px 8px}.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .nav-caret{display:none}.app-shell.sidebar-collapsed .nav-link.active{box-shadow:none;background:#ffffff24}.app-shell.sidebar-collapsed .nav-submenu{z-index:60;background:var(--color-sidebar);min-width:190px;box-shadow:var(--shadow-md);border:1px solid #ffffff24;border-radius:12px;max-height:min(70vh,100vh - 24px);padding:8px;position:absolute;top:0;left:calc(100% + 8px);overflow-y:auto}.app-shell.sidebar-collapsed .nav-submenu .nav-link{justify-content:flex-start;padding:8px 12px}.app-shell.sidebar-collapsed .nav-submenu .nav-label{display:inline}.sidebar-footer{flex-direction:column;gap:4px;margin-top:auto;padding:8px 16px 16px;display:flex}.sidebar-footer .nav-link{text-align:left;cursor:pointer;background:0 0;border:none;width:100%}.app-shell.sidebar-collapsed .sidebar-footer{align-items:center;padding:8px 10px 14px}.profile-card{box-shadow:none;background:#f7f1e71a;border:1px solid #ffffff24;border-radius:14px;align-items:center;gap:12px;margin-top:16px;padding:12px;display:flex}.app-shell.sidebar-collapsed .profile-card{justify-content:center;gap:0;margin-top:10px;padding:8px}.app-shell.sidebar-collapsed .profile-meta{display:none}.profile-card-link{text-decoration:none;transition:border-color .15s,background .15s}.profile-card-link:hover{background:#f7f1e729;border-color:#f7f1e759}.profile-avatar{background:var(--color-surface-muted);width:40px;height:40px;color:var(--color-text);border:1px solid #fff3;border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid;overflow:hidden}.profile-avatar-image{object-fit:cover;width:100%;height:100%;display:block}.profile-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-name,.profile-role,.profile-email{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.profile-name{color:#fff;font-size:13px;font-weight:700}.profile-role,.profile-email{color:#ffffffb3;font-size:12px}.app-main{min-width:0;padding:28px 32px 40px}.app-topbar{display:none}.nav-toggle{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{background:currentColor;border-radius:2px;width:18px;height:2px;display:block}.nav-toggle-bars{position:relative}.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:0}.nav-toggle-bars:before{top:-6px}.nav-toggle-bars:after{top:6px}.nav-backdrop{display:none}@media (width<=1100px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:none;min-height:100dvh;display:block}.app-topbar{z-index:25;background:var(--color-sidebar);color:#fff;align-items:center;gap:12px;height:60px;margin:-16px -16px 16px;padding:0 12px;display:flex;position:sticky;top:0}.app-topbar-title{font-size:16px;font-weight:700}.sidebar,.app-shell.sidebar-collapsed .sidebar{z-index:40;width:min(300px,86vw);height:100dvh;box-shadow:var(--shadow-md);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-105%)}.app-shell.nav-open .sidebar{transform:translate(0)}.sidebar-collapse-toggle{display:none}.app-shell.sidebar-collapsed .brand{justify-content:flex-start;padding:4px 16px 4px 28px}.app-shell.sidebar-collapsed .brand-logo{max-width:100%;display:block}.app-shell.sidebar-collapsed .nav-list{padding:16px 16px 8px;overflow-y:auto}.app-shell.sidebar-collapsed .sidebar{z-index:40;overflow:hidden}.app-shell.sidebar-collapsed .nav-link{justify-content:flex-start;gap:12px;padding:11px 12px}.app-shell.sidebar-collapsed .nav-label,.app-shell.sidebar-collapsed .nav-caret{display:inline-flex}.app-shell.sidebar-collapsed .nav-label{display:inline}.app-shell.sidebar-collapsed .nav-link.active{box-shadow:inset 3px 0 #d4af6a}.app-shell.sidebar-collapsed .nav-submenu{min-width:0;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0 0 4px 30px;position:static;left:auto}.app-shell.sidebar-collapsed .sidebar-footer{align-items:stretch;padding:8px 16px 16px}.app-shell.sidebar-collapsed .profile-card{justify-content:flex-start;gap:12px;margin-top:16px;padding:12px}.app-shell.sidebar-collapsed .profile-meta{display:flex}.nav-backdrop{z-index:35;background:#1f2a247a;border:0;display:block;position:fixed;inset:0}.app-main{min-height:100dvh;padding:16px 16px 28px}}@media (width<=720px){.app-main{padding:12px 12px 24px}.app-topbar{margin:-12px -12px 12px}}.login-shell{--login-burgundy:#513643;--login-burgundy-deep:#3f2a35;--login-cream:#faf7f2;--login-gold:#c4a15a;--login-font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--login-font-sans:"Source Sans 3", "Segoe UI", sans-serif;background:var(--login-cream);min-height:100dvh;color:var(--login-burgundy);font-family:var(--login-font-sans);grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr);display:grid}.login-brand{text-align:left;background:radial-gradient(circle at 108% 92%, #c4a15a24, transparent 42%), radial-gradient(circle at 100% 100%, #ffffff0d 0 28%, transparent 29%), radial-gradient(circle at 100% 100%, #ffffff0a 0 42%, transparent 43%), linear-gradient(160deg, #5a3c49 0%, var(--login-burgundy) 48%, var(--login-burgundy-deep) 100%);color:#f7f1e9;flex-direction:column;justify-content:center;align-items:center;gap:40px;padding:40px 48px 32px;display:flex;position:relative;overflow:hidden}.login-brand:after{content:"";pointer-events:none;border:1px solid #f7f1e914;border-radius:50%;width:min(420px,70vw);height:min(420px,70vw);position:absolute;bottom:-22%;right:-18%;box-shadow:inset 0 0 0 28px #f7f1e905,0 0 0 56px #f7f1e905}.login-brand-mark{align-items:center;margin-bottom:4px;display:flex}.login-brand-logo{object-fit:contain;object-position:left center;mix-blend-mode:screen;filter:brightness(1.12)contrast(1.08);background:0 0;border-radius:0;width:auto;max-width:min(560px,100%);height:132px;display:block}.login-brand-copy{z-index:1;text-align:left;flex-direction:column;align-items:stretch;gap:18px;width:100%;max-width:520px;display:flex;position:relative}.login-brand-kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--login-gold);margin:0;font-size:12px;font-weight:700}.login-brand-title{font-family:var(--login-font-display);letter-spacing:-.01em;color:#fff;margin:0;font-size:clamp(34px,4.2vw,52px);font-weight:600;line-height:1.12}.login-brand-lead{color:#f7f1e9c7;max-width:46ch;margin:0;font-size:16px;line-height:1.55}.login-brand-points{flex-direction:column;gap:14px;width:100%;margin:8px 0 0;padding:0;list-style:none;display:flex}.login-brand-points li{color:#f7f1e9e0;text-align:left;padding-left:22px;font-size:15px;line-height:1.45;position:relative}.login-brand-points li:before{content:"";background:var(--login-gold);width:8px;height:8px;position:absolute;top:.55em;left:0;transform:rotate(45deg)}.login-brand-footer{z-index:1;color:#f7f1e97a;text-align:left;width:100%;max-width:520px;margin:0;font-size:12px;position:relative}.login-panel{background:var(--login-cream);place-items:center;padding:48px 32px;display:grid}.login-form{flex-direction:column;gap:16px;width:min(420px,100%);display:flex}.login-form-head h2{font-family:var(--login-font-display);color:var(--login-burgundy);margin:0 0 8px;font-size:clamp(36px,4vw,48px);font-weight:600;line-height:1.1}.login-form-head p{color:#7a6a62;margin:0 0 8px;font-size:15px}.login-form label{color:#5c4a52;flex-direction:column;gap:8px;font-size:13px;font-weight:700;display:flex}.login-form input{height:46px;color:var(--login-burgundy);font:inherit;background:#fff;border:1px solid #e5ddd2;border-radius:10px;padding:0 14px;font-size:15px;font-weight:500;box-shadow:0 1px 2px #51364308}.login-form input:focus{border-color:#c4a15abf;outline:none;box-shadow:0 0 0 3px #c4a15a29}.login-password-field{align-items:center;display:flex;position:relative}.login-password-field input{width:100%;padding-right:44px}.login-password-toggle{color:#8a7a72;width:34px;height:34px;box-shadow:none;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.login-password-toggle:hover{color:var(--login-burgundy);background:#5136430d}.login-password-toggle svg{width:18px;height:18px;display:block}.login-link{color:var(--login-gold);align-self:flex-end;margin-top:-4px;font-size:14px;font-weight:700;text-decoration:none}.login-link-center{align-self:center;margin-top:4px}.login-link:hover{text-decoration:underline}.login-submit{background:linear-gradient(180deg, #5d3f4c 0%, var(--login-burgundy) 100%);color:#fff;height:48px;font:inherit;cursor:pointer;border:none;border-radius:12px;margin-top:4px;font-size:15px;font-weight:700;box-shadow:0 10px 22px #51364347}.login-submit:hover:not(:disabled){background:linear-gradient(#6a4856 0%,#5a3c49 100%)}.login-submit:disabled{opacity:.72;cursor:not-allowed}.login-error{color:#b05a56;background:#f8e9e7;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600}.login-success{color:#8f6d38;background:#f7f1e6;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600}.login-note{text-align:center;color:#9a8878;margin:8px 0 0;font-size:13px;font-weight:500}.login-note-left{text-align:left;margin:-6px 0 0}@media (width<=960px){.login-shell{grid-template-columns:1fr}.login-brand{gap:28px;min-height:auto;padding:28px 24px 24px}.login-brand-title{font-size:clamp(30px,8vw,40px)}.login-brand-footer{display:none}.login-panel{padding:32px 20px 40px}}@media (width<=560px){.login-brand-logo{height:96px}.login-brand-points li{font-size:14px}}.user-form-modal-root{z-index:40;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.user-form-modal-backdrop{background:#1f2a2459;border:none;position:absolute;inset:0}.user-form-modal{z-index:1;background:var(--color-surface);width:min(720px,100%);max-height:min(920px,100vh - 48px);box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;animation:.18s user-form-modal-in;display:flex;position:relative}@keyframes user-form-modal-in{0%{opacity:.7;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.user-form-modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 22px 16px;display:flex}.user-form-modal-header h2{color:var(--color-text);margin:0;font-size:22px}.user-form-modal-header p{color:var(--color-text-muted);margin:8px 0 0;font-size:13px;line-height:1.45}.user-form-modal-close{border:1px solid var(--color-border-strong);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);border-radius:10px;flex-shrink:0;font-size:22px;line-height:1}.user-form-modal-close:hover{color:var(--color-text);background:var(--color-surface-muted)}.user-form-modal-form{flex-direction:column;flex:1;gap:16px;padding:18px 22px 24px;display:flex;overflow:auto}.user-form-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.user-form-modal .form-field{flex-direction:column;gap:6px;min-width:0;display:flex}.user-form-modal .form-field.full{grid-column:1/-1}.user-form-modal .form-field label{color:var(--color-text-muted);font-size:13px;font-weight:600}.user-form-modal .form-field label abbr{color:var(--color-danger);text-decoration:none}.user-form-modal .form-field input,.user-form-modal .form-field select,.user-form-modal .form-field .theme-select-trigger,.user-form-modal .form-field textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);min-height:42px;color:var(--color-text);border-radius:12px;padding:10px 12px}.user-form-modal .form-field .theme-select{width:100%;min-width:0;max-width:100%;display:block}.user-form-modal .form-field .theme-select-trigger{max-width:100%}.user-form-modal .form-field textarea{resize:vertical;min-height:88px}.user-form-modal .form-field input:focus,.user-form-modal .form-field select:focus,.user-form-modal .form-field .theme-select.is-open .theme-select-trigger,.user-form-modal .form-field textarea:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.user-form-modal .form-field.has-error input,.user-form-modal .form-field.has-error textarea,.user-form-modal .form-field.has-error .theme-select-trigger{border-color:var(--color-danger)}.user-form-modal .form-field .field-error{color:var(--color-danger);font-size:12px;font-weight:600;line-height:1.4}.user-form-modal .form-actions{background:linear-gradient(180deg, #2a2a2a00, var(--color-surface) 28%);justify-content:flex-end;gap:10px;padding-top:12px;display:flex;position:sticky;bottom:0}.user-form-modal .form-note{color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:12px;padding:12px 14px;font-size:12px;line-height:1.45}.user-form-modal .form-error{background:var(--color-danger-soft);color:var(--color-danger);border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.user-form-modal .btn{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;height:42px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.user-form-modal .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.user-form-modal .btn-primary{background:var(--color-primary-gradient);color:#fff;border:none}.user-form-modal .btn:disabled{opacity:.7;cursor:not-allowed}@media (width<=720px){.user-form-modal-root{padding:12px}.user-form-modal{width:100%;max-height:calc(100vh - 24px)}.user-form-modal .form-grid{grid-template-columns:1fr}}.app-toast{z-index:1200;background:var(--color-surface);width:min(440px,100vw - 32px);color:var(--color-text);border:1px solid #0000;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px 16px;padding:18px 18px 16px;animation:.35s cubic-bezier(.22,1,.36,1) app-toast-in;display:grid;position:fixed;top:24px;right:24px;overflow:hidden;box-shadow:0 18px 40px #0f172a29,0 4px 12px #0f172a14}.app-toast:before{content:"";background:currentColor;width:5px;position:absolute;inset:0 auto 0 0}.app-toast.is-success{color:var(--color-success);background:linear-gradient(135deg, color-mix(in srgb, var(--color-success-soft) 88%, var(--color-surface)) 0%, var(--color-surface) 55%);border-color:color-mix(in srgb, var(--color-success) 28%, var(--color-border))}.app-toast.is-error{color:var(--color-danger);background:linear-gradient(135deg, color-mix(in srgb, var(--color-danger-soft) 88%, var(--color-surface)) 0%, var(--color-surface) 55%);border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border))}.app-toast-icon{background:color-mix(in srgb, currentColor 14%, transparent);width:44px;height:44px;color:inherit;border-radius:14px;flex-shrink:0;place-items:center;display:grid}.app-toast-body{flex-direction:column;gap:4px;min-width:0;padding-top:2px;display:flex}.app-toast-title{letter-spacing:.01em;color:inherit;margin:0;font-size:15px;font-weight:750;line-height:1.25}.app-toast-message{color:var(--color-text);word-break:break-word;font-size:14px;font-weight:500;line-height:1.45}.app-toast-close{background:color-mix(in srgb, var(--color-text) 5%, transparent);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;margin:-2px -4px 0 0;font-size:22px;line-height:1;transition:background .15s,color .15s}.app-toast-close:hover{background:color-mix(in srgb, var(--color-text) 10%, transparent);color:var(--color-text)}.app-toast-progress{background:color-mix(in srgb, currentColor 18%, transparent);transform-origin:0;border-radius:0;grid-column:1/-1;height:3px;margin:4px -18px -16px;animation:4.2s linear forwards app-toast-progress;display:block}@keyframes app-toast-in{0%{opacity:0;transform:translate(18px,-10px)scale(.96)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes app-toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (width<=640px){.app-toast{border-radius:16px;width:auto;padding:16px;top:16px;left:16px;right:16px}.app-toast-progress{margin:4px -16px -16px}}.user-master{flex-direction:column;gap:22px;width:100%;min-width:0;max-width:100%;display:flex}.page-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.page-breadcrumb span.current{color:var(--color-text);font-weight:600}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-title{color:var(--color-text);margin:0;font-size:34px;font-weight:700;line-height:1.15}.page-subtitle{color:var(--color-text-muted);margin:8px 0 0;font-size:15px}.page-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.btn{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover{background:var(--color-surface-muted)}.btn-primary{background:var(--color-primary-gradient);color:#fff;box-shadow:0 6px 16px #b8924a47}.btn-primary:hover{filter:brightness(1.03)}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;min-height:128px;padding:18px 18px 16px;display:flex}.stat-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stat-label{color:var(--color-text-muted);font-size:13px;font-weight:600}.stat-icon{border-radius:10px;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.stat-icon.green{background:var(--color-primary-soft);color:var(--color-primary)}.stat-icon.blue{background:var(--color-accent-blue-soft);color:var(--color-accent-blue)}.stat-icon.brown{background:var(--color-warning-soft);color:var(--color-warning)}.stat-value{color:var(--color-text);font-size:36px;font-weight:700;line-height:1}.stat-hint{color:var(--color-text-soft);font-size:12px}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;max-width:100%;overflow:hidden}.panel-toolbar{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:16px 18px;display:flex}.tabs{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.tab{height:34px;color:var(--color-text-muted);background:0 0;border:1px solid #0000;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.tab.active{background:var(--color-primary-soft);color:var(--color-primary)}.tab:hover:not(.active){background:var(--color-surface-muted)}.filters{flex-wrap:wrap;flex:280px;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.search-field{flex:220px;min-width:min(280px,100%);max-width:100%;position:relative}.role-filter{flex:0 0 160px;min-width:140px;max-width:100%}.role-filter .theme-select,.role-filter .theme-select-trigger{width:100%}.search-field input{border:1px solid var(--color-border-strong);background:var(--color-surface-muted);width:100%;height:40px;color:var(--color-text);border-radius:12px;padding:0 14px 0 38px}.search-field input:focus{border-color:var(--color-primary);background:var(--color-surface);outline:2px solid #b8924a47}.search-icon{color:var(--color-text-soft);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.filter-select{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:140px;height:40px;color:var(--color-text);border-radius:12px;padding:0 12px}.filter-select:focus,.filter-select:focus-visible{border-color:var(--color-primary);outline:2px solid #b8924a47}.table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.users-table{border-collapse:separate;border-spacing:0;table-layout:auto;width:100%;min-width:1080px}.users-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);white-space:nowrap;padding:14px 16px;font-size:11px;font-weight:700}.users-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:14px 16px;font-size:14px}.users-table td:nth-child(2),.users-table td:nth-child(3),.users-table td:nth-child(5){text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.users-table .user-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.users-table tr:last-child td{border-bottom:none}.users-table tbody tr:hover{background:var(--color-surface-muted)}.user-cell{align-items:center;gap:12px;display:flex}.user-avatar{background:var(--color-primary-soft);width:40px;height:40px;color:var(--color-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.user-name{color:var(--color-text);font-weight:700}.role-pill{background:var(--color-surface-muted);height:28px;color:var(--color-text-muted);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.status-pill{border-radius:999px;align-items:center;gap:8px;height:28px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.status-pill.active{background:var(--color-primary-soft);color:var(--color-primary)}.status-pill.inactive{background:var(--color-surface-muted);color:var(--color-text-muted)}.status-pill.locked{background:var(--color-danger-soft);color:var(--color-danger)}.status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.muted{color:var(--color-text-muted)}.users-table th.actions-cell,.users-table td.actions-cell{text-align:right;white-space:nowrap;vertical-align:middle;background:var(--color-surface);width:1%;min-width:188px;padding-left:16px;padding-right:18px}.users-table th.actions-cell,.users-table tbody tr:hover td.actions-cell{background:var(--color-surface-muted)}.users-table .row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;min-width:max-content;line-height:0;display:flex}.user-master .icon-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--color-text);box-sizing:border-box;border-radius:10px;flex:none;justify-content:center;align-items:center;margin:0;padding:0;line-height:0;display:inline-flex;overflow:visible}.user-master .icon-btn svg{pointer-events:none;flex:none;width:18px;height:18px;display:block;overflow:visible}.user-master .icon-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.user-master .icon-btn:disabled{opacity:.45;cursor:not-allowed;color:var(--color-text-soft)}.user-master .icon-btn-danger{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border))}.user-master .icon-btn-danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.user-master .icon-btn-status.is-active{border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border));color:var(--color-success);background:var(--color-success-soft)}.user-master .icon-btn-status.is-active:hover:not(:disabled){border-color:var(--color-success);color:var(--color-success);background:color-mix(in srgb, var(--color-success-soft) 70%, var(--color-surface))}.user-master .icon-btn-status.is-inactive{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));color:var(--color-danger);background:var(--color-danger-soft)}.user-master .icon-btn-status.is-inactive:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger-soft) 70%, var(--color-surface))}.panel-footer{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:13px;display:flex}.user-master .table-wrap.is-fetching{opacity:.65}.pager{gap:8px;display:flex}.pager button{border:1px solid var(--color-border-strong);background:var(--color-surface);width:34px;height:34px;color:var(--color-text);border-radius:10px}.pager button:disabled{opacity:.45;cursor:not-allowed}.user-master .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.state-message{text-align:center;color:var(--color-text-muted);padding:40px 18px}.user-master .modal-backdrop{z-index:30;background:#1f2a2459;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.user-master .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);text-align:left;border-radius:18px;padding:22px 22px 18px}.user-master .delete-user-modal{padding:58px 22px 18px;position:relative}.user-master .delete-user-modal-header{margin:0;padding:0}.user-master .delete-user-modal-header h2{z-index:1;max-width:calc(100% - 72px);color:var(--color-text);text-align:left;margin:0;padding:0;font-size:22px;font-weight:700;line-height:1.2;position:absolute;top:18px;left:22px}.user-master .delete-user-modal-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;margin:0;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px}.user-master .delete-user-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.user-master .modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.user-master .modal-header h2{text-align:left;margin:0;font-size:22px}.user-master .modal-close{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;font-size:20px;line-height:1}.user-master .delete-user-copy{color:var(--color-text);text-align:left;margin:0 0 18px;font-size:14px;line-height:1.5}.user-master .modal-actions{justify-content:flex-end;gap:10px;display:flex}.user-master .btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.user-master .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-title{font-size:28px}.panel-toolbar{flex-direction:column;align-items:stretch}.tabs{width:100%}.filters{flex:auto;justify-content:stretch;width:100%}.search-field{flex:220px;min-width:0}.role-filter{flex:0 0 160px}}@media (width<=720px){.page-header{flex-direction:column;align-items:stretch}.page-title{font-size:24px}.page-actions,.page-actions .btn{width:100%}.stats-grid{grid-template-columns:1fr}.panel-toolbar,.panel-footer{padding:14px}.filters{flex-direction:column;align-items:stretch}.search-field,.role-filter{flex:auto;width:100%;min-width:0}.users-table th,.users-table td{padding:12px}.users-table .user-avatar,.user-master .icon-btn{width:34px;height:34px}.panel-footer{flex-direction:column;align-items:stretch}.pager-controls{justify-content:space-between;width:100%}.user-master .modal-backdrop{align-items:end;padding:16px}.user-master .modal{width:100%}.user-master .modal-actions{flex-direction:column-reverse}.user-master .modal-actions .btn{width:100%}}.prefecture-master{flex-direction:column;gap:22px;display:flex}.prefecture-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.prefecture-table{border-collapse:collapse;width:100%;min-width:720px}.prefecture-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:14px 18px;font-size:11px;font-weight:700}.prefecture-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:16px 18px;font-size:14px}.prefecture-table tr:last-child td{border-bottom:none}.prefecture-table tbody tr:hover{background:var(--color-surface-muted)}.prefecture-name{font-weight:700}.prefecture-table th.actions-cell,.prefecture-table td.actions-cell{text-align:right;white-space:nowrap;vertical-align:middle;width:1%;min-width:132px;padding-left:16px;padding-right:18px}.prefecture-table td.actions-cell .row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;line-height:0;display:flex}.icon-btn{border:1px solid var(--color-border);background:var(--color-surface);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--color-text-muted);box-sizing:border-box;vertical-align:middle;border-radius:10px;flex:none;justify-content:center;align-items:center;margin:0;padding:0;line-height:0;display:inline-flex}.icon-btn svg{pointer-events:none;flex:none;width:16px;height:16px;display:block;overflow:visible}.icon-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.icon-btn-danger{color:var(--color-danger)}.icon-btn-danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft)}.icon-btn-status.is-active{border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border));color:var(--color-success);background:var(--color-success-soft)}.icon-btn-status.is-active:hover:not(:disabled){border-color:var(--color-success);color:var(--color-success);background:color-mix(in srgb, var(--color-success-soft) 70%, var(--color-surface))}.icon-btn-status.is-inactive{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));color:var(--color-danger);background:var(--color-danger-soft)}.icon-btn-status.is-inactive:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger-soft) 70%, var(--color-surface))}.error-banner{background:var(--color-danger-soft);color:var(--color-danger);border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.delete-master-copy{color:var(--color-text);text-align:left;margin:0 0 18px;font-size:14px;line-height:1.5}.btn:disabled{opacity:.6;cursor:not-allowed}.success-banner{background:var(--color-primary-soft);color:var(--color-primary);border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);text-align:left;border-radius:18px;padding:22px 22px 18px}.modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.modal-header h2{text-align:left;margin:0;font-size:22px}.modal-close{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;font-size:20px;line-height:1}.delete-master-modal{text-align:left;padding:58px 22px 18px;position:relative}.delete-master-modal-header{margin:0;padding:0}.delete-master-modal-header h2{z-index:1;max-width:calc(100% - 72px);color:var(--color-text);text-align:left;margin:0;padding:0;font-size:22px;font-weight:700;line-height:1.2;position:absolute;top:18px;left:22px}.delete-master-modal-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;margin:0;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px}.delete-master-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.modal form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field span{color:var(--color-text);font-size:13px;font-weight:700}.field abbr{color:var(--color-danger);text-decoration:none}.field input,.field select,.field .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);height:42px;color:var(--color-text);border-radius:12px;padding:0 12px}.field .theme-select{width:100%;min-width:0;display:block}.field input:focus,.field select:focus,.field .theme-select.is-open .theme-select-trigger{border-color:var(--color-primary);outline:2px solid #b8924a47}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--color-danger)}.field small{color:var(--color-text-muted);font-size:12px}.field small.field-error{color:var(--color-danger);font-weight:600}.modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.prefecture-master .table-wrap.is-fetching{opacity:.65}.prefecture-master .panel-footer{flex-wrap:wrap}.pager-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.page-size{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.page-size select,.page-size .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:64px;height:34px;min-height:34px;color:var(--color-text);border-radius:10px;padding:0 8px}.page-size .theme-select{min-width:72px;display:inline-flex}.prefecture-master .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.pager-ellipsis{text-align:center;width:24px;color:var(--color-text-soft)}@media (width<=1100px){.prefecture-stats{grid-template-columns:1fr}}.municipality-master{flex-direction:column;gap:22px;display:flex}.municipality-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.municipality-table{border-collapse:collapse;width:100%;min-width:760px}.municipality-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:14px 18px;font-size:11px;font-weight:700}.municipality-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:16px 18px;font-size:14px}.municipality-table tr:last-child td{border-bottom:none}.municipality-table tbody tr:hover{background:var(--color-surface-muted)}.municipality-name{font-weight:700}.municipality-table th.actions-cell,.municipality-table td.actions-cell{text-align:right;white-space:nowrap;vertical-align:middle;width:1%;min-width:132px;padding-left:16px;padding-right:18px}.municipality-table td.actions-cell .row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;line-height:0;display:flex}.municipality-master .table-wrap.is-fetching{opacity:.65}.municipality-master .panel-footer{flex-wrap:wrap}.municipality-master .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (width<=1100px){.municipality-stats{grid-template-columns:1fr}}.ward-master{flex-direction:column;gap:22px;display:flex}.ward-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.ward-table{border-collapse:collapse;width:100%;min-width:760px}.ward-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:14px 18px;font-size:11px;font-weight:700}.ward-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:16px 18px;font-size:14px}.ward-table tr:last-child td{border-bottom:none}.ward-table tbody tr:hover{background:var(--color-surface-muted)}.ward-name{font-weight:700}.ward-table th.actions-cell,.ward-table td.actions-cell{text-align:right;white-space:nowrap;vertical-align:middle;width:1%;min-width:132px;padding-left:16px;padding-right:18px}.ward-table td.actions-cell .row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;line-height:0;display:flex}.ward-master .table-wrap.is-fetching{opacity:.65}.ward-master .panel-footer{flex-wrap:wrap}.ward-master .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (width<=1100px){.ward-stats{grid-template-columns:1fr}}.app-shell:has(.permission-page){height:100dvh;max-height:100dvh}.app-shell:has(.permission-page) .app-main{flex-direction:column;height:100dvh;min-height:0;max-height:100dvh;display:flex;overflow:hidden}.permission-page{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow:hidden}.permission-page .page-breadcrumb,.permission-page .page-header,.permission-page .error-banner{flex:none}.permission-workspace{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:280px minmax(0,1fr);align-items:stretch;gap:18px;min-height:0;display:grid;overflow:hidden}.permission-roles,.permission-board{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.permission-roles{flex-direction:column;gap:12px;height:100%;min-height:0;padding:14px;display:flex;overflow:hidden}.permission-roles .search-field{flex:none;min-width:0}.role-list{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:auto}.role-pick{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-text);border-radius:999px;align-items:center;gap:4px;padding:4px 6px 4px 16px;display:flex}.role-pick:hover{border-color:var(--color-primary)}.role-pick.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.role-pick-name{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;flex:1;padding:8px 0;font-size:14px;font-weight:600;overflow:hidden}.role-pick-menu{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex-shrink:0;font-size:18px;line-height:1}.role-pick-menu:hover,.role-pick-menu[aria-expanded=true]{background:#1f2a240f}.role-action-menu{z-index:40;border:1px solid var(--color-border);background:var(--color-surface);min-width:148px;box-shadow:var(--shadow-md,0 10px 30px #0f172a1f);border-radius:12px;padding:6px;position:fixed}.role-action-menu button{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;display:block}.role-action-menu button:hover{background:var(--color-surface-muted)}.role-action-menu button.is-danger{color:var(--color-danger)}.permission-page .field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.permission-page .field span{font-size:13px;font-weight:700}.permission-page .field abbr{color:var(--color-danger);text-decoration:none}.permission-page .field input,.permission-page .field textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:12px;padding:10px 12px}.permission-page .field textarea{resize:vertical;min-height:80px}.permission-page .field .field-error{color:var(--color-danger);font-size:12px;font-weight:600}.permission-page form .error-banner{margin-bottom:12px}.role-pick.selected .role-pick-menu:hover{background:#ffffff2e}.role-add{border-top:1px solid var(--color-border);flex:none;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:auto;padding-top:12px;display:grid}.role-add-field input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:40px;color:var(--color-text);border-radius:12px;padding:0 12px}.role-add-field input:focus{border-color:var(--color-primary);outline:2px solid #2f6b4f2e}.role-add-button{white-space:nowrap;border-radius:999px;height:40px;padding:0 14px}.role-add-error{color:var(--color-danger);grid-column:1/-1;margin:0;font-size:12px;font-weight:600}.permission-page .modal-backdrop{z-index:30;background:#1f2a2459;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.permission-page .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);border-radius:18px;padding:22px 22px 18px}.permission-page .modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.permission-page .modal-header h2{margin:0;font-size:22px}.permission-page .modal-close{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:10px;font-size:20px;line-height:1}.permission-page .modal-actions{justify-content:flex-end;gap:10px;display:flex}.permission-page .delete-role-copy{color:var(--color-text);margin:0 0 18px;font-size:14px;line-height:1.5}.permission-page .btn-danger{background:var(--color-surface);border:1px solid var(--color-danger);color:var(--color-danger)}.permission-page .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.permission-board{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.permission-head,.permission-group-head,.permission-row{grid-template-columns:minmax(0,1fr) 110px;align-items:center;display:grid}.permission-head{flex:none;padding:16px 22px 12px;font-size:15px;font-weight:700}.permission-head span:last-child,.permission-group-head .permission-check,.permission-row .permission-check{justify-self:center}.permission-groups{flex-direction:column;flex:auto;gap:16px;min-height:0;padding:4px 18px 8px;display:flex;overflow-y:auto}.permission-group{border:1px solid var(--color-border);border-radius:12px;flex:none;overflow:hidden}.permission-group-head{background:var(--color-sidebar);color:#fff;padding:12px 18px;font-weight:700}.permission-row{border-top:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;padding:13px 18px}.permission-row:hover{background:var(--color-surface-muted)}.permission-check{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;margin:0}.permission-check:disabled{cursor:default}.permission-group-head .permission-check{accent-color:#f0b429}.permission-footer{border-top:1px solid var(--color-border);flex:none;justify-content:flex-end;align-items:center;gap:14px;padding:18px;display:flex}.permission-notice{color:var(--color-primary);margin:0;font-size:14px;font-weight:600}.permission-footer .btn:disabled{opacity:.55;cursor:not-allowed}@media (width<=1100px){.app-shell:has(.permission-page) .app-topbar{flex:none}}@media (width<=900px){.app-shell:has(.permission-page){height:auto;min-height:100dvh;max-height:none}.app-shell:has(.permission-page) .app-main{-webkit-overflow-scrolling:touch;height:auto;min-height:100dvh;max-height:none;overflow:auto}.permission-page{flex:none;min-height:0;padding-bottom:24px;overflow:visible}.permission-workspace{flex:none;grid-template-rows:auto auto;grid-template-columns:1fr;gap:14px;overflow:visible}.permission-roles{height:auto;max-height:none;overflow:visible}.role-list{-webkit-overflow-scrolling:touch;flex:none;max-height:min(280px,40dvh);padding-right:2px;overflow:auto}.role-pick{box-sizing:border-box;min-width:0}.role-add{margin-top:8px}.permission-board{height:auto;min-height:0;overflow:visible}.permission-groups{flex:none;gap:12px;max-height:none;padding:4px 14px 12px;overflow:visible}.permission-head{padding:14px 14px 10px}.permission-head,.permission-group-head,.permission-row{grid-template-columns:minmax(0,1fr) 72px;gap:8px}.permission-group-head,.permission-row{padding-left:14px;padding-right:14px}.permission-footer{z-index:2;background:var(--color-surface);padding:14px;position:sticky;bottom:0}}@media (width<=720px){.permission-page .page-subtitle{font-size:13px}.role-add{grid-template-columns:minmax(0,1fr)}.role-add-button{width:100%}.permission-page .modal-backdrop{align-items:end;padding:12px}.permission-page .modal{border-radius:18px 18px 12px 12px;width:100%;max-height:min(640px,100dvh - 24px);overflow:auto}}.smtp-page{flex-direction:column;gap:20px;display:flex}.smtp-page .btn{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;height:42px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.smtp-page .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.smtp-page .btn-primary{background:var(--color-primary-gradient);color:#fff;border:none}.smtp-page .btn:disabled{opacity:.7;cursor:not-allowed}.smtp-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:16px;padding:22px;display:flex}.smtp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.smtp-field{flex-direction:column;gap:6px;display:flex}.smtp-field.full{grid-column:1/-1}.smtp-field label{color:var(--color-text-muted);font-size:13px;font-weight:600}.smtp-field input,.smtp-field select,.smtp-field .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;height:42px;padding:0 12px}.smtp-field .theme-select{width:100%;min-width:0;display:block}.smtp-toggle{align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.smtp-actions{justify-content:flex-end;gap:10px;display:flex}.smtp-banner{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.smtp-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.smtp-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}@media (width<=720px){.smtp-grid{grid-template-columns:1fr}}.configuration-page{flex-direction:column;gap:22px;display:flex}.ranking-section{flex-direction:column;gap:16px;display:flex}.section-heading h2{margin:0;font-size:20px}.section-heading p{color:var(--color-text-muted);margin:4px 0 0;font-size:14px}.section-tabs{flex-wrap:wrap;gap:8px;display:flex}.section-tab{border:1px solid var(--color-border);background:var(--color-surface-muted);height:38px;color:var(--color-text-muted);border-bottom:none;border-radius:12px 12px 0 0;padding:0 16px;font-size:14px;font-weight:700}.section-tab.active{background:var(--color-surface);color:var(--color-primary)}.api-form{border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:14px;padding:16px 18px;display:grid}.api-form-single{border-bottom:none;grid-template-columns:1fr;max-width:720px}.api-form .field-span{grid-column:1/-1}.api-actions{justify-content:flex-end;gap:10px;display:flex}.api-url{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.secret-mask{letter-spacing:.14em;color:var(--color-text-muted)}@media (width<=800px){.api-form{grid-template-columns:1fr}}.weight-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.weight-banner{background:var(--color-warning-soft);color:var(--color-warning);border-radius:12px;flex:240px;padding:12px 14px;font-size:13px;font-weight:600}.weight-banner.balanced{background:var(--color-primary-soft);color:var(--color-primary)}.ranking-table{border-collapse:collapse;width:100%;min-width:760px}.ranking-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:14px 18px;font-size:11px;font-weight:700}.ranking-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:16px 18px;font-size:14px}.ranking-table tr:last-child td{border-bottom:none}.ranking-table tbody tr:hover{background:var(--color-surface-muted)}.ranking-table tbody tr.is-editing{background:var(--color-primary-soft)}.inline-form{border-bottom:1px solid var(--color-border);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.inline-labels,.inline-row{grid-template-columns:minmax(180px,1.5fr) minmax(170px,1fr) 150px 40px;align-items:start;gap:10px;display:grid}.inline-field{flex-direction:column;gap:6px;min-width:0;display:flex}.inline-labels span{color:var(--color-text);font-size:13px;font-weight:700}.inline-labels abbr{color:var(--color-danger);text-decoration:none}.inline-row input,.inline-row select,.inline-row .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:42px;color:var(--color-text);border-radius:12px;padding:0 12px}.inline-row .theme-select{width:100%;min-width:0;display:block}.configuration-page .page-size,.api-details .page-size{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.configuration-page .page-size .theme-select,.api-details .page-size .theme-select{min-width:72px;display:inline-flex}.configuration-page .page-size .theme-select-trigger,.api-details .page-size .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:64px;height:34px;min-height:34px;color:var(--color-text);border-radius:10px;padding:0 8px}.inline-row input:focus,.inline-row select:focus,.inline-row .theme-select.is-open .theme-select-trigger{border-color:var(--color-primary);outline:2px solid #b8924a47}.inline-row input[aria-invalid=true],.inline-row select[aria-invalid=true],.inline-field.is-invalid .theme-select-trigger{border-color:var(--color-danger)}.inline-remove{border:1px solid var(--color-border);background:var(--color-surface);width:40px;height:42px;color:var(--color-text-muted);border-radius:12px;font-size:20px;line-height:1}.inline-error{color:var(--color-danger);margin:0;font-size:12px;font-weight:600}.inline-form-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.inline-add{color:var(--color-primary);background:0 0;border:none;padding:0;font-weight:700}.inline-save{color:var(--color-text-muted);align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}@media (width<=900px){.inline-labels{display:none}.inline-row{grid-template-columns:1fr}}.ranking-name{font-weight:700}.ranking-table .weight-cell{font-variant-numeric:tabular-nums;font-weight:700}.ranking-table th.actions-cell,.ranking-table td.actions-cell{text-align:right;white-space:nowrap;vertical-align:middle;width:1%}.ranking-table td.actions-cell .icon-btn+.icon-btn{margin-left:8px}.configuration-page .icon-btn{border:1px solid var(--color-border);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex}.configuration-page .icon-btn svg{width:16px;height:16px}.configuration-page .icon-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.configuration-page .icon-btn-danger{color:var(--color-danger)}.configuration-page .icon-btn-danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-soft,#fef2f2)}.configuration-page .modal-backdrop{z-index:30;background:#1f2a2459;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.configuration-page .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);border-radius:18px;padding:22px 22px 18px}.configuration-page .modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.configuration-page .modal-header h2{margin:0;font-size:22px}.configuration-page .modal-close{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;font-size:20px;line-height:1}.configuration-page .delete-master-copy{color:var(--color-text);margin:0 0 18px;font-size:14px;line-height:1.5}.configuration-page .modal-actions{justify-content:flex-end;gap:10px;display:flex}.configuration-page .btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.configuration-page .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.configuration-page .icon-btn:disabled{opacity:.55;cursor:not-allowed}.configuration-page .table-wrap.is-fetching{opacity:.65}.configuration-page .panel-footer{flex-wrap:wrap}.configuration-page .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.audit-logs{flex-direction:column;gap:22px;display:flex}.audit-logs .search-field{min-width:220px;position:relative}.audit-logs .search-field input{border:1px solid var(--color-border-strong);background:var(--color-surface-muted);width:100%;height:40px;color:var(--color-text);border-radius:12px;padding:0 14px 0 38px}.audit-logs .search-icon{color:var(--color-text-soft);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.audit-logs .table-wrap{overflow-x:auto}.audit-logs .panel-footer{border-top:1px solid var(--color-border);color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:13px;display:flex}.audit-logs .pager{gap:8px;display:flex}.audit-logs .pager button{border:1px solid var(--color-border-strong);background:var(--color-surface);width:34px;height:34px;color:var(--color-text);border-radius:10px}.audit-logs .pager button:disabled{opacity:.45;cursor:not-allowed}.audit-logs .state-message{text-align:center;color:var(--color-text-muted);padding:40px 18px}.audit-logs .muted{color:var(--color-text-muted)}.audit-filters{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(140px,1fr)) auto;align-items:end;gap:12px;padding:16px 18px;display:grid}.audit-search{grid-column:1/2}.audit-filter-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.audit-filter-field input,.audit-filter-field select,.audit-filter-field .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);height:40px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px}.audit-filter-field .theme-select{width:100%;min-width:0;display:block}.audit-table{border-collapse:collapse;width:100%;min-width:980px}.audit-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:14px 18px;font-size:11px;font-weight:700}.audit-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:14px 18px;font-size:14px}.audit-table tr:last-child td{border-bottom:none}.audit-table tbody tr:hover{background:var(--color-surface-muted)}.audit-table .actions-cell{text-align:right;width:100px}.entity-pill,.action-pill{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.entity-pill,.action-pill.insert{background:var(--color-success-soft);color:var(--color-success)}.action-pill.update{background:var(--color-accent-blue-soft);color:var(--color-accent-blue)}.action-pill.delete{background:var(--color-danger-soft);color:var(--color-danger)}.action-pill.other{background:var(--color-primary-soft);color:var(--color-warning)}.actor-name{font-weight:650}.actor-email{font-size:12px}.audit-logs .panel-footer{flex-wrap:wrap}.audit-logs .pager-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.audit-logs .page-size{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.audit-logs .page-size select,.audit-logs .page-size .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:64px;height:34px;min-height:34px;color:var(--color-text);border-radius:10px;padding:0 8px}.audit-logs .page-size .theme-select{min-width:72px;display:inline-flex}.audit-logs .pager button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.audit-logs .pager-ellipsis{text-align:center;width:24px;color:var(--color-text-soft)}.modal-backdrop{z-index:30;background:#1f2a2459;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;width:min(560px,100vw - 32px);box-shadow:0 18px 48px #1f2a2429}.modal-header{justify-content:space-between;gap:12px;padding:18px 20px 10px;display:flex}.modal-header h2{margin:0 0 4px;font-size:18px}.modal-header p{color:var(--color-text-muted);margin:0;font-size:13px}.modal-close{background:var(--color-surface-muted);cursor:pointer;border:none;border-radius:10px;width:34px;height:34px;font-size:20px;line-height:1}.audit-detail-modal{width:min(920px,100vw - 32px);max-height:calc(100vh - 48px);overflow:auto}.audit-detail-grid{grid-template-columns:1fr 1fr;gap:14px;padding:0 20px 16px;font-size:14px;display:grid}.detail-label{letter-spacing:.05em;color:var(--color-text-soft);text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.audit-changes{flex-direction:column;gap:10px;padding:0 20px 20px;display:flex}.audit-changes-empty{background:var(--color-surface-muted);color:var(--color-text-muted);border-radius:12px;margin:0 20px 20px;padding:16px;font-size:13px}.audit-changes-table{border-collapse:collapse;width:100%;min-width:520px}.audit-changes-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);padding:10px 12px;font-size:11px;font-weight:700}.audit-changes-table td{border-bottom:1px solid var(--color-border);vertical-align:top;word-break:break-word;padding:12px;font-size:13px}.audit-changes-table tr:last-child td{border-bottom:none}.change-field{width:28%;font-weight:700}.change-old{color:var(--color-danger);background:var(--color-danger-soft)}.change-new{color:var(--color-success);background:var(--color-success-soft)}@media (width<=1100px){.audit-filters{grid-template-columns:1fr 1fr}.audit-search{grid-column:1/-1}.audit-detail-grid{grid-template-columns:1fr}}.opportunity-list{flex-direction:column;gap:22px;display:flex}.opportunity-list .btn:disabled{opacity:.55;cursor:not-allowed}.opportunity-list .pager-controls label{align-items:center;gap:8px;display:inline-flex}.opportunity-list .pager-controls select,.opportunity-list .pager-controls .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:64px;height:34px;min-height:34px;color:var(--color-text);border-radius:10px;padding:0 8px}.opportunity-list .pager-controls .theme-select{min-width:72px;display:inline-flex}.opportunity-list .page-breadcrumb a{color:var(--color-text-muted);text-decoration:none}.opportunity-list .page-breadcrumb a:hover{color:var(--color-text)}.opportunity-filters{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(auto-fill,minmax(158px,1fr));align-items:center;gap:10px;padding:16px 18px;display:grid}.opportunity-search{grid-column:span 2;width:100%;min-width:0}.opportunity-filters>.theme-select,.opportunity-filters>.multi-select{width:100%;min-width:0;max-width:100%}.opportunity-filters .theme-select-trigger,.opportunity-filters .multi-select-trigger,.opportunity-filters .filter-select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.opportunity-filters .theme-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.opportunity-filters .opportunity-reset-filters{box-sizing:border-box;white-space:nowrap;width:100%;min-width:0;max-width:100%;height:42px}.multi-select{position:relative}.multi-select-trigger{text-align:left;cursor:pointer;min-width:0}.multi-select-menu{z-index:6;background:var(--color-surface);border:1px solid var(--color-border);min-width:200px;max-height:280px;box-shadow:var(--shadow-md);box-sizing:border-box;border-radius:12px;flex-direction:column;gap:2px;padding:8px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden auto}.multi-select-menu.is-portaled{z-index:1200;position:fixed;top:auto;left:auto}.multi-select-menu label{color:var(--color-text);border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:13px;font-weight:600;display:flex}.multi-select-menu label:hover{background:var(--color-primary-soft);color:var(--color-primary-deep)}.multi-select-trigger:focus-visible,.multi-select.is-open .multi-select-trigger{border-color:var(--color-primary);outline:2px solid #b8924a47}.opportunity-table{border-collapse:collapse;width:100%;min-width:2060px}.opportunity-table th{text-align:left;letter-spacing:.06em;color:var(--color-primary-deep);border-bottom:1px solid var(--color-border);background:var(--color-surface);white-space:nowrap;padding:14px;font-size:11px;font-weight:700}.opportunity-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);white-space:nowrap;padding:14px;font-size:14px}.opportunity-table tbody tr{cursor:pointer}.opportunity-table tbody tr:hover{background:var(--color-primary-soft)}.row-actions{text-align:right;white-space:nowrap;vertical-align:middle;width:1%}.row-actions .icon-btn+.icon-btn{margin-left:8px}.opportunity-list .icon-btn{border:1px solid var(--color-border);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex}.opportunity-list .icon-btn svg{width:16px;height:16px}.opportunity-list .icon-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.opportunity-list .btn-small{border-radius:10px;height:34px;padding:0 12px;font-size:13px}.opportunity-id{color:var(--color-primary);font-weight:700}.opportunity-name{font-weight:700}.opportunity-table td.rejection-reason{white-space:normal;overflow-wrap:anywhere;max-width:280px}.status-identified,.status-screening{background:var(--color-accent-blue-soft);color:var(--color-accent-blue)}.status-under-review{background:var(--color-warning-soft);color:var(--color-warning)}.status-shortlisted{background:var(--color-primary-soft);color:var(--color-primary)}.status-negotiation{background:var(--color-primary-soft);color:var(--color-warning)}.status-on-hold{background:var(--color-surface-muted);color:var(--color-text-muted)}.status-closed,.status-rejected{background:var(--color-danger-soft);color:var(--color-danger)}.opportunity-form-shell{padding:8px 8px 24px}.opportunity-list .error-banner{margin:0}.rank-pill{background:var(--color-primary-soft);min-width:52px;color:var(--color-primary-deep);border-radius:999px;justify-content:center;align-items:center;padding:4px 8px;font-weight:800;display:inline-flex}.land-form{box-sizing:border-box;flex-direction:column;gap:22px;width:100%;min-width:0;max-width:100%;display:flex}.land-form .page-breadcrumb a{color:var(--color-text-muted);text-decoration:none}.land-form .page-breadcrumb a:hover{color:var(--color-text)}.mode-pill{border-radius:999px;align-items:center;height:42px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.mode-view{background:var(--color-surface-muted);color:var(--color-text-muted)}.mode-edit,.mode-add{background:var(--color-primary-soft);color:var(--color-primary)}.land-field>span abbr{color:var(--color-danger);margin-left:2px;text-decoration:none}.land-field small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}.land-field.has-error input:not([type=checkbox]),.land-field.has-error select,.land-field.has-error textarea,.land-field.has-error .theme-select-trigger,.land-field.has-error .multi-select-trigger,.land-field.has-error .tag-field{border-color:var(--color-danger)}.land-field.has-error .tag-field input{border:none}.land-section-placeholder{color:var(--color-text-muted);margin:8px 0 0;font-size:14px}.ground-vision-missing-asset{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.ground-vision-missing-asset .land-section-placeholder{margin:0}.ground-vision-create-banner{border:1px solid var(--color-border);background:var(--color-surface-muted,#5136430f);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:14px 16px;display:flex}.ground-vision-create-banner strong{color:var(--color-text);margin-bottom:4px;font-size:15px;display:block}.ground-vision-create-banner .land-section-placeholder{max-width:52rem;margin:0}.ground-vision-create-banner .btn{flex-shrink:0}.ground-vision-panel{flex-direction:column;gap:12px;display:flex}.ground-vision-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ground-vision-toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ground-vision-embed-error-block{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.ground-vision-toolbar-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.ground-vision-toolbar-copy strong{color:var(--color-text);font-size:15px}.ground-vision-toolbar-copy span{color:var(--color-text-muted);font-size:13px;font-weight:600;line-height:1.45}.gv-report-menu{position:relative}.gv-report-menu .btn{align-items:center;gap:8px;display:inline-flex}.gv-report-caret{opacity:.85;font-size:11px}.gv-report-menu-list{z-index:30;border:1px solid var(--color-border);background:var(--color-surface);min-width:210px;box-shadow:var(--shadow-md,0 10px 30px #0f172a1f);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.gv-report-menu-item{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:600;display:block}.gv-report-menu-item:hover:not(:disabled){background:var(--color-surface-muted)}.gv-report-menu-item:disabled{opacity:.55;cursor:not-allowed}.ground-vision-frame-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg,12px);background:var(--color-surface,#fff);flex-direction:column;height:min(75vh,900px);min-height:720px;margin-top:0;display:flex;overflow:hidden}.ground-vision-embed-error{border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);margin:0;padding:10px 14px}.ground-vision-frame{border:0;flex:auto;width:100%;height:100%;min-height:0;display:block}.opp-map-plotting{flex-direction:column;gap:14px;margin-top:8px;display:flex}.opp-map-plotting-banner{border-radius:12px;margin:0;padding:12px 14px;font-size:13px;font-weight:600}.opp-map-plotting-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.opp-map-plotting-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.opp-map-plotting-summary{border:1px solid var(--color-border);background:var(--color-surface,#fff);border-radius:14px;flex-direction:column;gap:14px;padding:14px 16px;display:flex}.opp-map-plotting-summary-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.opp-map-plotting-summary-head h3{color:var(--color-text);margin:0;font-size:15px}.opp-map-plotting-summary-head p{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.opp-map-plotting-status{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:700}.opp-map-plotting-status.is-saved{background:var(--color-primary-soft);color:var(--color-primary)}.opp-map-plotting-status.is-dirty{color:#8a6230;background:#f8f1e3}.opp-map-plotting-status.is-empty,.opp-map-plotting-status.is-loading{background:var(--color-surface-muted);color:var(--color-text-muted)}.opp-map-plotting-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.opp-map-plotting-summary dl>div{background:var(--color-surface-muted);border-radius:12px;min-width:0;padding:10px 12px}.opp-map-plotting-summary dt{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-soft);font-size:11px;font-weight:700}.opp-map-plotting-summary dd{color:var(--color-text);word-break:break-word;margin:4px 0 0;font-size:15px;font-weight:700}.opp-map-plotting-legend{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:8px 14px;margin:0;padding:12px 0 0;list-style:none;display:flex}.opp-map-plotting-legend li{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.opp-map-plotting-legend-swatch{border-radius:3px;flex:none;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0000001f}.opp-map-plotting-info{color:#1f2a24;flex-direction:column;gap:10px;min-width:210px;max-width:260px;display:flex}.opp-map-plotting-info-head{align-items:flex-start;gap:8px;display:flex}.opp-map-plotting-info-swatch{border-radius:3px;flex:none;width:12px;height:12px;margin-top:3px;box-shadow:inset 0 0 0 1px #0000001f}.opp-map-plotting-info-kicker{letter-spacing:.04em;text-transform:uppercase;color:#6b7280;font-size:11px;font-weight:700;display:block}.opp-map-plotting-info-head strong{margin-top:2px;font-size:14px;line-height:1.3;display:block}.opp-map-plotting-info dl{gap:6px;margin:0;display:grid}.opp-map-plotting-info dl>div{justify-content:space-between;gap:12px;display:flex}.opp-map-plotting-info dt{color:#6b7280;font-size:12px}.opp-map-plotting-info dd{text-align:right;margin:0;font-size:12px;font-weight:700}.opp-map-plotting-stage{border:1px solid var(--color-border);background:#f6f8f5;border-radius:14px;min-height:420px;position:relative;overflow:hidden}.opp-map-plotting-map{width:100%;height:420px}.opp-map-plotting-state{text-align:center;min-height:420px;color:var(--color-text-muted);justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex}.opp-map-plotting-hint{color:var(--color-text-muted);margin:0;font-size:13px}.opp-map-plotting-actions{justify-content:flex-end;display:flex}@media (width<=720px){.opp-map-plotting-summary-head{flex-direction:column}.opp-map-plotting-summary dl{grid-template-columns:1fr}}.google-maps-link-field{flex-direction:column;gap:8px;display:flex}.google-maps-link-field .btn{align-self:flex-start}.google-maps-link-muted{color:var(--color-text-muted);font-size:12px}.google-maps-link-ok{color:var(--color-primary);font-size:12px;font-weight:600}.land-section-save{justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex}.land-section-save p{margin:0;font-size:13px;font-weight:600}.land-section-save p.is-error{color:var(--color-danger)}.land-section-save p.is-ok{color:var(--color-primary)}.land-notice{background:var(--color-primary-soft);color:var(--color-primary);border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.land-notice-confirm{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.land-notice-confirm span{flex:1;min-width:200px;font-weight:600}.land-form-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:22px;display:grid}.land-nav{overscroll-behavior:contain;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);max-height:calc(100vh - 32px);box-shadow:var(--shadow-sm);scrollbar-gutter:stable;flex-direction:column;gap:16px;padding:14px;display:flex;position:sticky;top:16px;overflow:hidden auto}.nav-scope{flex-direction:column;gap:8px;min-height:0;display:flex}.land-nav-label,.parcel-switch-head p{letter-spacing:.08em;color:var(--color-text-soft);margin:0;font-size:11px;font-weight:700}.land-nav-search{display:block}.land-nav-search input{box-sizing:border-box;border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:10px;margin:0;padding:8px 10px;font-size:13px;font-weight:600}.land-nav-search input::placeholder{color:var(--color-text-soft);font-weight:600}.land-nav-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.land-nav-empty{color:var(--color-text-soft);padding:8px 10px;font-size:12px;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.land-nav ol{overscroll-behavior:contain;flex-direction:column;gap:4px;max-height:min(42vh,420px);margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow:hidden auto}.land-nav ol button{text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;border-radius:10px;align-items:flex-start;gap:10px;padding:8px;display:flex}.land-nav ol button span{flex-direction:column;gap:2px;min-width:0;font-size:13px;font-weight:700;display:flex}.land-nav ol small{color:var(--color-text-soft);font-size:11px;font-weight:600}.land-nav ol button.is-active{background:var(--color-primary-soft)}.land-nav ol button.is-active span{color:var(--color-primary)}.land-nav ol button.is-suggestion{background:var(--color-primary-soft);box-shadow:inset 3px 0 #c4a15a}.land-nav ol button.is-suggestion span{color:var(--color-primary-deep)}.land-nav ol button.is-suggestion small{color:var(--color-warning)}.land-nav ol button.is-active.is-suggestion{box-shadow:inset 3px 0 0 var(--color-primary)}.parcel-category-tabs .tab.is-suggestion{color:var(--color-primary-deep);background:var(--color-primary-soft);border-bottom-color:#c4a15a}.parcel-category-tabs .tab.active.is-suggestion{color:var(--color-accent-blue);background:var(--color-primary-soft);border-bottom-color:var(--color-accent-blue)}.parcel-switch{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.parcel-switch-head{justify-content:space-between;align-items:center;display:flex}.parcel-switch-head button,.repeat-card-head button{color:var(--color-primary);background:0 0;border:none;font-size:13px;font-weight:700}.parcel-chips{flex-wrap:wrap;gap:6px;display:flex}.parcel-chips button{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.parcel-chips button.is-active{background:var(--color-primary-gradient);color:#fff;border-color:#0000}.land-nav ol button.is-active.is-parcel{background:var(--color-accent-blue-soft)}.land-nav ol button.is-active.is-parcel span{color:var(--color-accent-blue)}.nav-scope+.nav-scope{border-top:1px solid var(--color-border);padding-top:12px}.land-nav-label small{letter-spacing:0;text-transform:none;color:var(--color-text-muted);margin-top:3px;font-size:11px;font-weight:700;display:block}.nav-scope.is-shared .land-nav-label{color:var(--color-primary)}.nav-scope.is-parcel .land-nav-label{color:var(--color-accent-blue)}.parcel-board-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:10px;padding:10px 12px;display:flex}.parcel-nav{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.parcel-nav-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.parcel-nav-head button{color:var(--color-accent-blue);background:0 0;border:none;font-size:13px;font-weight:700}.parcel-nav-list{overscroll-behavior:contain;flex-direction:column;gap:6px;max-height:min(28vh,240px);padding-right:4px;display:flex;overflow:hidden auto}.parcel-nav-item{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;display:flex}.parcel-nav-item.is-active{border-color:var(--color-accent-blue);background:var(--color-accent-blue-soft)}.parcel-nav-item>button:first-child{text-align:left;color:var(--color-text);background:0 0;border:none;flex:1;padding:8px 10px;font-size:13px;font-weight:700}.parcel-nav-item.is-active>button:first-child{color:var(--color-accent-blue)}.parcel-nav-remove{color:var(--color-danger);background:0 0;border:none;padding:8px 10px 8px 0;font-size:12px;font-weight:700}.parcel-category-toolbar{flex-direction:column;gap:8px;min-width:0;display:flex}.parcel-category-search{max-width:320px}.parcel-category-tabs{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;border-bottom:1px solid var(--color-border);gap:4px;padding-bottom:2px;display:flex;overflow:auto hidden}.parcel-category-tabs .tab{height:40px;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:0 14px;font-size:13px;font-weight:700}.parcel-category-tabs .tab.active{color:var(--color-accent-blue);border-bottom-color:var(--color-accent-blue);background:0 0}.parcel-board-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-blue);flex-shrink:0;margin:0;font-size:11px;font-weight:700}.parcel-board{flex-wrap:wrap;flex:1;gap:8px;min-width:0;display:flex}.parcel-card{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:999px;align-items:center;display:inline-flex}.parcel-card.is-active{border-color:var(--color-accent-blue);background:var(--color-accent-blue-soft)}.parcel-card-select{color:var(--color-text);background:0 0;border:none;padding:6px 12px;font-size:13px;font-weight:700}.parcel-card.is-active .parcel-card-select{color:var(--color-accent-blue)}.parcel-card-remove{color:var(--color-danger);background:0 0;border:none;padding:6px 12px 6px 0;font-size:12px;font-weight:700}.scope-pill{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;height:20px;margin-right:8px;padding:0 7px;font-size:10px;display:inline-flex}.scope-pill.is-shared{background:var(--color-primary-soft);color:var(--color-primary)}.scope-pill.is-parcel{background:var(--color-accent-blue-soft);color:var(--color-accent-blue)}.land-section.is-shared{border-left:4px solid var(--color-primary)}.land-section.is-parcel{border-left:4px solid var(--color-accent-blue)}.land-section.is-parcel .land-section-head p{color:var(--color-accent-blue)}.land-sections{flex-direction:column;gap:16px;min-width:0;display:flex}.land-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 18px 20px;scroll-margin-top:16px}.land-section-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.land-section-head p{letter-spacing:.04em;color:var(--color-primary);margin:0 0 4px;font-size:12px;font-weight:700}.land-section-head h2,.repeat-card-head h3,.extract-panel h3{color:var(--color-text);margin:0}.land-section-head h2{font-size:22px}.default-image-field{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:12px;grid-template-columns:minmax(180px,240px) 1fr;align-items:center;gap:8px 16px;margin-bottom:16px;padding:12px 14px;display:grid}.default-image-copy{grid-column:1/-1}.default-image-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);font-size:12px;font-weight:700;display:block}.default-image-copy p,.default-image-error{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.default-image-error{color:var(--color-danger,#b42318);grid-column:1/-1}.default-image-preview{border:1px dashed var(--color-border);background:var(--color-surface);width:160px;height:120px;color:var(--color-text-muted);border-radius:10px;place-items:center;font-size:13px;display:grid;overflow:hidden}.default-image-preview img{object-fit:cover;width:100%;height:100%}.default-image-actions{flex-wrap:wrap;gap:8px;display:flex}.default-image-actions .btn{border:1px solid var(--color-border-strong);background:var(--color-surface);height:38px;color:var(--color-text);border-radius:12px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.opportunity-status-row{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:16px;padding:12px 14px;display:flex}.opportunity-status-label{flex-direction:column;gap:2px;min-width:160px;display:flex}.opportunity-status-caption{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);font-size:12px;font-weight:700}.opportunity-status-value{color:var(--color-text);font-size:15px;font-weight:700}.opportunity-status-change-link{font:inherit;color:var(--color-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:14px;font-weight:700;text-decoration:underline}.opportunity-status-change-link:hover{color:var(--color-text)}.opportunity-status-notice{color:var(--color-primary);flex:100%;margin:0;font-size:13px;font-weight:600}.opportunity-status-pending-note{background:var(--color-warning-soft);color:var(--color-text);border-radius:10px;flex:100%;margin:0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.45}.opportunity-status-pending-note strong{font-weight:800}.land-grid-groups{flex-direction:column;gap:16px;display:flex}.land-field-group{background:var(--color-surface-muted);border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:var(--radius-lg);padding:16px 16px 18px}#section-financial .land-field-group,#section-ownership .land-field-group{background:0 0}#section-ownership .land-field-group{border-left-color:#7a8f9e}.land-field-group-head{border-bottom:1px solid var(--color-border);margin:0 0 14px;padding-bottom:12px}.land-field-group-title{letter-spacing:normal;text-transform:none;color:var(--color-text);margin:0;font-size:18px;font-weight:700}.land-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.land-field{flex-direction:column;gap:6px;min-width:0;display:flex}.land-field.is-wide{grid-column:1/-1}.land-field>span{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.field-calc-hint{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.field-calc-hint-btn{width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.field-calc-hint-btn:hover,.field-calc-hint.is-open .field-calc-hint-btn{color:var(--color-primary);background:var(--color-primary-soft)}.field-calc-hint-popover{border:1px solid var(--color-border);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);min-width:240px;max-width:min(380px,70vw);color:var(--color-text);white-space:normal;flex-direction:column;gap:6px;padding:10px 12px;font-size:12px;font-weight:500;line-height:1.45;display:flex;box-shadow:0 8px 24px #1f2a241f}.field-calc-hint-popover strong{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:700}.field-calc-hint-body{white-space:pre-line;font-variant-numeric:tabular-nums}.land-field.is-suggestion input,.land-field.is-suggestion select,.land-field.is-suggestion textarea{background:var(--color-primary-soft);border-color:#c4a15a}.land-field.is-suggestion em{color:var(--color-warning);font-size:11px;font-style:normal;font-weight:700}.land-form .btn:disabled{opacity:.55;cursor:not-allowed}.rank-panel{flex-direction:column;gap:16px;display:flex}.rank-total{border:1px solid var(--color-border);background:var(--color-primary-soft);border-radius:16px;justify-content:space-between;align-items:flex-end;gap:16px;padding:16px 18px;display:flex}.rank-total span{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:12px;font-weight:700;display:block}.rank-total strong{color:var(--color-primary-deep);margin-top:4px;font-size:36px;line-height:1;display:block}.rank-total small{color:var(--color-text-muted);font-weight:600}.rank-groups{border:1px solid var(--color-border);background:var(--color-surface);border-radius:16px;padding:6px 18px 10px}.rank-group+.rank-group{border-top:1px solid var(--color-border);margin-top:6px;padding-top:8px}.rank-group h3{letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);margin:12px 0 4px;font-size:12px;font-weight:800}.rank-line{grid-template-columns:minmax(160px,1fr) minmax(160px,280px) 56px;align-items:center;gap:18px;min-height:52px;display:grid}.rank-line-name strong{font-size:15px;font-weight:600;display:block}.rank-line-name span{color:var(--color-text-muted);margin-top:2px;font-size:12px;font-weight:600;display:block}.rank-line input[type=range]{background:linear-gradient(90deg, var(--color-primary) var(--rank-fill), var(--color-border) var(--rank-fill));width:100%;height:6px;accent-color:var(--color-primary);appearance:none;border:none;border-radius:999px;margin:0;padding:0}.rank-line input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-primary);border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 4px #00000040}.rank-line input[type=range]::-moz-range-thumb{background:var(--color-primary);border:2px solid #fff;border-radius:50%;width:18px;height:18px}.rank-line input[type=number]{width:56px;min-height:32px;color:var(--color-text);text-align:right;appearance:textfield;background:0 0;border:none;border-radius:8px;padding:4px 0;font-weight:700}.rank-line input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.rank-line input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.rank-line input[type=number]:focus{background:var(--color-surface-muted);outline:none}.rank-note{color:var(--color-text-muted);margin:0;font-weight:600}.gv-scores{border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:var(--radius-lg);background:0 0;margin-top:8px;padding:16px 18px 18px}.gv-scores-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 14px;padding-bottom:12px;display:flex}.gv-scores-head .btn{flex-shrink:0}.gv-scores-head h3{color:var(--color-text);margin:0;font-size:18px;font-weight:700}.gv-scores-head p{color:var(--color-text-muted);margin:6px 0 0;font-size:13px;font-weight:600;line-height:1.45}.gv-scores-scroll{overflow-x:auto}.gv-scores-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.gv-scores-table th,.gv-scores-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:10px 12px;font-size:14px;font-weight:600}.gv-scores-table thead th{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.gv-scores-table td{text-align:right;width:120px}.gv-scores-table tbody th{color:var(--color-text);font-weight:600}.gv-scores-table tr.is-overall th,.gv-scores-table tr.is-overall td{background:var(--color-primary-soft);font-weight:700}@media (width<=900px){.rank-line{grid-template-columns:minmax(0,1fr) 56px}.rank-line input[type=range]{grid-column:1/-1}}.land-form .page-header{width:100%;min-width:0}.land-form .page-header .page-actions{flex-wrap:wrap;justify-content:flex-end;max-width:100%;margin-left:auto}.land-form .page-header .page-actions .btn{flex:0 auto}.extract-actions{justify-content:flex-end;margin-bottom:14px;display:flex}.extract-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 18px 20px}.extract-grid{grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:14px 16px;display:grid}.land-tabs{border-bottom:1px solid var(--color-border);gap:4px;display:flex}.land-tabs .tab{height:44px;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:0 18px;font-size:14px;font-weight:700}.land-tabs .tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:0 0}.land-tabs .tab:hover:not(.active){color:var(--color-text);background:0 0}.extract-status{background:var(--color-surface-muted);min-height:42px;color:var(--color-text-muted);border-radius:12px;align-items:center;margin:0;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.extract-status.is-processing{background:var(--color-warning-soft);color:var(--color-warning)}.extract-status.is-completed{background:var(--color-primary-soft);color:var(--color-primary)}.extract-status.is-failed{background:var(--color-danger-soft);color:var(--color-danger)}.upload-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.upload-list li{background:var(--color-surface-muted);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.upload-list button,.extract-reject{color:var(--color-danger);background:0 0;border:none;font-size:13px;font-weight:700}.extract-reject{margin:0}.extract-card textarea[readonly]{background:var(--color-surface-muted);cursor:default}.tag-field{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;flex-wrap:wrap;gap:8px;min-height:42px;padding:8px;display:flex}.tag-field button{background:var(--color-primary-soft);height:28px;color:var(--color-primary);border:none;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.tag-field input{background:0 0;border:none;flex:1;min-width:160px;height:28px;padding:0 4px}.tag-field input:focus{outline:none}.land-field input,.land-field select,.land-field .theme-select-trigger,.land-field textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-height:42px;color:var(--color-text);border-radius:12px;padding:10px 12px}.land-field .theme-select{width:100%;min-width:0;display:block}.land-field .measure-input,.land-field .percent-input{grid-template-columns:minmax(0,1fr) 108px;align-items:stretch;column-gap:8px;width:100%;min-width:0;display:grid}.land-field .amount-millions-input{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;grid-template-columns:minmax(0,1.2fr) minmax(132px,.8fr);align-items:stretch;column-gap:0;width:100%;min-width:0;display:grid;overflow:hidden}.land-field .measure-input>input,.land-field .percent-input>input{width:100%;min-width:0;max-width:100%;min-height:42px}.land-field .amount-millions-input>input{width:100%;min-width:0;max-width:100%;min-height:42px;box-shadow:none;background:0 0;border:none;border-radius:0}.land-field .amount-millions-input>input:focus{box-shadow:none;outline:none}.land-field .amount-millions-input:focus-within{border-color:var(--color-primary);outline:2px solid #b8924a47}.land-field .amount-millions-primary{padding-right:10px}.land-field .amount-millions-secondary{color:var(--color-text-muted);text-align:right;cursor:default;opacity:1;border-left:1px solid var(--color-border)!important;background:var(--color-surface-muted)!important}.land-field .measure-input .theme-select.measure-unit{width:108px;min-width:0;max-width:108px;display:block;position:relative}.land-field .measure-input .theme-select.is-open{z-index:6}.land-field .measure-input .measure-unit-trigger{box-sizing:border-box;justify-content:space-between;align-items:center;gap:4px;width:108px;min-width:0;max-width:108px;height:42px;min-height:42px;padding:0 10px;display:flex}.land-field .measure-input .theme-select-menu{width:108px;min-width:108px;left:auto;right:0}.land-field .percent-input>span{border:1px solid var(--color-border-strong);background:var(--color-surface);width:108px;min-height:42px;color:var(--color-text);border-radius:12px;justify-content:center;align-items:center;font-weight:700;display:flex}.land-field .multi-select{position:relative}.land-field .multi-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-height:42px;color:var(--color-text);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:12px;padding:10px 12px;overflow:hidden}.land-field .multi-select-menu{z-index:30;background:var(--color-surface);border:1px solid var(--color-border);max-height:240px;box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;gap:2px;padding:8px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.land-field .multi-select-menu.has-search{gap:0;max-height:280px;padding:0;overflow:hidden}.land-field .multi-select-search{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;padding:8px 8px 6px}.land-field .multi-select-search input{box-sizing:border-box;border:1px solid var(--color-border-strong);background:var(--color-bg);width:100%;color:var(--color-text);font:inherit;border-radius:8px;outline:none;margin:0;padding:8px 10px;font-size:13px;font-weight:600}.land-field .multi-select-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #b8924a29}.land-field .multi-select-options{flex-direction:column;flex:auto;gap:2px;min-height:0;padding:8px;display:flex;overflow:auto}.land-field .multi-select-empty{color:var(--color-text-muted);text-align:center;padding:10px;font-size:13px;font-weight:600}.land-field .multi-select-menu label{color:var(--color-text);border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:13px;font-weight:600;display:flex}.land-field .multi-select-menu label:hover{background:var(--color-primary-soft);color:var(--color-primary-deep)}.land-field .multi-select-menu input[type=checkbox]{width:16px;min-width:16px;height:16px;min-height:16px;margin:0;padding:0}.land-field textarea{resize:vertical;min-height:88px}.land-field input:focus,.land-field select:focus,.land-field .theme-select.is-open .theme-select-trigger,.land-field textarea:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.land-field.has-error input:not([type=checkbox]):focus,.land-field.has-error select:focus,.land-field.has-error textarea:focus,.land-field.has-error .theme-select.is-open .theme-select-trigger,.land-field.has-error .multi-select-trigger:focus,.land-field.has-error .tag-field:focus-within{border-color:var(--color-danger);outline-color:color-mix(in srgb, var(--color-danger) 28%, transparent)}.land-field.has-error .tag-field input:focus{border:none;outline:none}.land-field input:disabled,.land-field select:disabled,.land-field .theme-select.is-disabled .theme-select-trigger,.land-field textarea:disabled{background:var(--color-surface-muted);color:var(--color-text)}.land-field .tag-field input{background:0 0;border:none;border-radius:0;width:auto;min-height:28px;padding:0 4px}.land-field .tag-field input:focus{border:none;outline:none}.repeat-stack{flex-direction:column;gap:14px;display:flex}.repeat-card{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:14px;padding:14px}.repeat-card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.repeat-card-head-main{flex-wrap:wrap;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.repeat-card-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.repeat-card-head h3{align-items:baseline;gap:8px;font-size:16px;display:flex}.repeat-card-head h3 span{color:var(--color-text-soft);font-size:12px;font-weight:600}.file-drop{border:1px dashed var(--color-border-strong);background:var(--color-surface);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;gap:2px;min-height:84px;padding:14px;display:flex}.file-drop input{display:none}.file-drop strong{color:var(--color-text);font-size:14px}.file-drop span{color:var(--color-text-soft);font-size:12px;font-weight:600}.file-drop.has-file{border-style:solid;border-color:var(--color-primary);background:var(--color-primary-soft)}.extract-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;padding:14px}.extract-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.extract-panel h3{font-size:16px}.extract-panel-head p{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.extract-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.extract-list li{background:var(--color-surface-muted);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.extract-list span{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-soft);font-size:11px;font-weight:700}.extract-list strong{color:var(--color-text);font-size:14px}@media (width<=1100px){.land-form-layout{grid-template-columns:minmax(0,1fr);gap:16px;width:100%;min-width:0}.land-nav{box-sizing:border-box;width:100%;min-width:0;max-width:100%;max-height:none;position:static;overflow:hidden}.nav-scope{min-width:0;max-width:100%}.land-nav ol{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:auto;flex-flow:row;width:100%;min-width:0;max-width:100%;max-height:none;padding-right:0;overflow:auto hidden}.land-nav ol li{flex:none;max-width:min(80vw,280px)}.land-nav ol button,.land-nav ol button span{max-width:100%}.land-nav ol button span,.land-nav ol small{overflow-wrap:anywhere}.parcel-nav-list{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;flex-flow:row;width:100%;min-width:0;max-width:100%;max-height:none;overflow:auto hidden}.parcel-nav-item{flex:none}.land-sections,.land-section{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.land-section{padding:14px 12px 16px}.land-section-head{flex-direction:column;align-items:stretch}.land-section-head .btn,.land-section-save{width:100%}.land-section-save{flex-direction:column;align-items:stretch}.land-section-save .btn{width:100%}.land-grid,.land-grid-groups .land-grid,.extract-list,.extract-grid{grid-template-columns:minmax(0,1fr)}.land-field,.land-field.is-wide{grid-column:1/-1;width:100%;max-width:100%}.default-image-field{grid-template-columns:minmax(0,1fr)}.default-image-preview{width:100%;max-width:240px}.default-image-actions{flex-wrap:wrap}.land-field .measure-input,.land-field .percent-input{grid-template-columns:minmax(0,1fr) minmax(88px,108px)}.land-field .amount-millions-input{grid-template-columns:minmax(0,1fr) minmax(120px,.85fr)}.parcel-board-wrap{flex-direction:column;align-items:stretch}.land-form .page-header .page-actions{justify-content:flex-start;width:100%;margin-left:0}.land-form .page-header .page-actions .btn,.land-form .page-header .page-actions .mode-pill{flex:0 auto}.land-tabs{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.land-tabs .tab{flex:none}.cost-allocation-scroll{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}}@media (width<=720px){.land-form{gap:16px}.land-field .measure-input,.land-field .percent-input{grid-template-columns:minmax(0,1fr);row-gap:8px}.land-field .measure-input .theme-select.measure-unit,.land-field .measure-input .measure-unit-trigger,.land-field .percent-input>span{width:100%;max-width:none}.land-notice-confirm{flex-direction:column;align-items:stretch}.land-notice-confirm span{min-width:0}.parcel-owners-copy-row .theme-select{width:100%;min-width:0;max-width:none}}.parcel-owners{flex-direction:column;gap:16px;margin-top:8px;display:flex}.parcel-owners-hint{color:var(--color-text-muted);margin:0;font-size:14px}.parcel-owners-banner{border-radius:12px;margin:0;padding:12px 14px;font-size:13px;font-weight:600}.parcel-owners-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.parcel-owners-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.parcel-owners-copy-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.parcel-owners-copy-row .theme-select{min-width:180px;max-width:280px}.parcel-owners-summary{border:1px solid var(--color-border);background:0 0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.parcel-owners-summary .is-ok{color:var(--color-primary);font-weight:700}.parcel-owners-summary .is-warn{color:var(--color-danger);font-weight:700}.parcel-owners-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.mapping-modal-backdrop{z-index:40;background:#1f2a2466;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.mapping-modal{background:var(--color-surface);width:min(720px,100%);max-height:min(90vh,900px);box-shadow:var(--shadow-md);border-radius:16px;flex-direction:column;gap:12px;padding:20px 22px 18px;display:flex;overflow:auto}.mapping-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mapping-modal-header h2{margin:0;font-size:20px}.mapping-modal-header p{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.mapping-modal-close{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:10px;font-size:20px;line-height:1}.mapping-modal-hint{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.45}.mapping-modal-hint code{word-break:break-all;font-size:11px}.mapping-modal-editor{resize:vertical;border:1px solid var(--color-border-strong);width:100%;min-height:280px;color:var(--color-text);box-sizing:border-box;background:#fafafa;border-radius:12px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45}.mapping-modal-status,.mapping-modal-error{margin:0;font-size:13px;font-weight:600}.mapping-modal-error{color:var(--color-danger)}.mapping-modal-actions{justify-content:flex-end;gap:10px;display:flex}.cost-allocation{margin-top:16px}.cost-allocation p{color:var(--color-text-muted);margin:8px 0 0;font-size:13px;font-weight:600;line-height:1.45}.cost-allocation-scroll{overflow-x:auto}.cost-allocation-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:980px}.cost-allocation-table th,.cost-allocation-table td{border-bottom:1px solid var(--color-border);text-align:right;vertical-align:middle;padding:8px 10px;font-size:13px;font-weight:600}.cost-allocation-table thead th{text-align:right;color:var(--color-text-muted);font-size:12px;font-weight:700;line-height:1.35}.cost-allocation-col-label{text-align:right;justify-content:flex-end;align-items:flex-start;gap:4px;display:inline-flex}.cost-allocation-col-label .field-calc-hint{margin-top:1px}.cost-allocation-table th:first-child,.cost-allocation-table td:first-child,.cost-allocation-table thead th:first-child{text-align:left;min-width:220px;color:var(--color-text)}.cost-allocation-table tbody th{font-weight:600}.cost-allocation-table input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:112px;min-height:36px;color:var(--color-text);text-align:right;border-radius:10px;padding:6px 8px}.cost-allocation-table input:read-only{background:var(--color-surface-muted)}.cost-allocation-table .has-error input{border-color:var(--color-danger)}.cost-allocation-table small.field-error{max-width:140px;color:var(--color-danger);text-align:right;margin-top:4px;margin-left:auto;font-size:11px;font-weight:600;display:block}.cost-allocation-table tr.is-total th,.cost-allocation-table tr.is-total td,.cost-allocation-table tr.is-pool th,.cost-allocation-table tr.is-pool td{background:var(--color-primary-soft);font-weight:700}.land-form .modal-backdrop{z-index:40;background:#1f2a2459;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.land-form .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);text-align:left;border-radius:18px;padding:22px 22px 18px}.land-form .delete-parcel-modal{padding:58px 22px 18px;position:relative}.land-form .delete-parcel-modal-header{margin:0;padding:0}.land-form .delete-parcel-modal-header h2{z-index:1;max-width:calc(100% - 72px);color:var(--color-text);text-align:left;margin:0;padding:0;font-size:22px;font-weight:700;line-height:1.2;position:absolute;top:18px;left:22px}.land-form .delete-parcel-modal-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;margin:0;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px}.land-form .delete-parcel-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.land-form .delete-parcel-copy{color:var(--color-text);text-align:left;margin:0 0 18px;font-size:14px;line-height:1.5}.land-form .modal-actions{justify-content:flex-end;gap:10px;display:flex}.land-form .btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.land-form .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.opp-docs{flex-direction:column;gap:20px;margin-top:8px;display:flex}.opp-docs-hint{color:var(--color-text-muted);margin:0;font-size:14px}.opp-docs-hint.is-error{color:var(--color-danger)}.opp-docs-banner{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.opp-docs-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.opp-docs-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.opp-docs-upload,.opp-docs-list{flex-direction:column;gap:12px;display:flex}.opp-docs-list h3,.opp-docs-pending h3{margin:0;font-size:15px;font-weight:700}.opp-docs-toolbar{grid-template-columns:minmax(200px,280px);gap:12px;display:grid}.opp-docs-field{flex-direction:column;gap:6px;display:flex}.opp-docs-field label{color:var(--color-text-muted);font-size:13px;font-weight:600}.opp-docs-drop{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-lg,12px);background:var(--color-surface,#fff);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:140px;padding:20px;display:flex}.opp-docs-drop.is-dragging{border-color:var(--color-primary);background:var(--color-primary-soft)}.opp-docs-drop.is-disabled{opacity:.65;cursor:not-allowed}.opp-docs-drop-title{align-items:center;gap:8px;display:inline-flex}.opp-docs-drop-icon{width:20px;height:20px;color:var(--color-primary);flex-shrink:0}.opp-docs-drop strong{font-size:14px}.opp-docs-drop span{color:var(--color-text-muted);font-size:12px}.opp-docs-pending{flex-direction:column;gap:14px;display:flex}.opp-docs-pending ul{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.opp-docs-pending li{border:1px solid var(--color-border);background:var(--color-surface,#fff);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.opp-docs-pending-meta{flex-direction:column;gap:8px;min-width:0;display:flex}.opp-docs-pending-grid{grid-template-columns:minmax(160px,220px) 160px minmax(0,1fr);gap:10px;display:grid}.opp-docs-pending-meta input,.opp-docs-table input{border:1px solid var(--color-border-strong);background:#fff;border-radius:12px;height:42px;padding:0 12px}.opp-docs-name{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600}.opp-docs-sub{color:var(--color-text-muted);margin:0;font-size:12px}.opp-docs-actions{justify-content:flex-end;margin-top:8px;padding-top:4px;display:flex}.opp-docs .btn{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;height:38px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.opp-docs .btn:disabled{opacity:.7;cursor:not-allowed}.opp-docs .btn-primary{background:var(--color-primary-gradient);color:#fff;border:none}.opp-docs .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.opp-docs-table-wrap{border:1px solid var(--color-border);background:var(--color-surface,#fff);border-radius:12px;overflow-x:auto}.opp-docs-table{border-collapse:collapse;width:100%;min-width:1020px}.opp-docs-table th,.opp-docs-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border);padding:12px 14px;font-size:13px}.opp-docs-table th{color:var(--color-text-muted);background:#f8fafc;font-size:12px;font-weight:700}.opp-docs-table th:last-child,.opp-docs-table td:last-child{white-space:nowrap;vertical-align:middle;width:1%;min-width:292px}.opp-docs-table tr:last-child td{border-bottom:none}.opp-docs-link{color:var(--color-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.opp-docs-row-actions{flex-wrap:nowrap;align-items:center;gap:8px;min-width:max-content;display:inline-flex}.opp-docs-row-actions .btn{white-space:nowrap;flex:none}.opp-docs-edit-file{flex-direction:column;gap:8px;min-width:180px;display:flex}.opp-docs-edit-file .opp-docs-name{word-break:break-word;margin:0}.opp-docs-file-picker{color:var(--color-primary);cursor:pointer;align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.opp-docs-file-picker input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.opp-docs-edit-file .field-error{color:var(--color-danger)}.opp-docs .modal-backdrop{z-index:1200;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.opp-docs .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);border-radius:18px;padding:22px 22px 18px}.opp-docs .delete-document-modal{padding:58px 22px 18px;position:relative}.opp-docs .delete-document-modal-header{margin:0;padding:0}.opp-docs .delete-document-modal-header h2{z-index:1;color:var(--color-text);margin:0;font-size:18px;font-weight:700;position:absolute;top:18px;left:22px}.opp-docs .delete-document-modal-close{z-index:2;width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;font-size:22px;line-height:1;position:absolute;top:14px;right:14px}.opp-docs .delete-document-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.opp-docs .delete-document-modal-close:disabled{opacity:.6;cursor:not-allowed}.opp-docs .delete-document-copy{color:var(--color-text);text-align:left;margin:0 0 18px;font-size:14px;line-height:1.5}.opp-docs .modal-actions{justify-content:flex-end;gap:10px;display:flex}@media (width<=900px){.opp-docs-pending-grid,.opp-docs-pending li{grid-template-columns:1fr}.opp-docs .modal-actions{flex-direction:column-reverse}.opp-docs .modal-actions .btn{width:100%}}.opp-images{flex-direction:column;gap:20px;margin-top:8px;display:flex}.opp-images-hint{color:var(--color-text-muted);margin:0;font-size:14px}.opp-images-hint.is-error{color:var(--color-danger)}.opp-images-banner{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.opp-images-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.opp-images-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.opp-images-upload,.opp-images-gallery{flex-direction:column;gap:12px;display:flex}.opp-images-gallery h3,.opp-images-pending h3{margin:0;font-size:15px;font-weight:700}.opp-images-toolbar{grid-template-columns:minmax(180px,260px);gap:12px;display:grid}.opp-images-field{flex-direction:column;gap:6px;display:flex}.opp-images-field label{color:var(--color-text-muted);font-size:13px;font-weight:600}.opp-images-drop{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-lg,12px);background:var(--color-surface,#fff);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:140px;padding:20px;display:flex}.opp-images-drop.is-dragging{border-color:var(--color-primary);background:var(--color-primary-soft)}.opp-images-drop.is-disabled{opacity:.65;cursor:not-allowed}.opp-images-drop-title{align-items:center;gap:8px;display:inline-flex}.opp-images-drop-icon{width:20px;height:20px;color:var(--color-primary);flex-shrink:0}.opp-images-drop strong{font-size:14px}.opp-images-drop span{color:var(--color-text-muted);font-size:12px}.opp-images-pending{flex-direction:column;gap:14px;display:flex}.opp-images-pending ul,.opp-images-grid{margin:0;padding:0;list-style:none}.opp-images-pending ul{flex-direction:column;gap:12px;display:flex}.opp-images-pending li{border:1px solid var(--color-border);background:var(--color-surface,#fff);border-radius:12px;grid-template-columns:96px minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.opp-images-pending img,.opp-images-thumb img{object-fit:cover;background:#f3f4f6;border-radius:10px;width:96px;height:96px;display:block}.opp-images-pending-meta{flex-direction:column;gap:8px;min-width:0;display:flex}.opp-images-pending-meta input,.opp-images-card-body input{border:1px solid var(--color-border-strong);background:#fff;border-radius:12px;height:42px;padding:0 12px}.opp-images-name{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600}.opp-images-sub,.opp-images-category{color:var(--color-text-muted);margin:0;font-size:12px}.opp-images-category{color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.opp-images-actions,.opp-images-card-actions{flex-wrap:wrap;gap:8px;display:flex}.opp-images-actions{justify-content:flex-end;margin-top:8px;padding-top:4px}.opp-images .btn{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;height:38px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.opp-images .btn:disabled{opacity:.7;cursor:not-allowed}.opp-images .btn-primary{background:var(--color-primary-gradient);color:#fff;border:none}.opp-images .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.opp-images .btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.opp-images .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.opp-images-delete-modal{width:min(440px,100%)}.opp-images-delete-copy{color:var(--color-text);text-align:left;margin:0 0 4px;font-size:14px;line-height:1.5}.opp-images-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;gap:14px;display:grid}.opp-images-card{border:1px solid var(--color-border);background:var(--color-surface,#fff);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.opp-images-thumb{min-height:160px;color:var(--color-text-muted);background:#f3f4f6;justify-content:center;align-items:center;font-size:12px;display:flex}.opp-images-thumb img{border-radius:0;width:100%;height:160px}.opp-images-card-body{flex-direction:column;gap:8px;padding:12px;display:flex}.opp-images-edit-hint{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.4}.opp-images-edit-label{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:600}.opp-images-edit-modal-root{z-index:40;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.opp-images-edit-modal-backdrop{background:#1f2a2459;position:absolute;inset:0}.opp-images-edit-modal{z-index:1;background:var(--color-surface,#fff);width:min(440px,100%);max-height:min(920px,100vh - 48px);box-shadow:var(--shadow-md);border-radius:18px;padding:58px 22px 18px;position:relative;overflow:auto}.opp-images-edit-modal-header h2{z-index:1;max-width:calc(100% - 72px);color:var(--color-text);text-align:left;margin:0;font-size:22px;font-weight:700;line-height:1.2;position:absolute;top:18px;left:22px}.opp-images-edit-modal-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px}.opp-images-edit-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.opp-images-edit-modal-body{flex-direction:column;gap:10px;display:flex}.opp-images-edit-modal-preview{min-height:160px;color:var(--color-text-muted);background:#f3f4f6;border-radius:12px;justify-content:center;align-items:center;font-size:12px;display:flex;overflow:hidden}.opp-images-edit-modal-preview img{object-fit:cover;width:100%;max-height:220px;display:block}.opp-images-edit-modal-body input{border:1px solid var(--color-border-strong);background:#fff;border-radius:12px;height:42px;padding:0 12px}.opp-images-edit-modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}@media (width<=720px){.opp-images-pending li{grid-template-columns:72px minmax(0,1fr)}.opp-images-pending li .btn{grid-column:1/-1}.opp-images-pending img{width:72px;height:72px}.opp-images-edit-modal-root{padding:12px}}.parcel-map-plotting{flex-direction:column;gap:14px;margin-top:8px;display:flex}.parcel-map-plotting-banner{background:var(--color-surface-muted,#f3f4f6);color:var(--color-text);border-radius:12px;margin:0;padding:12px 14px;font-size:13px;font-weight:600}.parcel-map-plotting-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.parcel-map-plotting-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.parcel-map-plotting-toolbar{flex-wrap:wrap;align-items:flex-end;gap:16px 24px;display:flex}.parcel-map-plotting-toolbar-group{flex-direction:column;gap:8px;display:flex}.parcel-map-plotting-toolbar-group>span{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-soft);font-size:11px;font-weight:700}.parcel-map-plotting-draw-actions{flex-wrap:wrap;gap:8px;display:flex}.parcel-map-plotting-map-wrap{flex-direction:column;gap:8px;width:100%;min-width:0;display:flex}.parcel-map-plotting-stage{border:1px solid var(--color-border);background:#f6f8f5;border-radius:14px;height:min(65vh,640px);min-height:420px;position:relative;overflow:hidden}.parcel-map-plotting-stage.is-drawing{box-shadow:inset 0 0 0 3px var(--color-primary)}.parcel-map-plotting-drawing-badge{z-index:2;border:1px solid var(--color-primary);height:34px;color:var(--color-primary);pointer-events:none;background:#fff;border-radius:999px;align-items:center;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;top:auto;bottom:14px;left:14px}.parcel-map-plotting-map{width:100%;height:100%}.parcel-map-plotting-state{text-align:center;min-height:420px;color:var(--color-text-muted);justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex}.parcel-map-plotting-hint{color:var(--color-text-muted);margin:0;font-size:13px}.parcel-map-plotting-actions{justify-content:flex-end;display:flex}.opp-audit-panel{flex-direction:column;gap:16px;display:flex}.opp-audit-filters{grid-template-columns:repeat(2,minmax(180px,280px));align-items:end;gap:12px;padding:4px 2px 8px;display:grid}.opp-audit-filter-field{color:var(--color-text-muted);flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:600;display:flex}.opp-audit-filter-field .theme-select{width:100%;min-width:0;display:block}.opp-audit-filter-field .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);height:40px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px}.opp-audit-empty{text-align:center;color:var(--color-text-muted);margin:0;padding:28px 8px;font-size:14px}.opp-audit-timeline{flex-direction:column;gap:22px;padding:4px 2px 8px;display:flex}@media (width<=720px){.opp-audit-filters{grid-template-columns:1fr}}.opp-audit-day{flex-direction:column;gap:14px;display:flex}.opp-audit-day-heading{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.opp-audit-day-list{--opp-audit-rail-width:20px;--opp-audit-time-width:64px;--opp-audit-gap:10px;--opp-audit-line-left:calc(var(--opp-audit-time-width) + var(--opp-audit-gap) + (var(--opp-audit-rail-width) / 2));flex-direction:column;gap:16px;display:flex;position:relative}.opp-audit-entry{grid-template-columns:var(--opp-audit-time-width) var(--opp-audit-rail-width) minmax(0, 1fr);gap:var(--opp-audit-gap);align-items:start;display:grid;position:relative}.opp-audit-day-list:before{content:"";left:var(--opp-audit-line-left);background:var(--color-border);pointer-events:none;border-radius:999px;width:2px;margin-left:-1px;position:absolute;top:8px;bottom:8px}.opp-audit-time{color:var(--color-text-muted);white-space:nowrap;text-align:right;padding-top:18px;font-size:12px;font-weight:600;line-height:1.2}.opp-audit-rail{z-index:1;justify-content:center;padding-top:20px;display:flex;position:relative}.opp-audit-dot{border:2px solid var(--color-surface);border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:0 0 0 2px}.opp-audit-entry.tone-update .opp-audit-dot{background:var(--color-accent-blue);color:var(--color-accent-blue)}.opp-audit-entry.tone-insert .opp-audit-dot{background:var(--color-success);color:var(--color-success)}.opp-audit-entry.tone-delete .opp-audit-dot{background:var(--color-danger);color:var(--color-danger)}.opp-audit-entry.tone-other .opp-audit-dot{background:var(--color-text-soft);color:var(--color-text-soft)}.opp-audit-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:14px;overflow:hidden}.opp-audit-card-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px 12px;display:flex}.opp-audit-card-meta{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.opp-audit-entity-tag{background:var(--color-surface-muted);color:var(--color-text-muted);letter-spacing:.04em;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.opp-audit-action-badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.opp-audit-action-badge.update{background:var(--color-accent-blue-soft);color:var(--color-accent-blue)}.opp-audit-action-badge.insert{background:var(--color-success-soft);color:var(--color-success)}.opp-audit-action-badge.delete{background:var(--color-danger-soft);color:var(--color-danger)}.opp-audit-action-badge.other{background:var(--color-surface-muted);color:var(--color-text-muted)}.opp-audit-actor{flex-shrink:0;align-items:center;gap:10px;display:flex}.opp-audit-avatar{background:var(--color-accent-blue-soft);width:36px;height:36px;color:var(--color-accent-blue);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.opp-audit-actor-text{text-align:left}.opp-audit-actor-name{color:var(--color-text);font-size:13px;font-weight:700}.opp-audit-actor-role{color:var(--color-text-muted);font-size:12px}.opp-audit-change-wrap{border-top:1px solid var(--color-border)}.opp-audit-change-table{border-collapse:collapse;table-layout:fixed;width:100%}.opp-audit-change-table th{text-align:left;letter-spacing:.06em;color:var(--color-text-soft);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);padding:10px 14px;font-size:11px;font-weight:700}.opp-audit-change-table td{border-bottom:1px solid var(--color-border);vertical-align:top;word-break:break-word;color:var(--color-text);padding:10px 14px;font-size:13px}.opp-audit-change-table tr:last-child td{border-bottom:none}.opp-audit-field{color:var(--color-text);width:28%;font-weight:500}.opp-audit-old{background:var(--color-danger-soft);width:36%;color:var(--color-danger)}.opp-audit-new{background:var(--color-success-soft);width:36%;color:var(--color-success);font-weight:600}.opp-audit-card-empty{color:var(--color-text-muted);border-top:1px solid var(--color-border);padding:14px 16px 16px;font-size:13px}.opp-audit-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 2px;display:flex}.opp-audit-count{color:var(--color-text-muted);font-size:13px}.opp-audit-load-more{min-width:120px}@media (width<=760px){.opp-audit-day-list{--opp-audit-time-width:52px;--opp-audit-rail-width:16px;--opp-audit-gap:8px}.opp-audit-card-header{flex-direction:column}.opp-audit-actor{width:100%}.opp-audit-change-table,.opp-audit-change-table thead,.opp-audit-change-table tbody,.opp-audit-change-table tr,.opp-audit-change-table th,.opp-audit-change-table td{width:100%;display:block}.opp-audit-change-table thead{display:none}.opp-audit-change-table tr{border-bottom:1px solid var(--color-border);padding:10px 12px}.opp-audit-change-table td{border:none;padding:4px 0}.opp-audit-old,.opp-audit-new{background:0 0}.opp-audit-old:before,.opp-audit-new:before{letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.opp-audit-old:before{content:"OLD VALUE"}.opp-audit-new:before{content:"NEW VALUE"}}.change-status-backdrop{z-index:40}.change-status-modal{width:min(520px,100vw - 32px)}.change-status-hint{color:var(--color-text-muted);margin:0 0 16px;font-size:13px;line-height:1.45}.survey-page{flex-direction:column;gap:18px;display:flex}.survey-page .page-header{justify-content:flex-start;align-items:flex-start}.survey-header-left{flex-direction:column;align-items:stretch;gap:10px;width:min(420px,100%);min-width:0;display:flex}.survey-opportunity{width:100%;min-width:0;color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.survey-opportunity select,.survey-opportunity .theme-select-trigger,.survey-field input,.survey-field select,.survey-field .theme-select-trigger,.copy-row select,.copy-row .theme-select-trigger,.survey-search input{border:1px solid var(--color-border-strong);background:var(--color-surface);height:42px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px;font-weight:600}.survey-opportunity .theme-select,.survey-field .theme-select{width:100%;min-width:0;display:block}.survey-opportunity select:focus,.survey-opportunity .theme-select.is-open .theme-select-trigger,.survey-field input:focus,.survey-field textarea:focus,.survey-field select:focus,.survey-field .theme-select.is-open .theme-select-trigger,.copy-row select:focus,.copy-row .theme-select.is-open .theme-select-trigger,.survey-search input:focus,.gps-pair input:focus,.unit-input input:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.survey-tabs{border-bottom:1px solid var(--color-border);gap:4px;display:flex}.survey-tabs button{height:44px;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:0 18px;font-size:14px;font-weight:700}.survey-tabs button.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.survey-common,.survey-category,.survey-side{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.survey-common,.survey-category{padding:16px 16px 18px}.survey-common header,.survey-category header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.survey-common header p,.survey-category header p{letter-spacing:.08em;color:var(--color-primary);margin:0 0 4px;font-size:11px;font-weight:700}.survey-common h2,.survey-category h2{color:var(--color-text);margin:0;font-size:22px}.survey-category-save{justify-content:flex-end;margin-top:16px;display:flex}.photo-record-wrap{border:0;min-inline-size:0;margin:0 0 16px;padding:0}.photo-record{overflow-x:auto}.photo-record table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:980px;overflow:hidden}.photo-record th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.photo-record td{border-top:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:10px 12px;font-size:14px;font-weight:600}.photo-no{background:color-mix(in srgb, #7ea2c4 22%, var(--color-surface));color:#3d6f9a;border-radius:8px;justify-content:center;align-items:center;min-width:36px;height:28px;padding:0 8px;font-weight:800;display:inline-flex}:root[data-theme=dark] .photo-no{color:#d7e7f6}.photo-direction{min-width:140px}.photo-direction input,.photo-record input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:42px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px;font-weight:600}.photo-gps{min-width:220px}.photo-gps-line{align-items:center;gap:8px;display:flex}.photo-pin{color:#d4537e;background:#f3d0dc;border:none;border-radius:10px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.photo-pin svg{fill:currentColor;width:18px;height:18px}.photo-gps small{color:var(--color-text-muted);align-items:center;gap:6px;margin-top:6px;font-size:12px;font-weight:600;display:flex}.photo-gps small svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:14px;height:14px}.photo-gps small.field-error,.photo-file small.field-error{color:var(--color-danger)}.photo-file{min-width:180px}.photo-file img{object-fit:cover;vertical-align:middle;border-radius:8px;width:48px;height:48px;margin-right:8px}.photo-file-actions{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.photo-file-actions .photo-remove{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));background:var(--color-danger-soft)}.photo-file-actions .photo-remove:hover{border-color:var(--color-danger)}.survey-file-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.survey-file-row img{object-fit:cover;border-radius:8px;width:48px;height:48px}.survey-file-row .survey-file-remove{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));background:var(--color-danger-soft)}.survey-file-row .survey-file-remove:hover:not(:disabled){border-color:var(--color-danger)}.survey-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-muted);font-size:13px;font-weight:600;overflow:hidden}.red-flag-table{overflow-x:auto}.red-flag-table table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:920px;overflow:hidden}.red-flag-table th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.red-flag-table td{border-top:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:10px 12px;font-size:14px;font-weight:600}.red-flag-choice,.red-flag-severity{flex-wrap:wrap;gap:6px;display:flex}.red-flag-choice button,.red-flag-severity button{border:1px solid var(--color-border-strong);background:var(--color-surface);height:34px;color:var(--color-text-muted);border-radius:10px;padding:0 12px;font-size:13px;font-weight:700}.red-flag-choice button.is-yes,.red-flag-severity button.is-critical{color:#a12632;background:#f8d7da;border-color:#e07a84}.red-flag-choice button.is-no,.red-flag-severity button.is-low{color:#1f7a3a;background:#d9f2df;border-color:#6dbf84}.red-flag-severity button.is-medium{color:#8a5a10;background:#f8e7c4;border-color:#e0b15a}.red-flag-severity button.is-high{color:#b85a12;background:#f6d7b8;border-color:#e0924a}.red-flag-action textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-width:220px;min-height:64px;color:var(--color-text);font:inherit;resize:vertical;border-radius:12px;padding:8px 12px;font-weight:600}.red-flag-action textarea.is-noted{background:#fff5f5;border-color:#e07a84}.red-flag-action small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}:root[data-theme=dark] .red-flag-choice button.is-yes,:root[data-theme=dark] .red-flag-severity button.is-critical{color:#ffd0d4;background:#5a3236}:root[data-theme=dark] .red-flag-choice button.is-no,:root[data-theme=dark] .red-flag-severity button.is-low{color:#d7f5df;background:#234833}:root[data-theme=dark] .red-flag-severity button.is-medium{color:#ffe3b0;background:#4d3d22}:root[data-theme=dark] .red-flag-severity button.is-high{color:#ffd2ad;background:#5a3a22}:root[data-theme=dark] .red-flag-action textarea.is-noted{color:var(--color-text);background:#5a3236;border-color:#e07a84}.site-score-table{overflow-x:auto}.site-score-table table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:980px;overflow:hidden}.site-score-table th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.site-score-table td{border-top:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:10px 12px;font-size:14px;font-weight:600}.site-score-rating{flex-wrap:wrap;gap:6px;display:flex}.site-score-rating button{border:1px solid var(--color-border-strong);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;padding:0;font-size:13px;font-weight:700}.site-score-rating button.is-1{color:#a12632;background:#f8d7da;border-color:#e07a84}.site-score-rating button.is-2{color:#b85a12;background:#f6d7b8;border-color:#e0924a}.site-score-rating button.is-3{color:#8a5a10;background:#f8e7c4;border-color:#e0b15a}.site-score-rating button.is-4,.site-score-rating button.is-5{color:#1f7a3a;background:#d9f2df;border-color:#6dbf84}.site-score-value{align-items:center;gap:6px;display:flex}.site-score-table input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:36px;color:var(--color-text);font:inherit;border-radius:10px;padding:0 10px;font-size:13px;font-weight:600}.site-score-value input{width:88px}.site-score-table input:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.site-score-table small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}.site-score-total td{background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface-muted))}.site-score-weighted,.site-score-overall{font-weight:700}:root[data-theme=dark] .site-score-rating button.is-1{color:#ffd0d4;background:#5a3236;border-color:#e07a84}:root[data-theme=dark] .site-score-rating button.is-2{color:#ffd2ad;background:#5a3a22;border-color:#e0924a}:root[data-theme=dark] .site-score-rating button.is-3{color:#ffe3b0;background:#4d3d22;border-color:#e0b15a}:root[data-theme=dark] .site-score-rating button.is-4,:root[data-theme=dark] .site-score-rating button.is-5{color:#d7f5df;background:#234833;border-color:#6dbf84}.decision-table{overflow-x:auto}.decision-table table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:860px;overflow:hidden}.decision-table th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.decision-table td{border-top:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:10px 12px;font-size:14px;font-weight:600}.decision-table td:first-child{min-width:280px}.decision-response{flex-wrap:wrap;gap:6px;display:flex}.decision-response button{border:1px solid var(--color-border-strong);background:var(--color-surface);height:34px;color:var(--color-text-muted);border-radius:10px;padding:0 14px;font-size:13px;font-weight:700}.decision-response button.is-yes{color:#1f7a3a;background:#d9f2df;border-color:#6dbf84}.decision-response button.is-no{color:#a12632;background:#f8d7da;border-color:#e07a84}.decision-response button.is-conditional{color:#8a5a10;background:#f8e7c4;border-color:#e0b15a}.decision-table input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-width:180px;height:36px;color:var(--color-text);font:inherit;border-radius:10px;padding:0 10px;font-size:13px;font-weight:600}.decision-table input:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.decision-table small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}.survey-radios{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.survey-radios label{align-items:flex-start;gap:8px;font-weight:600;line-height:1.35;display:flex}.survey-field .survey-radios input{background:0 0;border:none;border-radius:50%;flex:0 0 16px;width:16px;min-width:16px;height:16px;margin:2px 0 0;padding:0}.survey-field .survey-radios input:focus{outline-offset:2px;border:none;outline:2px solid #b8924a47}:root[data-theme=dark] .decision-response button.is-yes{color:#d7f5df;background:#234833;border-color:#6dbf84}:root[data-theme=dark] .decision-response button.is-no{color:#ffd0d4;background:#5a3236;border-color:#e07a84}:root[data-theme=dark] .decision-response button.is-conditional{color:#ffe3b0;background:#4d3d22;border-color:#e0b15a}.gps-point-table{overflow-x:auto}.gps-point-table table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:1080px;overflow:hidden}.gps-point-table th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.gps-point-table td{border-top:1px solid var(--color-border);vertical-align:middle;padding:10px 12px}.gps-point-table input,.gps-point-table select{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:36px;color:var(--color-text);font:inherit;border-radius:10px;padding:0 10px;font-size:13px;font-weight:600}.gps-point-table input:focus,.gps-point-table select:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.gps-elevation,.gps-notes{align-items:center;gap:6px;display:flex}.gps-elevation select{flex:0 0 72px;width:72px}.gps-notes input{min-width:180px}.gps-icon{border:1px solid var(--color-border-strong);background:var(--color-surface);color:#d4537e;border-radius:10px;flex:0 0 34px;width:34px;height:34px;font-size:18px;font-weight:700;line-height:1}.gps-icon svg{fill:currentColor;width:16px;height:16px}.gps-icon.is-clear{color:var(--color-text-muted)}.gps-point-table small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}.intelligence-table{overflow-x:auto}.intelligence-table table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:14px;width:100%;min-width:980px;overflow:hidden}.intelligence-table th{background:color-mix(in srgb, #7ea2c4 18%, var(--color-surface-muted));color:var(--color-text);text-align:left;white-space:nowrap;padding:12px;font-size:13px;font-weight:700}.intelligence-table td{border-top:1px solid var(--color-border);vertical-align:top;padding:10px 12px}.intelligence-table input,.intelligence-table textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:10px;font-size:13px;font-weight:600}.intelligence-table input{height:36px;padding:0 10px}.intelligence-table textarea{resize:vertical;min-height:64px;padding:8px 10px}.intelligence-table input:focus,.intelligence-table textarea:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}.intelligence-time{color:var(--color-text-muted);align-items:center;gap:6px;margin-top:6px;font-size:12px;font-weight:600;display:flex}.intelligence-time svg{width:14px;height:14px}.intelligence-verify{align-items:center;gap:8px;margin-bottom:8px;display:flex}.intelligence-status{flex-wrap:wrap;gap:6px;display:flex}.intelligence-status button{border:1px solid var(--color-border-strong);background:var(--color-surface);height:34px;color:var(--color-text-muted);border-radius:10px;padding:0 12px;font-size:13px;font-weight:700}.intelligence-status button.is-unverified{color:#8a5a10;background:#f8e7c4;border-color:#e0b15a}.intelligence-status button.is-verified{color:#1f7a3a;background:#d9f2df;border-color:#6dbf84}.intelligence-status button.is-disputed{color:#a12632;background:#f8d7da;border-color:#e07a84}:root[data-theme=dark] .intelligence-status button.is-unverified{color:#ffe3b0;background:#4d3d22}:root[data-theme=dark] .intelligence-status button.is-verified{color:#d7f5df;background:#234833}:root[data-theme=dark] .intelligence-status button.is-disputed{color:#ffd0d4;background:#5a3236}.intelligence-add{margin-top:12px}.intelligence-table small.field-error{color:var(--color-danger);margin-top:6px;font-size:12px;font-weight:600;display:block}.photo-record input:focus,.photo-record .theme-select.is-open .theme-select-trigger{border-color:var(--color-primary);outline:2px solid #b8924a47}.btn-small{border-radius:10px;height:34px;padding:0 12px;font-size:13px}.survey-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:18px;display:grid}.survey-side{flex-direction:column;min-height:0;max-height:calc(100vh - 24px);padding:12px;display:flex;position:sticky;top:12px}.survey-parcel-bar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.survey-empty{color:var(--color-text-muted);margin:0 0 12px;font-size:14px;font-weight:600}.survey-parcels-list{flex-direction:row;gap:4px;min-width:0;display:flex}.survey-parcels-list button{height:42px;color:var(--color-text-muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:0 16px;font-size:14px;font-weight:700}.survey-parcels-list button.is-active{color:var(--color-accent-blue);border-bottom-color:var(--color-accent-blue)}.copy-row{flex-direction:row;flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.copy-row select{box-sizing:border-box;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236b7280' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:12px 8px;flex:none;width:210px;min-width:170px;max-width:260px;height:42px;margin:0;padding:0 36px 0 12px}.copy-row .btn{box-sizing:border-box;flex-shrink:0;height:42px;min-height:42px;margin:0;padding:0 14px;line-height:1}.survey-search{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-soft);flex-direction:column;gap:6px;padding:12px 0;font-size:11px;font-weight:700;display:flex}.survey-cats{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.survey-cats button{text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;border-radius:10px;gap:10px;padding:8px;display:flex}.survey-cats button>span:first-child{width:24px;color:var(--color-text-soft);flex-shrink:0;padding-top:2px;font-size:11px;font-weight:700}.survey-cats button>span:last-child{flex-direction:column;gap:2px;min-width:0;font-size:13px;font-weight:700;display:flex}.survey-cats small{color:var(--color-text-soft);font-size:11px;font-weight:600}.survey-cats button.is-active{background:var(--color-primary-soft)}.survey-cats button.is-active>span{color:var(--color-primary)}.survey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.survey-type-grid{margin-top:14px}.survey-ai-summary{border-top:1px solid var(--color-border);flex-direction:column;gap:10px;margin-top:18px;padding-top:16px;display:flex}.survey-ai-summary-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.survey-ai-summary-header h3{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.survey-ai-summary-meta{color:var(--color-text-muted);margin:0;font-size:12px}.survey-ai-summary-body{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;padding:12px 14px}.survey-ai-summary-body p{white-space:pre-wrap;color:var(--color-text);margin:0;font-size:14px;font-weight:500;line-height:1.55}.survey-field{flex-direction:column;gap:6px;min-width:0;display:flex}.survey-field.is-wide{grid-column:1/-1}.survey-field.starts-row{grid-column-start:1}.survey-field>span,.survey-status legend{color:var(--color-text-muted);font-size:13px;font-weight:600}.survey-field input,.survey-field select,.survey-field .theme-select-trigger{width:100%}.survey-field textarea{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-height:110px;color:var(--color-text);font:inherit;resize:vertical;border-radius:12px;padding:10px 12px;font-weight:600}.survey-status{border:none;margin:0;padding:0}.survey-status div{flex-wrap:wrap;gap:8px;display:flex}.survey-status label{border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;align-items:center;gap:8px;height:42px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.survey-status input{width:auto}.yesno{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.yesno button{border:1px solid var(--color-border-strong);background:var(--color-surface);height:42px;color:var(--color-text-muted);border-radius:12px;font-size:13px;font-weight:700}.yesno button.is-on{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.unit-input,.gps-pair{align-items:center;gap:8px;display:flex}.unit-input input{flex:1;width:auto;min-width:0}.unit-input input.survey-unit{text-align:center;flex:0 0 84px;width:84px}.unit-input .theme-select.survey-unit-select{flex:0 0 96px;width:96px;min-width:96px;display:inline-flex}.unit-input .survey-unit-select .theme-select-trigger{width:100%;padding:0 8px}.survey-field small.field-error{color:var(--color-danger);font-size:12px;font-weight:600}.survey-page .btn:disabled{opacity:.55;cursor:not-allowed}.survey-page .survey-field input:disabled,.survey-page .survey-field textarea:disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:not-allowed}.survey-page fieldset:disabled input,.survey-page fieldset:disabled textarea,.survey-page fieldset:disabled select,.survey-page fieldset:disabled .theme-select-trigger,.survey-page fieldset:disabled .survey-status label,.survey-page fieldset:disabled .yesno button,.survey-page fieldset:disabled .btn{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:not-allowed;opacity:1}.survey-page fieldset:disabled .theme-select{pointer-events:none}.survey-page fieldset:disabled .theme-select-trigger:disabled,.survey-page fieldset:disabled .theme-select.is-disabled .theme-select-trigger{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:not-allowed}.survey-page fieldset:disabled .yesno button.is-on{background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-muted)}.survey-page fieldset:disabled .survey-status label:has(input:checked){background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-muted)}.survey-page fieldset:disabled .survey-field .survey-radios input,.survey-page fieldset:disabled .survey-field .survey-radios input:focus{cursor:not-allowed;background:0 0}@media (width<=1100px){.survey-layout,.survey-grid{grid-template-columns:1fr}.survey-side{max-height:none;position:static}.survey-cats{max-height:280px}.survey-parcel-bar{flex-wrap:wrap;align-items:flex-start}}.compare-page{flex-direction:column;gap:16px;display:flex}.compare-page .page-header{align-items:flex-end}.compare-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.compare-page .btn{height:42px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;padding:0 14px;font-weight:700}.compare-page .btn:disabled{opacity:.65;cursor:not-allowed}.compare-page .btn-primary{background:var(--color-primary-gradient);color:#fff}.compare-page .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.compare-opportunity{min-width:min(420px,100%);color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.compare-opportunity .theme-select{width:100%;min-width:0;display:block}.compare-opportunity .theme-select-trigger,.compare-parcel-picks .theme-select-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);height:42px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px;font-weight:600}.compare-parcel-picks{display:contents}.compare-parcel-picks>span{color:var(--color-text-muted);align-self:center;font-size:13px;font-weight:700}.compare-parcel-picks .theme-select{width:100%;min-width:0}.compare-toolbar{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.compare-add-select{flex:280px;min-width:min(280px,100%);max-width:360px;position:relative}.compare-add-trigger{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:42px;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-weight:600;display:flex}.compare-add-trigger span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compare-add-trigger:disabled{opacity:.65;cursor:not-allowed}.compare-add-trigger.is-open{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.compare-add-menu{z-index:30;border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:12px;flex-direction:column;gap:8px;max-height:320px;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 12px 32px #1f2a2424}.compare-add-search{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;height:38px;color:var(--color-text);font:inherit;border-radius:10px;padding:0 10px}.compare-add-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.compare-add-menu ul{max-height:240px;margin:0;padding:0;list-style:none;overflow:auto}.compare-add-menu li+li{margin-top:4px}.compare-add-menu button{width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.compare-add-menu button:hover:not(:disabled),.compare-add-menu button:focus-visible:not(:disabled){background:var(--color-primary-soft);outline:none}.compare-add-menu button.is-selected{background:var(--color-primary-soft);border:1px solid color-mix(in srgb, var(--color-primary) 35%, transparent);cursor:pointer}.compare-add-menu button:disabled{opacity:.55;cursor:not-allowed}.compare-add-option-main{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.compare-add-option-main em{letter-spacing:.02em;text-transform:uppercase;color:var(--color-primary);flex-shrink:0;font-size:11px;font-style:normal;font-weight:700}.compare-add-menu strong{font-size:14px;font-weight:700}.compare-add-menu small{color:var(--color-text-muted);font-size:12px;font-weight:600;line-height:1.35}.compare-add-empty{color:var(--color-text-muted);margin:0;padding:12px 4px;font-size:13px;font-weight:600}.compare-switch{color:var(--color-text);align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.compare-switch input{width:36px;height:20px;accent-color:var(--color-primary);margin:0}.compare-jumps{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.compare-jumps button{border:1px solid var(--color-border-strong);background:var(--color-surface);height:32px;color:var(--color-text-muted);border-radius:999px;padding:0 12px;font-size:13px;font-weight:700}.compare-jumps button:hover{border-color:var(--color-primary);color:var(--color-primary)}.compare-top{align-items:flex-start;gap:12px;display:flex}.compare-main{--compare-label:220px;grid-template-columns:var(--compare-label) repeat(var(--compare-cols), minmax(0, 1fr));flex:1;align-items:stretch;gap:14px 12px;min-width:0;display:grid}.compare-cards,.compare-parcel-picks{display:contents}.compare-card,.compare-add,.compare-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative}.compare-card{flex-direction:column;gap:6px;min-width:0;padding:14px 14px 12px;display:flex}.compare-remove{width:28px;height:28px;color:var(--color-text-muted);background:0 0;border:none;border-radius:999px;font-size:18px;line-height:1;position:absolute;top:8px;right:8px}.compare-remove:hover{background:var(--color-bg);color:var(--color-text)}.compare-card-image{background:var(--color-surface-muted);border:1px solid var(--color-border);width:200px;max-width:100%;height:120px;color:var(--color-text-muted);border-radius:12px;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid;overflow:hidden}.compare-card-image img{object-fit:cover;width:100%;height:100%;display:block}.compare-card h2{color:var(--color-text);margin:4px 0 0;font-size:15px}.compare-card p,.compare-card small{color:var(--color-text-muted);margin:0;font-size:12px}.compare-card select,.compare-card .theme-select-trigger{border:1px solid var(--color-primary);background:var(--color-primary-soft);width:100%;height:34px;min-height:34px;color:var(--color-primary);border-radius:999px;padding:0 12px;font-weight:700}.compare-card .theme-select{width:100%;min-width:0;display:block}.compare-card strong{color:var(--color-text);align-items:baseline;gap:8px;font-size:18px;display:flex}.compare-card strong small{font-weight:600}.compare-add,.compare-empty{color:var(--color-text-muted);min-height:210px;font:inherit;cursor:pointer;background:0 0;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:border-color .15s,background .15s;display:flex}.compare-add{flex-shrink:0;width:168px}.compare-empty{width:100%;min-height:180px;padding:24px 16px}.compare-empty:hover:not(:disabled),.compare-add:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.compare-empty:disabled{cursor:not-allowed;opacity:.7}.compare-add span,.compare-empty span{background:var(--color-primary-soft);width:36px;height:36px;color:var(--color-primary);border-radius:999px;place-items:center;font-size:22px;font-weight:600;display:grid}.compare-add strong,.compare-empty strong{color:var(--color-text);font-size:14px}.compare-add small,.compare-empty small{font-size:12px}.compare-group{grid-column:1/-1;grid-template-columns:subgrid;background:0 0;border:none;border-radius:0;scroll-margin-top:12px;display:grid;overflow:visible}.compare-group .compare-group-toggle{border:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.compare-group.is-closed .compare-group-toggle{border-radius:var(--radius-lg)}.compare-group .compare-group-toggle:hover{background:var(--color-surface-muted)}.compare-group .compare-group-toggle h2{margin:0;font-size:15px}.compare-group .compare-group-toggle span{width:28px;height:28px;color:var(--color-text-muted);flex-shrink:0;place-items:center;font-size:18px;display:grid}.compare-table,.compare-table tbody,.compare-table tr{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.compare-table colgroup{display:none}.compare-table th,.compare-table td{border:1px solid var(--color-border);background:var(--color-surface);text-align:left;vertical-align:top;min-width:0;color:var(--color-text);overflow-wrap:break-word;word-break:break-word;border-top:none;padding:12px 14px;font-size:13px;font-weight:600}.compare-table tr:last-child th{border-radius:0 0 0 var(--radius-lg)}.compare-table tr:last-child td:last-child{border-radius:0 0 var(--radius-lg) 0}.compare-table th{color:var(--color-text-muted);font-weight:700}.compare-table tr.is-diff th,.compare-table tr.is-diff td{background:var(--color-primary-soft)}.compare-best{color:var(--color-primary);margin-left:6px}.compare-common-note{border:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-surface);color:var(--color-text-muted);border-top:none;grid-column:1/-1;margin:0;padding:14px;font-size:13px}.compare-backdrop{z-index:40;background:#1f2a2473;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.compare-backdrop-hit{cursor:pointer;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.compare-dialog{z-index:1;background:var(--color-surface);width:min(560px,100%);max-height:min(720px,100vh - 48px);box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;display:flex;position:relative;overflow:hidden}.compare-dialog>header,.compare-dialog>footer{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.compare-dialog>header h2{margin:0;font-size:18px}.compare-dialog>header p{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.compare-dialog>header .compare-remove{position:static}.compare-dialog>footer{border-top:1px solid var(--color-border);justify-content:flex-end}.compare-picker{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;min-height:0;display:grid}.compare-picker.is-single{grid-template-columns:1fr}.compare-picker>div{flex-direction:column;gap:10px;min-height:0;padding:14px 16px 16px;display:flex}.compare-picker>div+div{border-left:1px solid var(--color-border)}.compare-picker-label{color:var(--color-text);margin:0;font-size:13px;font-weight:700}.compare-picker ul{flex-direction:column;gap:8px;max-height:380px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.compare-picker li button{text-align:left;border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.compare-picker li button strong,.compare-picker li button small{display:block}.compare-picker li button small{color:var(--color-text-muted);margin-top:2px;font-size:12px}.compare-picker li button.is-active{border-color:var(--color-primary);background:var(--color-primary-soft)}.compare-picker li button:disabled{opacity:.45;cursor:not-allowed}.compare-dot{clip-path:polygon(50% 6%,93% 25%,93% 75%,50% 94%,7% 75%,7% 25%);border-radius:999px;flex-shrink:0;width:28px;height:28px}.compare-limit{color:var(--color-text-muted);margin:0;font-size:12px}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.compare-jumps{margin-left:0}.compare-top{flex-direction:column}.compare-add{width:100%;min-height:120px}.compare-picker{grid-template-columns:1fr}.compare-picker>div+div{border-left:none;border-top:1px solid var(--color-border)}.compare-header-actions{justify-content:stretch}.compare-header-actions .btn{flex:auto}}@media (width<=900px){.compare-main{--compare-label:132px;--compare-col-min:200px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;grid-template-columns:var(--compare-label) repeat(var(--compare-cols), minmax(var(--compare-col-min), 1fr));width:100%;max-width:100%;padding-bottom:4px;overflow:auto visible}.compare-card{padding:12px 12px 10px}.compare-card-image{width:100%;height:110px}.compare-card h2{overflow-wrap:break-word;word-break:break-word;padding-right:28px;font-size:14px}.compare-card p,.compare-card small{overflow-wrap:break-word;word-break:break-word}.compare-table th,.compare-table td{padding:10px 12px;font-size:12px}.compare-table th:first-child,.compare-parcel-picks>span{z-index:2;background:var(--color-surface-muted);position:sticky;left:0}.compare-table tr.is-diff th:first-child{background:var(--color-primary-soft)}.compare-toolbar{gap:12px 16px}.compare-switch{flex:auto;min-width:0}}@media (width<=720px){.compare-main{--compare-label:118px;--compare-col-min:180px;gap:12px 10px}.compare-card-image{height:96px}.compare-remove{width:26px;height:26px;top:6px;right:6px}.compare-backdrop{align-items:end;padding:12px}.compare-dialog{border-radius:18px 18px 12px 12px;width:100%;max-height:min(640px,100vh - 24px)}}.opportunity-map{flex-direction:column;gap:22px;display:flex}.opportunity-map .page-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.opportunity-map .page-breadcrumb .current{color:var(--color-text);font-weight:600}.opportunity-map .page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.opportunity-map .page-title{color:var(--color-text);margin:0;font-size:28px}.opportunity-map .page-subtitle{color:var(--color-text-muted);max-width:620px;margin:8px 0 0}.opp-count-chip{background:var(--color-surface);border:1px solid var(--color-border);min-width:150px;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.opp-count-label{color:var(--color-text-muted);font-size:12px}.opp-count-chip strong{color:var(--color-primary);font-size:24px;line-height:1}.opp-map-panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;overflow:visible}.opportunity-map .panel-toolbar.opp-map-toolbar,.opp-map-toolbar{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(220px,1fr) minmax(0,2fr);justify-content:stretch;align-items:center;gap:12px;padding:12px 16px;display:grid}.opportunity-map .search-field{width:100%;min-width:0;position:relative}.opportunity-map .search-field input{border:1px solid var(--color-border-strong);background:var(--color-surface-muted);width:100%;height:40px;color:var(--color-text);border-radius:12px;padding:0 14px 0 38px}.opportunity-map .search-field input:focus{border-color:var(--color-primary);outline:2px solid #2f6b4f2e}.opportunity-map .search-icon{color:var(--color-text-soft);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.opp-status-filters{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.opp-filter-chip,.opp-filter-clear{border:1px solid var(--color-border-strong);background:var(--color-surface);height:40px;color:var(--color-text-muted);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:600;display:inline-flex}.opp-filter-chip.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.opp-filter-clear{color:var(--color-text)}.opp-filter-clear:disabled{opacity:.55;cursor:not-allowed}.opp-status-loading{color:var(--color-text-muted);font-size:12px}.opp-status-dropdown{position:relative}.opp-status-dropdown-toggle{color:#fff;height:40px;box-shadow:var(--shadow-sm);border:1px solid #0000;border-radius:12px;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.opp-status-dropdown-toggle.is-active{outline-offset:1px;outline:2px solid #ffffff8c}.opp-status-dropdown-count{background:#ffffff38;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;display:inline-flex}.opp-status-dropdown-caret{opacity:.9;font-size:10px}.opp-status-dropdown-menu{z-index:30;border:1px solid var(--color-border);background:var(--color-surface);width:max-content;min-width:min(240px,100vw - 48px);max-width:min(280px,100vw - 48px);max-height:280px;box-shadow:var(--shadow-md,0 10px 30px #0f172a1f);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.opp-status-dropdown-item{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:600;display:flex}.opp-status-dropdown-item:hover{background:color-mix(in srgb, var(--opp-group-color,#6b7280) 10%, transparent)}.opp-status-dropdown-item.is-selected{background:color-mix(in srgb, var(--opp-group-color,#6b7280) 16%, transparent);color:var(--opp-group-color,var(--color-text))}.opp-status-checkbox{appearance:none;cursor:pointer;border:2px solid var(--opp-group-color,#6b7280);background:#fff;border-radius:4px;flex-shrink:0;place-content:center;width:16px;height:16px;margin:0;display:grid}.opp-status-checkbox:before{content:"";clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);width:9px;height:9px;transition:transform .12s ease-in-out;transform:scale(0);box-shadow:inset 1em 1em #fff}.opp-status-checkbox:checked{background:var(--opp-group-color,#6b7280);border-color:var(--opp-group-color,#6b7280)}.opp-status-checkbox:checked:before{transform:scale(1)}.opp-status-checkbox:focus-visible{outline:2px solid var(--opp-group-color,#6b7280);outline-offset:2px}.opp-filter-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.opp-map-overlay{z-index:2;background:color-mix(in srgb, var(--color-surface) 92%, transparent);border:1px solid var(--color-border);max-width:min(420px,100% - 24px);box-shadow:var(--shadow-sm);color:var(--color-text-muted);text-align:center;pointer-events:none;border-radius:10px;padding:10px 14px;font-size:13px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.opp-map-stage{background:var(--color-surface-muted);border-bottom-right-radius:15px;border-bottom-left-radius:15px;height:min(68vh,720px);min-height:520px;position:relative;overflow:hidden}.opp-google-map{width:100%;height:100%}.opp-map-state{text-align:center;min-height:520px;color:var(--color-text-muted);place-items:center;padding:32px;display:grid}.opp-map-state code{background:var(--color-primary-soft);color:var(--color-primary);border-radius:6px;padding:2px 6px;font-size:12px}.opp-map-error{align-content:center;gap:10px;max-width:640px;margin:0 auto}.opp-map-error strong{color:var(--color-danger);font-size:16px;display:block}.opp-map-error p{margin:0;line-height:1.45}.opp-map-error-steps{text-align:left;color:var(--color-text-muted);margin:8px 0 0;padding-left:20px;line-height:1.55}.opp-map-error-raw{color:var(--color-text-soft);word-break:break-word;font-size:12px;margin-top:10px!important}.opp-map-legend{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;gap:12px 18px;padding:12px 18px;font-size:12px;display:flex}.opp-legend-item{align-items:center;gap:6px;display:inline-flex}.opp-summary-card{width:min(300px,78vw);font-family:var(--font-sans);color:var(--color-text);flex-direction:column;gap:10px;display:flex}.opp-summary-thumb{object-fit:cover;background:var(--color-surface-muted);border-radius:10px;width:100%;height:120px}.opp-summary-body{flex-direction:column;gap:8px;display:flex}.opp-summary-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.opp-summary-top strong{font-size:14px;line-height:1.3}.opp-status-pill{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:700}.opp-summary-meta{color:var(--color-text-muted);margin:0;font-size:12px}.opp-summary-stats{gap:6px;margin:0;display:grid}.opp-summary-stats div{justify-content:space-between;gap:12px;font-size:12px;display:flex}.opp-summary-stats dt{color:var(--color-text-muted)}.opp-summary-stats dd{margin:0;font-weight:700}.opp-summary-stats .is-rank dd{color:var(--color-primary-deep);font-size:18px}.opp-summary-link{color:var(--color-primary);align-items:center;margin-top:2px;font-size:13px;font-weight:700;display:inline-flex}.opp-summary-link:hover{text-decoration:underline}@media (width<=960px){.opportunity-map .panel-toolbar.opp-map-toolbar,.opp-map-toolbar{grid-template-columns:1fr;gap:10px}.opp-status-filters{justify-content:flex-start}}@media (width<=720px){.opportunity-map .page-title{font-size:24px}.opportunity-map .panel-toolbar.opp-map-toolbar,.opp-map-toolbar{gap:8px;padding:12px}.opp-filter-chip,.opp-filter-clear,.opp-status-dropdown-toggle{height:36px;padding-left:10px;padding-right:10px}.opp-map-stage,.opp-map-state{height:58vh;min-height:420px}.opp-count-chip{width:100%}}.opportunity-details{flex-direction:column;gap:22px;display:flex}.opportunity-details .page-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.opportunity-details .page-breadcrumb a{color:var(--color-primary);font-weight:600}.opportunity-details .page-breadcrumb .current{color:var(--color-text);font-weight:600}.opportunity-details .page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.opportunity-details .page-title{color:var(--color-text);margin:0;font-size:28px}.opportunity-details .page-subtitle{color:var(--color-text-muted);margin:8px 0 0}.opportunity-details .btn{border:1px solid var(--color-border-strong);background:var(--color-surface);height:40px;color:var(--color-text);border-radius:12px;align-items:center;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.opp-detail-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.opportunity-details .btn-primary{background:var(--color-primary-gradient);color:#fff;border-color:#0000;box-shadow:0 6px 16px #b8924a47}.opp-detail-panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:minmax(240px,380px) 1fr;gap:0;display:grid;overflow:hidden}.opp-detail-hero{object-fit:cover;background:var(--color-surface-muted);width:100%;height:100%;min-height:280px}.opp-detail-body{flex-direction:column;gap:16px;padding:24px;display:flex}.opp-detail-summary{color:var(--color-text-muted);margin:0;line-height:1.5}.opp-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;display:grid}.opp-detail-grid dt{color:var(--color-text-soft);margin-bottom:4px;font-size:12px}.opp-detail-grid dd{color:var(--color-text);margin:0;font-weight:700}.opportunity-details .opp-status-pill{border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:12px;font-weight:700}.opportunity-details .state-message{text-align:center;color:var(--color-text-muted);padding:48px 18px}.opp-detail-grid .is-rank dd{color:var(--color-primary-deep);font-size:22px}@media (width<=900px){.opp-detail-panel{grid-template-columns:1fr}.opp-detail-hero{min-height:200px;max-height:240px}.opp-detail-grid{grid-template-columns:1fr}}.approvals-page{flex-direction:column;gap:22px;display:flex}.approvals-page .page-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.approvals-page .page-breadcrumb .current{color:var(--color-text);font-weight:600}.approvals-page .page-title{color:var(--color-text);margin:0;font-size:28px}.approvals-page .page-subtitle{color:var(--color-text-muted);max-width:720px;margin:8px 0 0;line-height:1.45}.approvals-banner{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.approvals-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.approvals-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.approvals-tabs{flex-wrap:wrap;gap:8px;display:flex}.approvals-tab{border:1px solid var(--color-border);background:var(--color-surface);height:40px;color:var(--color-text);cursor:pointer;border-radius:999px;padding:0 16px;font-size:14px;font-weight:700}.approvals-tab.is-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.approvals-panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;gap:16px;padding:22px;display:flex}.approvals-panel-note{color:var(--color-text-muted,#6b7280);margin:0;font-size:14px;line-height:1.45}.approvals-panel h2{margin:0;font-size:18px}.approvals-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.approvals-form .is-wide{grid-column:1/-1}.approvals-field{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.approvals-field input,.approvals-field select,.approvals-field textarea{border:1px solid var(--color-border);background:var(--color-surface);height:42px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px;font-weight:500}.approvals-field textarea{resize:vertical;height:auto;min-height:96px;padding:10px 12px}.approvals-field input:disabled,.approvals-field select:disabled,.approvals-field textarea:disabled{color:var(--color-text-muted);background:#f7f8f6}.approvals-field-error{color:var(--color-danger);font-size:12px;font-weight:600}.approvals-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.approvals-table-wrap{border:1px solid var(--color-border);border-radius:12px;overflow:auto}.approvals-table{border-collapse:collapse;width:100%;min-width:960px}.approvals-table th,.approvals-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:12px 14px;font-size:13px}.approvals-table th{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);background:#f7f8f6;font-size:12px}.approvals-table tbody tr:last-child td{border-bottom:none}.approvals-row-actions{flex-wrap:wrap;gap:8px;display:flex}.approvals-decide{border:1px solid var(--color-border);background:#f7f8f6;border-radius:12px;flex-direction:column;gap:10px;width:100%;min-width:min(420px,100%);margin-top:8px;padding:12px;display:flex}.approvals-comment-field{flex-direction:column;gap:6px;width:100%;display:flex}.approvals-decide textarea{box-sizing:border-box;border:1px solid var(--color-border);width:100%;min-height:72px;font:inherit;resize:vertical;border-radius:10px;padding:10px 12px;display:block}.approvals-status{background:var(--color-primary-soft);height:26px;color:var(--color-primary);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.approvals-status.is-approved{color:#177245;background:#e7f6ed}.approvals-status.is-rejected{background:var(--color-danger-soft);color:var(--color-danger)}.approvals-flag{color:var(--color-danger);margin-top:4px;font-size:11px;font-weight:700}.approvals-page .state-message{text-align:center;color:var(--color-text-muted);padding:28px 16px}@media (width<=800px){.approvals-form{grid-template-columns:1fr}}.profile-page{flex-direction:column;gap:22px;display:flex}.profile-page .page-breadcrumb{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.profile-page .page-breadcrumb .current{color:var(--color-text);font-weight:600}.profile-page .page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-page .page-title{color:var(--color-text);margin:0;font-size:28px}.profile-page .page-subtitle{color:var(--color-text-muted);max-width:640px;margin:8px 0 0;line-height:1.45}.profile-banner{border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600}.profile-banner.success{background:var(--color-primary-soft);color:var(--color-primary)}.profile-banner.error{background:var(--color-danger-soft);color:var(--color-danger)}.profile-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.9fr);align-items:start;gap:18px;display:grid}.profile-page .panel{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:16px;padding:22px}.profile-photo-block{border-bottom:1px solid var(--color-border);flex-direction:column;gap:12px;margin-bottom:22px;padding-bottom:22px;display:flex}.profile-photo{object-fit:cover;border:1px solid var(--color-border);background:var(--color-primary-soft-2);border-radius:50%;width:112px;height:112px}.profile-photo.placeholder{color:var(--color-primary);place-items:center;font-size:28px;font-weight:700;display:grid}.profile-photo-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-hint{color:var(--color-text-soft);margin:0;font-size:12px}.profile-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0;display:grid}.profile-details dt{color:var(--color-text-soft);margin-bottom:4px;font-size:12px}.profile-details dd{color:var(--color-text);word-break:break-word;margin:0;font-weight:600}.profile-theme-panel h2,.profile-password-panel h2{color:var(--color-text);margin:0;font-size:18px}.theme-choice{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.theme-choice button{border:1px solid var(--color-border-strong);background:var(--color-surface-muted);min-width:120px;height:42px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 18px;font-size:14px;font-weight:700}.theme-choice button.is-selected{background:var(--color-primary-gradient);color:#fff;border-color:#0000}.password-form{flex-direction:column;gap:14px;margin-top:18px;display:flex}.profile-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.password-input{align-items:center;gap:8px;display:flex}.password-input input,.profile-page .btn{font:inherit}.password-input input{border:1px solid var(--color-border-strong);height:42px;color:var(--color-text);background:var(--color-surface);border-radius:12px;flex:1;padding:0 12px}.password-input input:focus{border-color:var(--color-primary);outline:2px solid #2f6b4f2e}.password-toggle{border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:64px;height:42px;color:var(--color-text-muted);border-radius:12px;font-size:12px;font-weight:700}.profile-page .btn{border:1px solid #0000;border-radius:12px;height:42px;padding:0 14px;font-weight:700}.profile-page .btn-primary{background:var(--color-primary-gradient);color:#fff}.profile-page .btn-primary:disabled{opacity:.7;cursor:not-allowed}.profile-page .btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.profile-page .btn-danger{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.profile-page .btn-danger:hover:not(:disabled){background:var(--color-danger-soft)}.profile-page .modal-backdrop{z-index:30;background:#1f2a2459;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.profile-page .modal{background:var(--color-surface);width:min(480px,100%);box-shadow:var(--shadow-md);text-align:left;border-radius:18px;padding:22px 22px 18px}.profile-page .remove-photo-modal{padding:58px 22px 18px;position:relative}.profile-page .remove-photo-modal-header{margin:0;padding:0}.profile-page .remove-photo-modal-header h2{z-index:1;max-width:calc(100% - 72px);color:var(--color-text);text-align:left;margin:0;padding:0;font-size:22px;font-weight:700;line-height:1.2;position:absolute;top:18px;left:22px}.profile-page .remove-photo-modal-close{z-index:2;border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);border-radius:10px;justify-content:center;align-items:center;margin:0;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px}.profile-page .remove-photo-modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted)}.profile-page .remove-photo-copy{color:var(--color-text);text-align:left;margin:0 0 18px;font-size:14px;line-height:1.5}.profile-page .modal-actions{justify-content:flex-end;gap:10px;display:flex}.profile-page .state-message{text-align:center;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:40px 18px}.profile-notification-panel{flex-direction:column;gap:16px;display:flex}.profile-notification-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-notification-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-notification-panel h2{color:var(--color-text);margin:0 0 6px;font-size:18px}.profile-inactive-hint{background:var(--color-danger-soft,#fde8e8);color:var(--color-danger,#b42318);border-radius:10px;margin:0;padding:10px 12px;font-weight:600}.notification-pref-table-wrap{border:1px solid var(--color-border);border-radius:12px;overflow:auto}.notification-pref-table{border-collapse:collapse;width:100%;min-width:520px}.notification-pref-table th,.notification-pref-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle;padding:12px 14px;font-size:13px}.notification-pref-table th{background:var(--color-surface-muted);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);font-size:12px;font-weight:700}.notification-pref-table tbody tr:last-child td{border-bottom:none}.notification-pref-table th:nth-child(2),.notification-pref-table th:nth-child(3),.notification-pref-table td:nth-child(2),.notification-pref-table td:nth-child(3){text-align:center;width:140px}.notification-pref-check{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;margin:0}.notification-pref-check:disabled{cursor:not-allowed;opacity:.45}.widget-order-input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:72px;height:36px;color:var(--color-text);font:inherit;text-align:center;border-radius:10px;font-weight:700}.widget-order-input:disabled{cursor:not-allowed;opacity:.55}@media (width<=960px){.profile-grid,.profile-details{grid-template-columns:1fr}}.dashboard{flex-direction:column;gap:18px;display:flex}.dashboard .page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard .page-title{color:var(--color-text);margin:0;font-size:34px;font-weight:700;line-height:1.15}.dashboard .page-subtitle{max-width:52rem;color:var(--color-text);margin:10px 0 0;font-size:15px;font-weight:500;line-height:1.45}.dashboard-kpis{border:1px solid var(--color-border-strong);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:16px;padding:18px}.dashboard-kpis-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.dashboard-kpis-head h2{margin:0}.dashboard-kpis-head span,.dashboard-kpis p{color:var(--color-text-muted);font-weight:600}.dashboard-widget-toolbar{flex:none;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.dashboard-widget-zoom{border:1px solid var(--color-border-strong);background:var(--color-surface);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dashboard-widget-zoom svg{width:15px;height:15px}.dashboard-widget-zoom:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}.dashboard-widget-zoom.is-close{color:var(--color-text);font-size:22px;line-height:1}.dashboard-widget-backdrop{z-index:40;background:#1f2a2466;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dashboard-widget-modal{border:1px solid var(--color-border-strong);background:var(--color-surface);width:min(1100px,100%);max-height:min(90vh,860px);box-shadow:var(--shadow-md,0 16px 40px #0f172a2e);border-radius:16px;flex-direction:column;min-width:0;padding:18px;display:flex}.dashboard-widget-modal>.dashboard-kpis-head{flex:none}.dashboard-widget-modal-body{flex:auto;min-height:0;overflow:auto}.dashboard-widget-modal-body .price-chart,.dashboard-widget-modal-body .win-rate-plot,.dashboard-widget-modal-body .pareto-wrap,.dashboard-widget-modal-body .density-chart,.dashboard-widget-modal-body .cycle-chart,.dashboard-widget-modal-body .funnel-body{min-height:420px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.kpi-card{border:1px solid var(--color-border-strong);background:var(--color-surface-muted);border-radius:16px;flex-direction:column;gap:8px;min-height:128px;padding:18px 18px 16px;display:flex}.kpi-label,.kpi-hint{margin:0}.kpi-label{color:var(--color-text-muted);font-size:13px;font-weight:700}.kpi-value{color:var(--color-primary-deep);overflow-wrap:anywhere;font-size:32px;line-height:1.1}.kpi-hint{color:var(--color-text-soft);margin-top:auto;font-size:12px;font-weight:600}.dashboard-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;display:grid}.dashboard-filter-field{min-width:0;color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.dashboard-filter-field input{border:1px solid var(--color-border-strong);background:var(--color-surface);height:40px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 12px}.dashboard-filters-panel .dashboard-filter-error{color:var(--color-danger);margin:12px 0 0;font-size:13px;font-weight:700}.dashboard-clear{border:1px solid var(--color-border-strong);background:var(--color-surface);height:36px;color:var(--color-text);font:inherit;border-radius:12px;padding:0 14px;font-size:13px;font-weight:700}.dashboard-clear:hover{background:var(--color-surface-muted)}.dashboard-charts{--dashboard-widget-height:460px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.dashboard-panel{border:1px solid var(--color-border-strong);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:16px;min-width:0;padding:18px}.dashboard-widget-row{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0;display:grid}.dashboard-charts .dashboard-panel{height:var(--dashboard-widget-height);flex-direction:column;display:flex;overflow:hidden}.dashboard-charts .dashboard-panel[hidden]{display:none!important}.dashboard-layout-note{color:var(--color-text-muted);margin:0;font-weight:600}.dashboard-charts .dashboard-panel>.dashboard-kpis-head{flex-wrap:wrap;flex:none}.dashboard-charts .dashboard-panel>:not(.dashboard-kpis-head){flex:auto;min-height:0;overflow:auto}.dashboard-location-select{flex:none;width:180px}.dashboard-panel-title{flex-direction:column;gap:4px;min-width:0;display:flex}.dashboard-panel-title span{font-size:13px}.price-chart{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.price-chart-body{flex:auto;grid-template-columns:72px minmax(0,1fr);gap:8px;min-height:0;display:grid}.price-axis{color:var(--color-text-muted);text-align:right;flex-direction:column;justify-content:space-between;padding-bottom:28px;font-size:11px;font-weight:700;display:flex}.price-plot{min-width:0;min-height:0;overflow:auto hidden}.price-groups{align-items:stretch;gap:18px;min-width:min-content;height:100%;padding-bottom:2px;display:flex}.price-group{flex-direction:column;flex:none;align-items:center;width:132px;min-height:0;display:flex}.price-columns{border-bottom:1px solid var(--color-border-strong);background-image:repeating-linear-gradient(to top, transparent, transparent calc(25% - 1px), var(--color-border) calc(25% - 1px), var(--color-border) 25%);flex:auto;justify-content:center;align-items:flex-end;gap:0;width:100%;min-height:120px;display:flex}.price-stack{flex-direction:column;justify-content:flex-end;width:52px;height:100%;min-height:0;display:flex}.price-column,.price-cap{color:#fff;text-align:center;justify-content:center;align-items:center;width:100%;min-height:0;font-size:10px;font-weight:700;line-height:1.1;display:flex;overflow:hidden}.price-cap{background:#c6a65b;flex:none}.price-column{flex:none}:is(.price-stack:first-child .price-cap,.price-stack:first-child:not(:has(.price-cap)) .price-column){border-radius:4px 0 0}:is(.price-stack:last-child .price-cap,.price-stack:last-child:not(:has(.price-cap)) .price-column){border-radius:0 4px 0 0}.price-column.asking{background:#946f94}.price-column.expected{background:#59869a}.price-name{width:100%;color:var(--color-text);text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:none;margin-top:8px;font-size:12px;font-weight:700;text-decoration:none;overflow:hidden}.price-legend{color:var(--color-text-muted);flex-wrap:wrap;gap:14px 18px;margin:0;padding:0;font-size:12px;font-weight:700;list-style:none;display:flex}.price-legend li{align-items:center;gap:6px;display:inline-flex}.price-legend i{border-radius:3px;width:12px;height:12px}.price-legend i.asking{background:#946f94}.price-legend i.expected{background:#59869a}.price-legend i.difference{background:#c6a65b}.dashboard-cost-select{flex:none;width:210px}.cost-axis-label{color:var(--color-text-muted);margin:0;font-size:11px;font-weight:700}.cost-chart .price-axis{padding-bottom:78px}:is(.cost-chart .price-stack:first-child:not(:has(.price-cap)) .price-column,.cost-chart .price-stack:last-child:not(:has(.price-cap)) .price-column){border-radius:4px 4px 0 0}.cost-group{width:112px}.cost-columns{gap:8px}.cost-columns .price-stack{width:36px}.cost-columns .price-column{border-radius:4px 4px 0 0}.price-column.land{background:#789782}.price-column.construction{background:#c78052}.price-legend i.land{background:#789782}.price-legend i.construction{background:#c78052}.cost-name,.cost-context{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.cost-name{color:var(--color-text);margin-top:8px;font-size:12px;font-weight:700}.cost-context{color:var(--color-text-muted);font-size:10px;font-weight:600}.cost-figures{text-align:center;flex-direction:column;width:100%;margin-top:2px;font-size:10px;font-weight:700;line-height:1.25;display:flex}.cost-figures .land{color:#789782}.cost-figures .construction{color:#c78052}.station-chart-body{flex:auto;grid-template-columns:18px 36px minmax(0,1fr);align-items:stretch;gap:6px;min-height:0;display:grid}.station-y-title{writing-mode:vertical-rl;color:var(--color-text-muted);align-self:center;font-size:11px;font-weight:700;transform:rotate(180deg)}.station-chart .price-axis{padding-bottom:28px}.station-group{width:108px}.station-columns{gap:3px}.station-columns .price-stack{width:14px}.station-columns .price-column{border-radius:2px 2px 0 0}.station-chart .price-stack:first-child:not(:has(.price-cap)) .price-column{border-radius:2px 2px 0 0}.station-chart .price-stack:last-child:not(:has(.price-cap)) .price-column{border-radius:2px 2px 0 0}.station-x-title{color:var(--color-text-muted);text-align:center;margin:0;font-size:12px;font-weight:700}.station-legend{justify-content:center}.density-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.density-badge{background:color-mix(in srgb, #59869a 16%, var(--color-surface));color:#59869a;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800}.density-chart-wrap{flex-direction:column;gap:8px;height:100%;min-height:0;display:flex}.density-legend{flex:none}.density-plot{flex:auto;min-height:0;position:relative}.density-chart{width:100%;height:100%}.density-grid{stroke:var(--color-border);stroke-width:1px}.density-tick,.density-axis-label,.density-bubble-label{fill:var(--color-text-muted);font-size:11px;font-weight:700}.density-axis-label{fill:var(--color-text)}.density-bubble-label{fill:var(--color-text);font-size:12px}.density-zone{fill:#59869a1f}.density-zone-label{fill:#59869a;letter-spacing:.04em;font-size:11px;font-weight:800}.density-bubble{cursor:pointer}.density-bubble circle{stroke:#fff;stroke-width:1.5px}.density-tooltip{z-index:2;border:1px solid var(--color-border-strong);background:var(--color-surface);min-width:160px;box-shadow:var(--shadow-sm);color:var(--color-text);pointer-events:none;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;font-size:12px;font-weight:700;display:flex;position:absolute;transform:translate(12px,-12px)}.density-tooltip span{color:var(--color-text-muted);font-weight:600}.gfa-chart .price-axis{padding-top:22px;padding-bottom:28px}.gfa-chart .price-plot{box-sizing:border-box;padding-top:22px}.gfa-group{width:88px}.gfa-chart .price-stack{width:48px;overflow:visible}.gfa-column{border-radius:4px 4px 0 0;flex:none;width:100%;display:block;position:relative;overflow:visible}:is(.gfa-chart .price-stack:first-child:not(:has(.price-cap)) .gfa-column,.gfa-chart .price-stack:last-child:not(:has(.price-cap)) .gfa-column){border-radius:4px 4px 0 0}.gfa-value{color:#134e4a;white-space:nowrap;font-size:12px;font-weight:800;line-height:1;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.dd-legend{justify-content:flex-end}.dd-chart .price-axis{padding-top:22px;padding-bottom:28px}.dd-chart .price-plot{box-sizing:border-box;padding-top:22px}.dd-group{width:104px}.dd-columns{position:relative}.dd-chart .price-stack{width:42px;overflow:visible}.dd-column{border-radius:4px 4px 0 0}.dd-sla,.dd-sla-label{z-index:1;pointer-events:none;position:absolute}.dd-sla{border-top:1.5px dashed #b85c6f;left:-9px;right:-9px}.dd-sla-label{color:#b85c6f;white-space:nowrap;font-size:11px;font-weight:800;right:-4px;transform:translateY(-120%)}.dashboard-panel p{color:var(--color-text-muted);font-weight:600}.cycle-chart{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.cycle-chart li{grid-template-columns:minmax(96px,38%) minmax(0,1fr) 72px;align-items:center;gap:10px;display:grid}.cycle-label{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.cycle-track{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:999px;height:18px;overflow:hidden}.cycle-bar{border-radius:inherit;min-width:0;height:100%;display:block}.cycle-value{color:var(--color-primary-deep);justify-self:end;font-size:13px}.ranked-table-wrap{overflow-x:auto}.ranked-table{border-collapse:collapse;width:100%;min-width:420px}.ranked-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:10px 12px;font-size:11px;font-weight:700}.ranked-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text);padding:12px}.ranked-table tbody tr:last-child td{border-bottom:0}.ranked-table a{color:var(--color-text);font-weight:700}.ranked-table small{color:var(--color-text-muted);margin-top:2px;font-weight:600;display:block}.ranked-place{background:var(--color-primary-soft);width:32px;height:32px;color:var(--color-primary-deep);border-radius:50%;place-items:center;font-weight:800;display:grid}.ranked-score{color:var(--color-primary-deep);text-align:right;font-size:18px;font-weight:800}.ranked-table th:last-child,.ranked-table td.ranked-score{text-align:right}.funnel-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:28px;min-width:0;display:grid}.funnel-chart{justify-self:center;width:100%;max-width:280px;height:auto}.funnel-legend{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.funnel-legend li{grid-template-columns:14px minmax(0,1fr) minmax(2.5ch,max-content) minmax(4.5ch,max-content);align-items:center;gap:10px 12px;display:grid}.funnel-swatch{border-radius:999px;width:14px;height:14px}.funnel-legend-label{color:var(--color-text);font-size:14px;font-weight:700}.funnel-legend-count{color:var(--color-primary-deep);text-align:right;font-variant-numeric:tabular-nums;justify-self:end;font-size:18px}.funnel-legend-count.is-end{grid-column:3/-1}.status-body,.source-body{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:20px;min-width:0;display:grid}.dashboard-charts .dashboard-panel>.status-body{grid-template-rows:minmax(0,1fr);align-items:stretch;overflow:hidden}.dashboard-charts .dashboard-panel>.funnel-body,.dashboard-charts .dashboard-panel>.source-body{min-height:0}.status-chart,.source-chart,.win-rate-plot{flex-direction:column;align-items:center;gap:8px;display:flex}.win-rate-overall{text-align:center;flex-direction:column;align-items:center;margin:0;display:flex}.win-rate-overall strong{color:var(--color-text);font-size:28px;line-height:1}.win-rate-overall span{color:var(--color-text-muted);font-size:12px;font-weight:700}.pareto-wrap{flex-direction:column;gap:8px;height:100%;min-height:0;display:flex}.pareto-chart{width:100%;height:100%}.pareto-count,.pareto-cumulative{font-size:12px;font-weight:800}.pareto-cumulative{fill:#59869a}.pareto-vital{background:var(--color-surface-muted);color:var(--color-text);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.pareto-vital strong{color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase;font-size:12px}.return-distribution{flex-wrap:wrap;align-items:stretch;gap:16px;min-height:0;display:flex}.return-box{flex-direction:column;flex:220px;gap:6px;min-width:0;margin:0;display:flex}.return-box figcaption{color:var(--color-text);text-align:center;font-size:14px;font-weight:800}.return-box svg{width:100%;height:220px}.return-box dl{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;display:grid}.return-box dl div{flex-direction:column;align-items:center;gap:2px;display:flex}.return-box dt{color:var(--color-text-muted);font-size:11px;font-weight:700}.return-box dd{color:var(--color-text);margin:0;font-size:12px;font-weight:800}.return-box>p{color:var(--color-text-muted);text-align:center;margin:0;font-size:12px;font-weight:700}.return-legend{flex:100%}.source-chart{justify-self:center;width:100%;max-width:240px;height:auto}.status-chart{align-self:center}.status-chart-total{fill:var(--color-primary-deep);font-size:22px;font-weight:800}.status-chart-caption{fill:var(--color-text-muted);font-size:11px;font-weight:700}.status-legend{flex-direction:column;align-self:stretch;gap:8px;min-height:0;margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.status-legend li{grid-template-columns:14px minmax(0,1fr) minmax(2.5ch,max-content) minmax(4.5ch,max-content);align-items:center;gap:8px 10px;display:grid}.status-percent{min-width:4.5ch;color:var(--color-text-muted);text-align:right;font-variant-numeric:tabular-nums;justify-self:end;margin-left:0;font-size:12px;font-weight:700}@media (width<=1100px){.kpi-grid,.dashboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-charts{grid-template-columns:1fr}}@media (width<=900px){.funnel-body,.status-body,.source-body{grid-template-rows:auto auto;grid-template-columns:1fr;place-items:stretch stretch;gap:16px}.dashboard-charts .dashboard-panel>.status-body,.dashboard-charts .dashboard-panel>.funnel-body,.dashboard-charts .dashboard-panel>.source-body{grid-template-rows:auto auto;overflow:visible}.funnel-chart{justify-self:center;width:min(100%,180px);max-width:180px;height:auto;display:block}.status-chart,.source-chart{aspect-ratio:1;place-self:center;width:min(100%,180px);max-width:180px;height:auto;display:block}.funnel-legend,.status-legend{width:100%;max-height:none;overflow:visible}}@media (width<=720px){.dashboard-widget-backdrop{align-items:stretch;padding:12px}.dashboard-widget-modal{width:100%;max-height:calc(100dvh - 24px);padding:14px}.dashboard-widget-modal-body .price-chart,.dashboard-widget-modal-body .win-rate-plot,.dashboard-widget-modal-body .pareto-wrap,.dashboard-widget-modal-body .density-chart,.dashboard-widget-modal-body .cycle-chart,.dashboard-widget-modal-body .funnel-body{min-height:280px}.dashboard-charts{--dashboard-widget-height:auto}.dashboard-charts .dashboard-panel{height:auto;min-height:0;overflow:visible}.dashboard-charts .dashboard-panel>:not(.dashboard-kpis-head){flex:none;min-height:0;overflow:visible}.price-chart,.win-rate-plot,.pareto-wrap,.density-chart,.cycle-chart{height:auto;min-height:260px}.dashboard-widget-row{grid-template-columns:1fr}.dashboard-location-select,.dashboard-cost-select{width:100%}.dashboard-kpis-head{flex-direction:column;align-items:stretch}.dashboard-filters{grid-template-columns:1fr}.kpi-value{font-size:26px}.cycle-chart li{grid-template-columns:minmax(0,1fr) 72px}.price-chart-body{grid-template-columns:56px minmax(0,1fr)}.cycle-label{grid-column:1/-1}.funnel-legend li,.status-legend li{grid-template-columns:14px minmax(0,1fr) minmax(2.5ch,max-content) minmax(4.5ch,max-content);gap:8px 10px}.funnel-legend-label{font-size:13px}.funnel-legend-count{font-size:16px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fff;--color-surface:#fff;--color-surface-muted:#f6f4f1;--color-sidebar:#513643;--color-border:#ebe4da;--color-border-strong:#d9c9ae;--color-text:#4a3540;--color-text-muted:#7a6a62;--color-text-soft:#9a8878;--color-primary:#b8924a;--color-primary-hover:#a07d3d;--color-primary-deep:#8f6d38;--color-primary-soft:#f7f1e6;--color-primary-soft-2:#f0e6d4;--color-primary-gradient:linear-gradient(135deg, #d4af6a 0%, #b8924a 55%, #a07d3d 100%);--color-accent-plum:#8a6574;--color-accent-plum-soft:#f7eef1;--color-accent-blue:#7a8f9e;--color-accent-blue-soft:#eaf0f3;--color-warning:#b08a4a;--color-warning-soft:#f8f2e6;--color-danger:#b05a56;--color-danger-soft:#f8e9e7;--color-success:#8f9b5c;--color-success-soft:#eef2e4;--shadow-sm:0 1px 2px #4a35400a;--shadow-md:0 8px 24px #4a35400f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--sidebar-width:260px;--sidebar-width-collapsed:76px;--font-sans:"Segoe UI", "Helvetica Neue", Arial, sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#3a3a3a;--color-surface:#454545;--color-surface-muted:#4e4e4e;--color-border:#5e5e5e;--color-border-strong:#707070;--color-text:#f2f2f2;--color-text-muted:#c2c2c2;--color-text-soft:#9a9a9a;--color-primary:#c4a15a;--color-primary-hover:#d4b36e;--color-primary-deep:#e6d3a4;--color-primary-soft:#4e473f;--color-primary-soft-2:#574f44;--color-accent-plum:#d0aeb8;--color-accent-plum-soft:#4a4246;--color-accent-blue:#b7c7d4;--color-accent-blue-soft:#45494e;--color-warning:#e0c07a;--color-warning-soft:#4d483f;--color-danger:#e7a09c;--color-danger-soft:#4d4242;--color-success:#c5d09a;--color-success-soft:#454945;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 10px 28px #0006}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0}input,textarea,select{color:var(--color-text);background-color:var(--color-surface);border-color:var(--color-border-strong)}input::placeholder,textarea::placeholder{color:var(--color-text-soft)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}.btn-primary{box-shadow:0 6px 16px #b8924a38;background:var(--color-primary-gradient)!important;color:#fff!important;border-color:#0000!important}.btn-primary:hover:not(:disabled){filter:brightness(1.03)}input[type=checkbox]{appearance:none;border:1.5px solid var(--color-border-strong);background:var(--color-surface);cursor:pointer;vertical-align:middle;border-radius:4px;flex-shrink:0;width:18px;height:18px;margin:0;transition:background-color .15s,border-color .15s,box-shadow .15s;position:relative}input[type=checkbox]:after{content:"";opacity:0;background-position:50%;background-repeat:no-repeat;background-size:12px 12px;transition:opacity .12s;position:absolute;inset:0}input[type=checkbox]:hover:not(:disabled):not(:checked){background-color:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px #b8924a2e}input[type=checkbox]:checked{background-color:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:checked:after{opacity:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.2 6.4 11l6.1-6.5'/%3E%3C/svg%3E")}input[type=checkbox]:checked:hover:not(:disabled){background-color:var(--color-primary-soft);border-color:var(--color-primary);box-shadow:0 0 0 3px #b8924a2e}input[type=checkbox]:checked:hover:not(:disabled):after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%238f6d38' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.2 6.4 11l6.1-6.5'/%3E%3C/svg%3E")}input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #b8924a73}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}select{accent-color:var(--color-primary);color:var(--color-text);background-color:var(--color-surface);border-color:var(--color-border-strong)}select:focus{border-color:var(--color-primary);outline:2px solid #b8924a47}select option:checked{background:var(--color-primary) linear-gradient(0deg, var(--color-primary) 0%, var(--color-primary) 100%);color:#fff}.theme-select{vertical-align:middle;min-width:140px;display:inline-flex;position:relative}.theme-select.is-block{width:100%;min-width:0;display:block}.theme-select.is-disabled{opacity:.55;pointer-events:none}.theme-select-trigger{text-align:left;cursor:pointer;width:100%;min-width:0;font:inherit;box-sizing:border-box;justify-content:space-between;align-items:center;gap:10px;display:inline-flex;overflow:hidden}.theme-select.is-block .theme-select-trigger{min-height:40px}.theme-select-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.theme-select-trigger .is-placeholder{color:var(--color-text-muted)}.theme-select-caret{color:var(--color-text-muted);flex:none;font-size:14px;line-height:1}.theme-select.is-open .theme-select-trigger{border-color:var(--color-primary);box-shadow:0 0 0 3px #b8924a29}.theme-select-menu{z-index:20;background:var(--color-surface);border:1px solid var(--color-border-strong);min-width:100%;max-height:260px;box-shadow:var(--shadow-md);box-sizing:border-box;border-radius:12px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.theme-select-menu.is-portaled{min-width:0;right:auto}.theme-select-menu.has-search{gap:0;padding:0;overflow:hidden}.theme-select-search{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;padding:8px 8px 6px}.theme-select-search input{box-sizing:border-box;border:1px solid var(--color-border-strong);background:var(--color-bg);width:100%;color:var(--color-text);font:inherit;border-radius:8px;outline:none;margin:0;padding:8px 10px;font-size:13px;font-weight:600}.theme-select-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #b8924a29}.theme-select-options{flex-direction:column;flex:auto;gap:2px;min-height:0;padding:6px;display:flex;overflow:auto}.theme-select-menu:not(.has-search) .theme-select-options{padding:0;overflow:visible}.theme-select-empty{color:var(--color-text-muted);text-align:center;padding:10px;font-size:13px;font-weight:600}.theme-select-group{flex-direction:column;gap:2px;width:100%;min-width:0;display:flex}.theme-select-group+.theme-select-group{margin-top:8px}.theme-select-group.has-label{padding-bottom:2px}.theme-select-group-label{box-sizing:border-box;background:var(--color-primary-soft);letter-spacing:.01em;width:100%;color:var(--color-primary-deep);border-radius:8px;margin:0 0 4px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.35;display:block}.theme-select-option{box-sizing:border-box;text-align:left;width:100%;font:inherit;color:var(--color-text);cursor:pointer;overflow-wrap:anywhere;white-space:normal;background:0 0;border:none;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;display:block}.theme-select-option.is-child{padding-left:22px}.theme-select-option:hover{background:var(--color-primary-soft);color:var(--color-primary-deep)}.theme-select-option.is-selected{background:var(--color-primary-gradient);color:#fff}.theme-select-option.is-selected:hover{background:var(--color-primary-hover);color:#fff;filter:none}@media (width<=1100px){.page-title{font-size:28px}.page-header,.survey-parcel-bar,.panel-toolbar,.opp-map-toolbar{flex-wrap:wrap}.page-actions,.search-field{min-width:0}.table-wrap,.approvals-table-wrap,.notification-pref-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%}.modal,.compare-panel{width:min(560px,100vw - 24px);max-height:calc(100dvh - 24px)}.modal-backdrop,.compare-backdrop{padding:12px}}@media (width<=720px){.page-header,.compare-bar,.panel-footer{flex-direction:column;align-items:stretch}.opportunity-filters .search-field,.opportunity-filters .multi-select,.opportunity-filters .filter-select,.opportunity-filters .multi-select-trigger{flex:100%;width:100%;min-width:0}.audit-filters,.api-form{grid-template-columns:1fr}.page-title,.login-card h1{font-size:24px}.page-actions{flex-wrap:wrap;width:100%}.page-actions .btn{flex:auto;min-width:min(100%,140px);max-width:100%}.land-form .page-actions .btn{flex:0 auto}.stats-grid,.role-stats,.opp-map-plotting-summary dl{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:140px}input,select,textarea{font-size:16px}.login-page{align-items:start;padding:16px}.login-card{padding:20px 16px}}
