@import "https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&display=swap";:root{--font:"Archivo", sans-serif;--caps:uppercase;--trackh:.05em;--marker:"+ ";--join:"+";--chrome-bg:#181411;--chrome-ink:#fef7e9;--chrome-muted:#a29793;--chrome-line:#2d2620;--chrome-active:#251e18;--bg:#fef7e9;--surface:#fffdf6;--ink:#1e1813;--ink2:#84786e;--line:#ede2ce;--accent:#fd613b;--accent-ink:#fff;--accent-soft:#ffe7de;--accent-deep:#ce3a12;--ok:#3e7c53;--ok-soft:#e6efe0;--warn:#9a6a1f;--warn-soft:#f6ecd2;--bad:#b0433a;--bad-soft:#f8e5dc;--r-card:4px;--r-ctl:3px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:inherit}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.marker-heading{text-transform:var(--caps);letter-spacing:var(--trackh);font-weight:700}.marker-heading:before{content:var(--marker);color:var(--accent)}.stage-join:before{content:var(--join);color:var(--accent);margin:0 6px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.dashboard-group{margin-bottom:28px}.dashboard-group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ink2);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.dashboard-group-count{background:var(--bg);border-radius:999px;padding:1px 8px;font-weight:700}.dashboard-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}table.dashboard-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}table.dashboard-table th{text-align:left;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);background:var(--bg);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:700}table.dashboard-table td{border-bottom:1px solid var(--line);vertical-align:top;word-break:break-word;overflow-wrap:break-word;padding:11px 14px}table.dashboard-table tr:last-child td{border-bottom:none}.dashboard-status-pill{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-flex}.dashboard-status-pending{background:var(--warn-soft);color:var(--warn)}.dashboard-status-approved{background:var(--ok-soft);color:var(--ok)}.dashboard-status-rejected{background:var(--bad-soft);color:var(--bad)}.dashboard-empty{text-align:center;color:var(--ink2);padding:3rem 1rem;font-size:13.5px}.review-item{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);margin-bottom:10px;overflow:hidden}.review-header{cursor:pointer;align-items:center;gap:12px;padding:14px 18px;display:flex}.review-header:hover{background:var(--bg)}.review-meta{flex:1;min-width:0}.review-event{font-size:14px;font-weight:700}.review-sub{color:var(--ink2);margin-top:2px;font-size:12px}.review-rank-badge{border:1px solid var(--line);border-radius:var(--r-ctl);padding:2px 9px;font-size:12px;font-weight:700}.review-chevron{color:var(--ink2);transition:transform .15s}.review-chevron.open{transform:rotate(180deg)}.review-body{border-top:1px solid var(--line);padding:20px}.review-detail-grid{grid-template-columns:1fr 1fr;gap:10px 2rem;margin-bottom:16px;display:grid}.review-detail-item .dl{text-transform:uppercase;letter-spacing:.05em;color:var(--ink2);margin-bottom:2px;font-size:11px;font-weight:700}.review-detail-item .dv{font-size:13px}.review-action-row{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-top:16px;display:flex}.review-btn{border-radius:var(--r-ctl);cursor:pointer;border:1px solid var(--line);background:#fff;padding:8px 14px;font-size:12.5px;font-weight:700}.review-btn-approve{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.review-btn-reject{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.review-reason-wrap{margin-top:12px}.review-reason-wrap input{border:1px solid var(--line);border-radius:var(--r-ctl);width:100%;margin-bottom:8px;padding:8px 12px;font-family:inherit;font-size:13px}.review-reason-actions{gap:6px;display:flex}.review-empty{text-align:center;color:var(--ink2);padding:3rem 1rem;font-size:13.5px}.form-page{min-height:100vh}.form-header{background:var(--chrome-bg);height:64px;color:var(--chrome-ink);justify-content:space-between;align-items:center;padding:0 28px;display:flex}.form-header img{height:20px;display:block}.form-header-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--chrome-muted);font-size:11px}.form-col{max-width:760px;margin:0 auto;padding:52px 20px 80px}.form-eyebrow{color:var(--accent-deep);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:11px;font-weight:700}.form-display-title{text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px;font-size:34px;font-weight:700}.form-intro{color:var(--ink2);margin-bottom:36px;font-size:13.5px;line-height:1.6}.form-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:16px;padding:26px 28px}.form-section-head{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;margin-bottom:18px;padding-bottom:14px;display:flex}.form-section-idx{color:var(--ink2);font-family:monospace;font-size:12px}.form-section-title{text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:700}.form-field-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.form-field-row:last-child{margin-bottom:0}.form-field label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-field-note{color:var(--ink2);font-size:11px;font-weight:400}.form-field input[type=text],.form-field input[type=email],.form-field input[type=date],.form-field textarea{border:1px solid var(--line);border-radius:var(--r-ctl);width:100%;color:var(--ink);background:#fff;padding:9px 12px;font-family:inherit;font-size:14px}.form-field input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);outline:none}.form-field textarea{resize:vertical;min-height:84px}.form-lookup-row{align-items:center;gap:8px;display:flex}.form-ai-btn{background:var(--accent-soft);color:var(--accent-deep);border-radius:var(--r-ctl);cursor:pointer;white-space:nowrap;border:none;flex-shrink:0;height:40px;padding:0 16px;font-size:12.5px;font-weight:700}.form-ai-btn:hover:not(:disabled){background:var(--accent);color:var(--accent-ink)}.form-ai-btn:disabled{opacity:.7;cursor:default}.form-ai-banner{background:var(--accent-soft);color:var(--accent-deep);border-radius:var(--r-ctl);justify-content:space-between;gap:12px;margin-bottom:16px;padding:10px 14px;font-size:12.5px;font-weight:600;display:flex}.form-ai-banner button{color:var(--accent-deep);cursor:pointer;white-space:nowrap;background:0 0;border:none;font-size:12.5px;font-weight:700;text-decoration:underline}.form-ai-pill{background:var(--accent-soft);color:var(--accent-deep);border-radius:999px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:700}.form-ai-error{color:var(--ink2);margin-bottom:16px;font-size:12.5px}.form-info-strip{background:var(--bg);border-radius:var(--r-ctl);flex-wrap:wrap;align-items:center;gap:24px;padding:10px 14px;font-size:12.5px;display:flex}.form-info-strip .lbl{color:var(--ink2);margin-right:6px}.form-rank-badge{border:1px solid var(--line);border-radius:var(--r-ctl);padding:1px 8px;font-weight:700}.form-info-strip .note{color:var(--ink2);margin-left:auto}.form-toggle-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.form-toggle-row:last-child{border-bottom:none;padding-bottom:0}.form-toggle-row:first-child{padding-top:0}.form-toggle-copy strong{font-size:13.5px;font-weight:600;display:block}.form-toggle-copy span{color:var(--ink2);font-size:12.5px}.form-switch{background:var(--line);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:34px;height:20px;padding:0;position:relative}.form-switch.on{background:var(--accent)}.form-switch-knob{background:#fff;border-radius:999px;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #10141a33}.form-switch.on .form-switch-knob{left:16px}.form-topic-field{border-left:2px solid var(--accent-soft);margin-top:12px;padding-left:14px}.form-chip-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.form-chip{border:1px solid var(--line);border-radius:var(--r-ctl);color:var(--ink2);cursor:pointer;background:#fff;padding:7px 14px;font-size:13px}.form-chip.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep);font-weight:600}.form-budget-field{max-width:220px}.form-budget-wrap{position:relative}.form-budget-wrap span{color:var(--ink2);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.form-budget-wrap input{padding-left:22px}.form-budget-helper{color:var(--ink2);margin-top:6px;font-size:12px}.form-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;display:flex}.form-submit-btn{background:var(--accent);color:var(--accent-ink);border-radius:var(--r-ctl);letter-spacing:.03em;cursor:pointer;border:none;height:46px;padding:0 28px;font-size:13.5px;font-weight:700}.form-submit-btn:hover:not(:disabled){background:var(--accent-deep)}.form-submit-btn:disabled{opacity:.6;cursor:default}.form-footer-note{color:var(--ink2);text-align:right;max-width:320px;font-size:12px}.form-success{background:var(--ok-soft);color:var(--ok);border-radius:var(--r-card);margin-bottom:20px;padding:16px 20px;font-size:13.5px;font-weight:600}.form-loading-page,.form-notfound-page{height:100vh;color:var(--ink2);justify-content:center;align-items:center;font-size:13.5px;display:flex}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);width:100%;max-width:380px;padding:32px 30px}.login-logo{height:20px;margin-bottom:24px}.login-logo-text{letter-spacing:.06em;margin-bottom:24px;font-size:14px;font-weight:800}.login-title{margin-bottom:4px;font-size:20px}.login-subtitle{color:var(--ink2);margin-bottom:22px;font-size:13px}.login-field{margin-bottom:14px}.login-field label{margin-bottom:5px;font-size:12.5px;font-weight:600;display:block}.login-field input{border:1px solid var(--line);border-radius:var(--r-ctl);width:100%;padding:9px 12px;font-family:inherit;font-size:14px}.login-field input:focus{border-color:var(--accent);outline:none}.login-error{background:var(--bad-soft);color:var(--bad);border-radius:var(--r-ctl);margin-bottom:14px;padding:8px 12px;font-size:12.5px}.login-submit{background:var(--accent);width:100%;color:var(--accent-ink);border-radius:var(--r-ctl);cursor:pointer;border:none;height:42px;margin-top:4px;font-size:13.5px;font-weight:700}.login-submit:disabled{opacity:.6;cursor:default}.login-quick{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.login-quick-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);margin-bottom:10px;font-size:11px}.login-quick-btn{text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:pointer;width:100%;margin-bottom:6px;padding:9px 12px;font-size:12.5px;font-weight:600;display:block}.login-quick-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep)}.login-quick-btn span{color:var(--ink2);margin-top:1px;font-size:11px;font-weight:400;display:block}.sidebar{background:var(--chrome-bg);width:232px;height:100%;color:var(--chrome-ink);border-right:1px solid var(--chrome-line);flex-direction:column;flex-shrink:0;transition:width .15s;display:flex}.sidebar.collapsed{width:56px}.sidebar-logo{justify-content:space-between;align-items:center;padding:24px 20px 20px;display:flex}.sidebar.collapsed .sidebar-logo{justify-content:center;padding:24px 8px 20px}.sidebar-collapse-btn{color:var(--chrome-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:14px}.sidebar-collapse-btn:hover{color:var(--chrome-ink)}.sidebar-logo img{height:20px;display:block}.sidebar-logo-text{letter-spacing:.06em;align-items:center;height:20px;font-size:14px;font-weight:800;display:flex}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:4px 12px;display:flex}.sidebar-nav-item{border-radius:var(--r-ctl);color:var(--chrome-muted);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:9px 12px;font-size:13.5px;text-decoration:none;transition:background .12s,color .12s;display:flex}.sidebar-nav-item:hover{background:var(--chrome-active);color:var(--chrome-ink)}.sidebar-nav-item.active{background:var(--chrome-active);color:var(--chrome-ink);font-weight:600}.sidebar-badge{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;line-height:1.4}.sidebar-tenants{margin-top:14px;padding:0 12px}.sidebar-tenant-label{text-transform:uppercase;letter-spacing:.08em;color:var(--chrome-muted);padding:4px 12px 6px;font-size:10.5px}.sidebar-tenant-item{border-radius:var(--r-ctl);color:var(--chrome-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;display:flex}.sidebar-tenant-item:hover{background:var(--chrome-active);color:var(--chrome-ink)}.sidebar-tenant-item.selected{background:var(--chrome-active);color:var(--chrome-ink);font-weight:600}.sidebar-tenant-dot{border-radius:999px;flex-shrink:0;width:8px;height:8px}.sidebar-bottom{border-top:1px solid var(--chrome-line);flex-direction:column;gap:12px;padding:16px 12px;display:flex}.sidebar-form-link{border:1px dashed var(--chrome-line);border-radius:var(--r-ctl);color:var(--chrome-muted);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.sidebar-form-link button{color:var(--chrome-ink);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:0 0;border:none;font-size:11px;font-weight:700}.sidebar-user{align-items:center;gap:10px;display:flex}.sidebar-logout-btn{color:var(--chrome-muted);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:0;font-size:11px;text-decoration:underline}.sidebar-logout-btn:hover{color:var(--chrome-ink)}.sidebar-user-avatar{background:var(--accent);width:30px;height:30px;color:var(--accent-ink);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.sidebar-user-name{color:var(--chrome-ink);font-size:13px;font-weight:600;line-height:1.3}.sidebar-user-role{color:var(--chrome-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px}.app-shell{height:100%;min-height:100vh;display:flex}.app-shell-main{flex:1;min-width:0;padding:30px 36px;overflow-y:auto}.app-shell-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:24px;display:flex}.app-shell-tenant-label{color:var(--ink2);margin-top:6px;font-size:12px}.app-shell-title{color:var(--ink);font-size:22px}.app-shell-subtitle{color:var(--ink2);margin-top:4px;font-size:13.5px}.app-shell-loading{height:100vh;color:var(--ink2);justify-content:center;align-items:center;font-size:13.5px;display:flex}
