:root{--obsidian:#111;--carbon:#1b1b1b;--graphite:#31312f;--surface:#f3f3f0;--panel:#fff;--soft-panel:#ebebe7;--line:#d8d8d2;--ink:#151515;--muted:#6b6b66;--quiet:#74746e;--silver:#c9c9c3;--success:#16764f;--warning:#a26818;--danger:#ad3a34;--radius:14px}*{box-sizing:border-box}html{background:var(--surface)}body{color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Noto Sans Thai,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh}.topbar{color:#fff;background:var(--obsidian);border-bottom:1px solid #343432;justify-content:space-between;align-items:center;gap:24px;min-height:74px;padding:0 max(24px,50vw - 680px);display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:12px;font-size:16px;font-weight:640;display:inline-flex}.brand-mark{border:1px solid #d9d9d4;border-radius:50%;place-items:center;width:27px;height:27px;display:inline-grid;position:relative}.brand-mark:before,.brand-mark:after{content:"";background:#d9d9d4;width:1px;height:21px;position:absolute;transform:rotate(60deg)}.brand-mark:after{transform:rotate(-60deg)}.topbar-meta{color:#d2d2cc;align-items:center;gap:16px;font-size:13px;display:flex}.topbar-meta a{color:#fff}.content{width:min(1360px,100% - 48px);margin:0 auto;padding:52px 0 72px}.eyebrow{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:700}.hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:24px;padding-bottom:32px;display:flex}.hero h1,.page-heading h1{letter-spacing:-.022em;max-width:760px;margin:0;font-size:clamp(34px,4vw,56px);font-weight:620;line-height:1.26}.hero-copy,.page-heading p{max-width:640px;color:var(--muted);margin:15px 0 0;font-size:16px}.hero-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:12px;display:flex}.identity{color:var(--muted);white-space:nowrap;align-items:center;gap:9px;font-size:13px;display:flex}.live-dot{background:#77d39e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d9eee1}.button,.action-button{border:1px solid var(--graphite);min-height:44px;color:var(--ink);cursor:pointer;letter-spacing:-.01em;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0 17px;font-size:14px;font-weight:620;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover,.action-button:hover{background:#e7e7e2;transform:translateY(-1px)}.button.primary{color:#fff;background:var(--obsidian);border-color:var(--obsidian)}.button.primary:hover{background:var(--graphite)}.button.quiet{border-color:var(--line)}.button:focus-visible,.action-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #97b6d2}.button:disabled,.action-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button[aria-busy=true],.action-button[aria-busy=true]{cursor:progress}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0 44px;display:grid}.metric{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:145px;padding:23px}.metric-label{color:var(--muted);font-size:13px}.metric-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-top:15px;font-size:42px;font-weight:630;line-height:1.15}.metric-note{color:var(--quiet);margin-top:12px;font-size:12px}.section-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px;display:flex}.section-head h2,.form-panel h2,.info-panel h2{letter-spacing:-.032em;margin:0;font-size:20px;font-weight:630}.section-head p{color:var(--muted);margin:0;font-size:13px}.table-card,.form-panel,.info-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th{color:var(--muted);border-bottom:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:#f8f8f6;padding:14px 20px;font-size:11px;font-weight:720}td{vertical-align:middle;border-bottom:1px solid #e8e8e4;padding:18px 20px}tr:last-child td{border-bottom:0}.project-name{letter-spacing:-.015em;font-weight:620;display:block}.subtle{color:var(--muted);font-size:13px}.status{white-space:nowrap;border-radius:99px;align-items:center;min-height:25px;padding:3px 9px;font-size:12px;font-weight:650;display:inline-flex}.status-draft{color:#5e5e59;background:#ecece8}.status-submitted{color:#815512;background:#faf0d9}.status-active{color:#126341;background:#dcf0e4}.status-rejected,.status-relinquished{color:#8d2f2b;background:#f8e1df}.status-expired,.status-archived{color:#5e5e59;background:#e8e8e4}.status-deleting{color:#805315;background:#f6ead0}.empty{color:var(--muted);text-align:center;padding:44px 20px}.actions{flex-wrap:wrap;align-items:center;gap:7px;min-width:190px;display:flex}.action-button{border-color:var(--line);min-height:36px;padding:0 12px;font-size:12px}.action-button.approve{color:#fff;background:var(--obsidian);border-color:var(--obsidian)}.action-button.danger{color:var(--danger)}.action-message{max-width:200px;color:var(--muted);margin-top:7px;font-size:11px;display:block}.back-link{color:var(--muted);margin-bottom:34px;font-size:14px;display:inline-flex}.back-link:hover{color:var(--ink)}.page-heading{max-width:760px;margin-bottom:32px}.page-heading h1{font-size:clamp(32px,3.6vw,48px)}.form-panel{max-width:930px;padding:30px}.form-panel-header{border-bottom:1px solid var(--line);padding-bottom:24px}.form-panel-header p{color:var(--muted);margin:8px 0 0}.registration-form{margin-top:26px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px;display:grid}.field{gap:8px;display:grid}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:650}.field-hint{color:var(--muted);font-size:12px}input,select,textarea{width:100%;color:var(--ink);background:#fbfbfa;border:1px solid #cfcfc9;border-radius:8px;outline:none;padding:11px 12px;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:#51514e;box-shadow:0 0 0 3px #e0e0da}textarea{resize:vertical;min-height:132px}input[type=file]{background:var(--soft-panel);padding:9px}input[type=file]::file-selector-button{color:#fff;background:var(--obsidian);font:inherit;border:0;border-radius:5px;margin-right:11px;padding:6px 9px;font-size:12px}.form-footer{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:27px;padding-top:22px;display:flex}.form-status{color:var(--muted);margin:0;font-size:13px}.form-status.success{color:var(--success)}.info-panel{padding:0}.info-intro{background:var(--obsidian);color:#fff;padding:27px 30px}.info-intro p{color:#d7d7d1;max-width:650px;margin:9px 0 0}.company-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.company{border-bottom:1px solid var(--line);padding:20px 30px}.company:nth-child(odd){border-right:1px solid var(--line)}.company-name{font-weight:620;display:block}.company-code{color:var(--muted);margin-top:5px;font-size:13px}.login-shell{color:#fff;background:var(--obsidian);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border-radius:var(--radius);background:linear-gradient(145deg,#20201f,#151515);border:1px solid #3b3b37;width:min(100%,470px);padding:37px}.login-card h1{letter-spacing:-.055em;margin:25px 0 0;font-size:41px;font-weight:630}.login-card p{color:#d5d5cf;margin:12px 0 25px}.login-card .button{color:#fff;border-color:#d5d5ce}.login-card .error{color:#f3a9a5}@media (max-width:720px){.topbar{min-height:64px;padding:0 20px}.topbar-meta .identity{display:none}.content{width:min(100% - 32px,1360px);padding:36px 0 48px}.hero{display:block}.hero-actions{justify-content:flex-start;margin-top:24px}.metric-grid{grid-template-columns:1fr;margin-bottom:34px}.section-head{flex-direction:column;align-items:start}.form-panel{padding:21px}.form-grid,.company-list{grid-template-columns:1fr}.company:nth-child(odd){border-right:0}.company{padding:18px 21px}th,td{padding-left:15px;padding-right:15px}.login-card{padding:27px}}.info-panel.warn .info-intro{background:#8a5714}.info-panel.warn .info-intro p{color:#fdf1dc}.conflict-list,.evidence-list,.match-list{margin:0;padding:0;list-style:none}.conflict-list li,.evidence-list li{border-bottom:1px solid var(--line);padding:17px 30px}.conflict-list li:last-child,.evidence-list li:last-child{border-bottom:0}.conflict-list .subtle,.evidence-list .subtle{margin-top:4px;display:block}.evidence-list a{text-underline-offset:3px;font-weight:620;text-decoration:underline}.participant-actions{flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.participant-actions .link-button{color:var(--muted)}.participant-actions .link-button:hover:not(:disabled){color:var(--ink)}.participant-actions .link-button.danger:hover:not(:disabled){color:var(--danger)}.participant-actions .link-button:disabled{opacity:.55;cursor:not-allowed}.held-marker{vertical-align:2px;margin-left:10px;font-weight:650}.summary-text{white-space:pre-wrap;margin:0;padding:24px 30px 0}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:24px 30px;display:grid}.detail-grid dt{color:var(--muted);font-size:12px}.detail-grid dd{margin:5px 0 0;font-weight:600}.reason{color:var(--muted);margin:0;padding:0 30px 24px;font-size:14px}.info-panel>.actions{padding:24px 30px}.detail-cell{overflow-wrap:anywhere;max-width:420px;font-size:12px}.inline-form{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:14px;padding:24px 30px;display:flex}.inline-form .field{min-width:240px}.inline-form .field span{font-size:13px;font-weight:650}.match-panel{border:1px solid var(--warning);border-radius:var(--radius);background:#fdf6e8;padding:17px}.match-title{color:#7d5010;margin:0 0 11px;font-size:13px;font-weight:650}.match-list li{border-top:1px solid #eddfc4;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 12px;padding:9px 0;display:grid}.match-list li:first-child{border-top:0}.match-list .subtle{grid-column:2}.match-pick{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:99px;grid-row:span 2;min-height:36px;padding:7px 13px;font-size:12px}.match-pick:hover{background:#e7e7e2}.link-button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}input:disabled,select:disabled,textarea:disabled{color:var(--muted);background:var(--soft-panel)}@media (max-width:860px){.detail-grid,.form-grid,.company-list{grid-template-columns:1fr}}.status-relinquish_requested{color:#815512;background:#faf0d9}.action-dialog{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);width:min(100%,520px);color:var(--ink);padding:0}.action-dialog::backdrop{background:#11111173}.action-dialog form{gap:15px;padding:27px;display:grid}.action-dialog h2{letter-spacing:-.03em;margin:0;font-size:20px;font-weight:630}.action-dialog p{color:var(--muted);margin:0;font-size:14px}.dialog-actions{justify-content:end;gap:10px;margin-top:4px;display:flex}.button.destructive{color:#fff;background:var(--danger);border-color:var(--danger)}.button.destructive:hover{background:#92302b}.pager{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.file-kind-list{gap:8px;margin:4px 0 0;padding:0;list-style:none;display:grid}.file-kind-list li{border:1px solid var(--line);background:var(--soft-panel);border-radius:9px;align-items:center;gap:12px;padding:9px 12px;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.file-kind-list select{min-width:150px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skeleton{background:linear-gradient(90deg,#e6e6e1 25%,#efefeb 37%,#e6e6e1 63%) 0 0/400% 100%;border-radius:6px;margin:10px 0;animation:1.4s infinite skeleton-sweep;display:block}.topbar .skeleton{background:linear-gradient(90deg,#2a2a28 25%,#3a3a37 37%,#2a2a28 63%) 0 0/400% 100%}@keyframes skeleton-sweep{0%{background-position:100%}to{background-position:0}}.skeleton-panel{padding:0}.skeleton-panel-head{border-bottom:1px solid var(--line);padding:24px 30px}.skeleton-panel-body{padding:22px 30px 26px}.skeleton-panel+.skeleton-panel{margin-top:22px}.skeleton-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px;display:grid}.skeleton-form>div:first-child,.skeleton-form>div:nth-child(4){grid-column:1/-1}.error-body{gap:14px;padding:24px 30px;display:grid}.error-body code{background:var(--soft-panel);border-radius:5px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}@media (max-width:860px){.skeleton-form{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.skeleton{background:#e6e6e1;animation:none}.topbar .skeleton{background:#2a2a28}.button,.action-button{transition:none}.button:hover,.action-button:hover{transform:none}}.filter-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:15px;padding:17px 20px;display:flex}.filter-bar .field{gap:6px;min-width:190px}.filter-bar .field span{color:var(--muted);font-size:12px;font-weight:650}.filter-bar .field input,.filter-bar .field select{min-height:40px;padding:8px 11px}.checkbox-field{flex-direction:row;align-items:center;gap:9px;min-width:0;display:flex}.checkbox-field input[type=checkbox]{width:18px;height:18px;accent-color:var(--obsidian);margin:0}.checkbox-field span{color:var(--ink);font-size:13px;font-weight:500}.filter-actions{gap:9px;margin-left:auto;display:flex}.import-form{gap:15px;padding:24px 30px;display:grid}.import-form textarea{min-height:190px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.import-form code{background:var(--soft-panel);border-radius:4px;padding:1px 5px;font-size:11.5px}.import-result{border-bottom:1px solid var(--line);background:#f6f9f6;padding:20px 30px}.import-result p{margin:0}.skip-list{color:var(--muted);margin:11px 0 0;padding-left:20px;font-size:13px}.skip-list li{margin:4px 0}@media (max-width:860px){.filter-bar .field{min-width:100%}.filter-actions{margin-left:0}}.report-actions{flex-wrap:wrap;gap:10px;margin:0 0 22px;display:flex}.report-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px;padding:26px 30px;display:grid}.report-grid h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 13px;font-size:13px;font-weight:700}.bar-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.bar-list li{grid-template-columns:minmax(0,1fr) 90px 34px;align-items:center;gap:11px;display:grid}.bar-list li.empty{text-align:left;padding:18px 0;display:block}.bar-label{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.bar-track{background:var(--soft-panel);border-radius:99px;height:8px}.bar-fill{background:var(--obsidian);border-radius:99px;height:100%;display:block}.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.bucket-row{background:var(--line);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;display:grid}.bucket{background:var(--panel);padding:22px 26px}.bucket-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:630;line-height:1.15}.bucket-label{color:var(--muted);margin-top:5px;font-size:12px}.spark{align-items:flex-end;gap:3px;height:92px;padding:24px 30px 0;display:flex}.spark-bar{background:var(--graphite);border-radius:2px 2px 0 0;flex:1;min-width:3px}@media (max-width:860px){.report-grid{padding:22px}.bar-list li{grid-template-columns:minmax(0,1fr) 60px 30px}}.inbox-link{color:#fff;align-items:center;gap:7px;display:inline-flex;position:relative}.inbox-badge{color:#fff;font-variant-numeric:tabular-nums;background:#d8534a;border-radius:99px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-grid}.inbox-list{margin:0;padding:0;list-style:none}.inbox-list>li{border-bottom:1px solid #e8e8e4}.inbox-list>li:last-child{border-bottom:0}.inbox-list>li.unread{box-shadow:inset 3px 0 0 var(--obsidian);background:#f7f9fb}.inbox-item{gap:5px;padding:18px 24px;display:grid}a.inbox-item:hover{background:#f0f0ec}.inbox-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.inbox-title{font-weight:620}.inbox-event{background:var(--soft-panel);color:var(--muted);border-radius:99px;padding:2px 8px;font-size:11px;font-weight:650}.inbox-time{color:var(--quiet);font-size:12px}.evidence-preview{margin-top:11px;display:block}.evidence-preview img{border:1px solid var(--line);object-fit:contain;background:var(--soft-panel);border-radius:9px;max-width:min(420px,100%);max-height:300px}.evidence-preview-toggle{margin-top:10px}.evidence-preview-toggle summary{color:var(--muted);cursor:pointer;font-size:13px;display:inline-block}.evidence-preview-toggle summary:hover{color:var(--ink)}.evidence-preview-toggle iframe{border:1px solid var(--line);background:var(--panel);border-radius:9px;width:100%;height:520px;margin-top:11px}.comment-list{margin:0;padding:0;list-style:none}.comment-list li{border-bottom:1px solid var(--line);padding:17px 30px}.comment-head{align-items:baseline;gap:11px;display:flex}.comment-body{white-space:pre-wrap;margin:5px 0 0}.comment-form{gap:12px;padding:22px 30px;display:grid}.comment-form textarea{min-height:86px}.comment-form-footer{align-items:center;gap:12px;display:flex}@media (max-width:720px){.evidence-preview-toggle iframe{height:380px}}.company-id{background:var(--soft-panel);-webkit-user-select:all;user-select:all;border-radius:4px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
