:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;background:#f5f5f7;color:#1d1d1f;--ink: #1d1d1f;--muted: #6e6e73;--line: rgba(0, 0, 0, .09);--soft: #f5f5f7;--panel: #ffffff;--deep-blue: #0058b7;--ocean-blue: #007aff;--cyan: #4fbdc6;--gold-orange: #fbb706;--warm-orange: #f47021;--brand-gradient: linear-gradient(105deg, #0058b7 0%, #007aff 36%, #4fbdc6 62%, #fbb706 84%, #f47021 100%);--green: #248a3d;--green-2: #eef8f0;--blue: #007aff;--blue-2: #eef5ff;--amber: #b77900;--amber-2: #fff7df;--rose: #c94b2a;--rose-2: #fff2ed;--surface-blur: rgba(255, 255, 255, .78);--radius: 8px;--radius-sm: 8px;--shadow: 0 18px 42px rgba(0, 0, 0, .075);--shadow-soft: 0 8px 24px rgba(0, 0, 0, .055);--ease: cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}body{margin:0;background:#f5f5f7;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}::selection{background:#007aff2e}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.58}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select,textarea,.panel,.metric,.data-table tr,.nav-button,.global-search-results,.detail-panel,.match-card,.match-source-card,.status-filter-card{transition:background-color .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease),color .18s var(--ease),opacity .18s var(--ease),transform .18s var(--ease)}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid rgba(0,122,255,.18);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{display:grid;grid-template-columns:198px minmax(0,1fr);min-height:100vh}.login-page{position:relative;display:grid;place-items:center;min-height:100vh;padding:24px;overflow:hidden;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.22),transparent 34%),linear-gradient(145deg,#0f305f,#0058b7 43%,#58c6d0 82%,#f8b400 140%)}.login-page:before{content:"";position:absolute;inset:0;background:linear-gradient(167deg,transparent 0 60%,rgba(255,255,255,.16) 60% 61%,transparent 61%),linear-gradient(12deg,transparent 0 70%,rgba(251,183,6,.18) 70% 71%,transparent 71%);pointer-events:none}.login-card{position:relative;z-index:1;overflow:hidden;width:min(440px,100%);padding:28px;border:1px solid rgba(255,255,255,.78);border-radius:var(--radius);background:#ffffffe0;box-shadow:0 34px 90px #001f4847;-webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%);animation:card-enter .42s var(--ease) both}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--brand-gradient)}.beian-footer{display:flex;justify-content:center;gap:10px;margin-top:22px;color:#6c7d92;font-size:12px;line-height:1.6;text-align:center}.beian-footer a{color:inherit;text-decoration:none}.beian-footer a:hover{color:var(--deep-blue);text-decoration:underline}.login-page .beian-footer{position:absolute;left:24px;right:24px;bottom:16px;z-index:1;margin-top:0;color:#ffffffd1}.login-page .beian-footer a:hover{color:#fff}.login-title{margin-bottom:18px}.login-title h2{margin:4px 0 0;font-size:24px;letter-spacing:0}.login-card .field{margin-bottom:12px}.public-form-page{min-height:100vh;padding:28px;background:linear-gradient(145deg,#00479914,#0099cc0a 42%,#fbb70614),#f5fafc}.public-form-shell{display:grid;gap:16px;width:min(980px,100%);margin:0 auto}.public-form-shell .brand-login{justify-content:center}.public-form-hero{padding:18px 0 4px;text-align:center}.public-form-hero h1{margin:4px 0 8px;font-size:clamp(24px,4vw,38px);letter-spacing:0}.public-form-hero span{color:var(--muted);font-weight:700}.public-form-card,.public-match-section{padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.public-submit-button{width:100%;margin-top:12px;min-height:42px}.public-match-grid{display:grid;gap:12px}.public-match-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffdb}.public-match-card h4{margin:0 0 4px;font-size:16px}.public-match-card p{margin:8px 0;color:#4d627a;line-height:1.55}.login-button{width:100%;margin-top:4px}.login-hint{margin:14px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.sidebar{position:sticky;top:0;height:100vh;padding:14px 10px;overflow:hidden;background:linear-gradient(180deg,#ffffffd1,#f5f7fbe6),#f5f5f7;color:var(--ink);border-right:1px solid rgba(0,0,0,.07);box-shadow:8px 0 30px #00000009;-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}.sidebar:after{content:none;position:absolute;left:-42px;right:-26px;bottom:0;height:92px;background:linear-gradient(105deg,transparent 0 24%,rgba(79,189,198,.28) 24% 58%,rgba(251,183,6,.42) 58% 72%,rgba(244,112,33,.48) 72% 100%);transform:skewY(-8deg);pointer-events:none}.brand{position:relative;z-index:1;display:grid;gap:8px;padding:6px 6px 16px}.brand-logo-frame{overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-soft)}.brand-logo-frame img{display:block;width:100%;height:100%;object-fit:contain}.brand-sidebar .brand-logo-frame{width:152px;height:68px;padding:7px}.brand-login{padding:0 0 22px}.brand-login .brand-logo-frame{width:238px;height:108px;padding:10px;box-shadow:0 10px 24px #0047991a}.brand h1{margin:0;color:inherit;font-size:16px;letter-spacing:0}.brand-login h1{color:var(--ink)}nav{position:relative;z-index:1;display:grid;gap:5px;padding:3px}.sidebar-user{position:absolute;left:12px;right:12px;bottom:16px;display:grid;gap:4px;padding:12px;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);background:#ffffffbd;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}.sidebar-user span{font-size:13px}.sidebar-user strong{color:var(--deep-blue);font-size:12px}.nav-button{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:0 10px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:#5f6978;text-align:left;font-weight:700}.nav-button:hover,.nav-button.active{background:#007aff17;border-color:#007aff21;color:var(--deep-blue)}.nav-button:hover{transform:translateY(-1px)}.nav-button.active{box-shadow:inset 3px 0 0 var(--ocean-blue)}.workspace{position:relative;min-width:0;padding:22px 24px 36px;background:radial-gradient(circle at 16% 0%,rgba(0,122,255,.07),transparent 24%),radial-gradient(circle at 82% 8%,rgba(79,189,198,.08),transparent 22%),#f5f5f7;animation:page-enter .26s var(--ease) both}.topbar{position:relative;z-index:100000;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px;margin-bottom:18px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:var(--surface-blur);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);overflow:visible}.topbar-title{flex:0 0 210px}.topbar h2{margin:2px 0 0;font-size:24px;letter-spacing:0}.global-search{position:relative;z-index:100001;flex:1 1 420px;max-width:560px;margin-right:auto}.global-search-field{display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;border:1px solid rgba(0,0,0,.07);border-radius:999px;background:#ffffffd1;box-shadow:inset 0 1px #ffffffa6}.global-search-field:focus-within{border-color:#007aff59;box-shadow:0 0 0 4px #007aff1f}.global-search-field svg{color:var(--ocean-blue)}.global-search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink)}.global-search-results{position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:100002;overflow:hidden;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);background:#fffffff5;box-shadow:0 24px 62px #00000029;-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);animation:menu-pop .16s var(--ease) both}.global-search-result{display:grid;width:100%;gap:4px;padding:11px 12px;border:0;border-bottom:1px solid rgba(0,0,0,.06);background:#fffffff5;color:var(--ink);text-align:left}.global-search-result:last-child{border-bottom:0}.global-search-result:hover{background:#007aff12}.global-search-result span{color:var(--ocean-blue);font-size:12px;font-weight:800}.global-search-result strong{font-size:14px}.global-search-result small,.global-search-empty{color:var(--muted);font-size:12px;line-height:1.5}.global-search-empty{padding:13px 12px}.top-actions,.button-group,.toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sync-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;border-radius:999px;border:1px solid rgba(0,0,0,.075);background:#ffffffb8;color:#52687f;font-size:12px;font-weight:800}.sync-pill.server{border-color:#b9dfcd;background:#edf9f2;color:#166534}.sync-pill.local{border-color:#f1d0ad;background:#fff8ed;color:#9a4c05}.eyebrow{margin:0;color:#65758a;font-size:12px;font-weight:700;letter-spacing:0}.page-stack{display:grid;gap:16px}.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.dashboard-project-strip{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:16px;align-items:end;padding:16px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd6;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}.dashboard-project-strip h3{margin:3px 0 0;font-size:20px}.project-select-field{width:100%;max-width:360px;justify-self:start}.project-view-summary{justify-self:end;text-align:right}.metric{position:relative;overflow:hidden;display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;gap:8px 10px;min-height:92px;padding:16px;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);background:#ffffffe0;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%)}.metric:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--brand-gradient);opacity:.9}.metric:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.metric svg{grid-row:span 2;align-self:start;margin-top:2px}.metric span{color:var(--muted);font-size:13px}.metric strong{font-size:25px;line-height:1.15;letter-spacing:0;min-width:0;max-width:100%;overflow-wrap:anywhere}.metric strong.compact-value{font-size:21px}.metric-green svg,.metric-green strong{color:var(--ocean-blue)}.metric-blue svg,.metric-blue strong{color:var(--deep-blue)}.metric-amber svg,.metric-amber strong{color:var(--gold-orange)}.metric-rose svg,.metric-rose strong{color:var(--warm-orange)}.metric-ink svg,.metric-ink strong{color:var(--ink)}.performance-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.performance-card{display:grid;gap:5px;min-width:0;min-height:88px;padding:12px;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius-sm);background:#ffffffc2;box-shadow:0 6px 18px #0000000b}.performance-card.accent{border-color:#007aff33;background:#007aff12}.performance-card.muted{background:#ffffff9e}.performance-card span,.performance-card small{min-width:0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.performance-card strong{min-width:0;color:var(--ink);font-size:20px;line-height:1.1;overflow-wrap:anywhere}.main-venue-summary,.main-venue-kpis{display:grid;gap:10px}.main-venue-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.main-venue-summary>div,.main-venue-kpis>div{display:grid;gap:5px;min-width:0;min-height:74px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.main-venue-summary>div span,.main-venue-kpis span{min-width:0;color:var(--muted);font-size:12px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.main-venue-summary>div strong,.main-venue-kpis strong{min-width:0;color:var(--deep-blue);font-size:20px;line-height:1.12;overflow-wrap:anywhere}.main-venue-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.fee-table-wrap{display:grid;gap:10px;margin-bottom:16px;min-width:0;overflow:auto;-webkit-overflow-scrolling:touch}.fee-table{min-width:920px}.add-inline-button{justify-self:start}.attachment-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.attachment-list{display:grid;gap:10px}.attachment-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:10px;align-items:end;padding:10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.todo-list,.warning-list,.import-log-preview{display:grid;gap:10px}.operation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.operation-card{display:grid;gap:6px;min-height:112px;padding:13px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1;color:var(--ink);text-align:left}.operation-card:hover{border-color:#007aff38;background:#007aff12;transform:translateY(-1px)}.operation-card svg{color:var(--ocean-blue)}.operation-card span{color:var(--muted);font-size:12px;font-weight:800}.operation-card strong{color:#18345a;font-size:22px;line-height:1.1}.operation-card small{color:var(--muted);font-size:12px;line-height:1.45}.todo-item,.warning-item,.import-log-row{display:grid;gap:5px;padding:11px 12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.todo-item{grid-template-columns:auto minmax(0,1fr);align-items:start}.todo-item strong,.warning-item strong,.import-log-row strong{color:#18345a;font-size:13px}.todo-item small,.import-log-row small{color:var(--muted);font-size:12px}.todo-item p{margin:5px 0 0;color:#29405e;line-height:1.5}.todo-danger{border-color:#f0b8a0;background:#fff5ef}.todo-warning{border-color:#efd27a;background:#fff9df}.warning-item span{color:#29405e;font-size:13px;line-height:1.5}.warning-danger{border-color:#f0b8a0;background:#fff5ef}.warning-warning{border-color:#efd27a;background:#fff9df}.content-band,.panel{border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0;box-shadow:var(--shadow)}.content-band{padding:0}.two-columns{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;border:0;background:transparent;box-shadow:none}.panel{min-width:0;padding:16px;background:linear-gradient(180deg,#ffffffeb,#fff 52%),#fff;-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%)}.page-stack>.panel,.module-layout>.panel{animation:panel-rise .24s var(--ease) both}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head h3{margin:3px 0 0;font-size:17px;color:var(--ink);letter-spacing:0}.primary-button,.ghost-button,.danger-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border-radius:var(--radius);border:1px solid transparent;padding:0 12px;white-space:nowrap;font-weight:800}.primary-button{border-color:transparent;background:linear-gradient(105deg,#0066d6,#007aff);color:#fff;box-shadow:0 8px 18px #007aff2e}.primary-button:hover{background:linear-gradient(105deg,#005fc8,#0072ed);transform:translateY(-1px)}.ghost-button{background:#ffffffc7;border-color:#00000017;color:#1d4d86}.ghost-button:hover{background:#007aff14;border-color:#007aff2e;transform:translateY(-1px)}.danger-button{background:#ff3b3014;border-color:#ff3b302b;color:#b42318}.danger-button:hover{background:#ff3b301f;transform:translateY(-1px)}.icon-button{width:34px;padding:0;background:#ffffffc7;border-color:#00000017;color:var(--ocean-blue)}.icon-button:hover{background:#007aff14;transform:translateY(-1px)}.workflow-list{display:grid;gap:10px}.workflow-list button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1;color:#18345a;text-align:left}.workflow-list button:hover{border-color:#007aff38;background:#007aff12;transform:translateY(-1px)}.workflow-list button svg{color:var(--ocean-blue)}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.capability-grid.single{grid-template-columns:1fr}.capability{display:grid;gap:7px;min-height:112px;padding:13px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.capability svg{color:var(--deep-blue)}.capability strong{font-size:14px}.capability span{color:var(--muted);font-size:13px;line-height:1.55}.module-layout{display:grid;grid-template-columns:minmax(460px,.95fr) minmax(0,1.45fr);gap:16px;align-items:start}.module-layout.single-column{grid-template-columns:minmax(0,1fr)}.list-panel,.detail-panel{min-height:calc(100vh - 126px)}.detail-panel{animation:detail-slide .26s var(--ease) both}.enterprise-research-panel{display:grid;gap:12px;margin-bottom:14px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.enterprise-research-link{border-color:#00000013;border-radius:var(--radius);background:#ffffffe0}.enterprise-research-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.enterprise-research-head span,.enterprise-research-link small{display:block;color:#65758a;font-size:12px;line-height:1.35}.enterprise-research-head strong{display:block;margin-top:2px;color:#18345a;font-size:15px;line-height:1.35}.enterprise-research-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.enterprise-research-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.enterprise-research-link{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:56px;padding:9px 10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0;color:#17365f;text-align:left}.enterprise-research-link:hover{border-color:#007aff38;background:#007aff12;transform:translateY(-1px)}.enterprise-research-link strong{display:block;margin-bottom:3px;color:#17365f;font-size:13px}.enterprise-research-link svg{flex:0 0 auto;color:var(--ocean-blue)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.advanced-search{display:grid;gap:10px;margin-bottom:12px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7;box-shadow:inset 0 1px #ffffffd1;-webkit-backdrop-filter:blur(12px) saturate(150%);backdrop-filter:blur(12px) saturate(150%)}.enterprise-layer-controls{display:grid;gap:10px;margin-bottom:12px}.segmented-control{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#00000009}.segmented-control button{min-height:34px;border:1px solid transparent;border-radius:7px;background:transparent;color:#385270;font-weight:800}.segmented-control button.active{border-color:#007aff21;background:#fff;color:var(--deep-blue);box-shadow:0 6px 14px #0000000f}.status-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.status-filter-card,.library-summary{min-height:72px;padding:11px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc2}.status-filter-card{display:grid;gap:5px;text-align:left}.status-filter-card.active{border-color:#007aff3d;background:linear-gradient(135deg,#007aff14,#fbb7061a),#fff;box-shadow:var(--shadow-soft)}.status-filter-card span,.library-summary span,.library-summary small{color:#65758a;font-size:12px;font-weight:800}.status-filter-card strong,.library-summary strong{color:var(--deep-blue);font-size:25px}.library-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.9fr);gap:12px;align-items:center}.library-summary>div{display:grid;gap:5px}.library-summary small{font-weight:700}.library-filter{display:grid;gap:6px}.library-filter span{color:#65758a;font-size:12px;font-weight:800}.library-filter select{width:100%;height:36px;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:0 9px;background:#fff;color:var(--ink)}.advanced-search-head,.advanced-search-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.advanced-search-foot{color:var(--muted);font-size:12px}.condition-list{display:grid;gap:8px}.condition-row{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(160px,1.5fr) 34px auto;gap:8px;align-items:center}.condition-row select,.condition-row input{width:100%;height:34px;min-width:0;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:0 9px;background:#fff;color:var(--ink)}.condition-remove{height:34px}.search-box{display:flex;align-items:center;gap:8px;flex:1;min-width:220px;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffd6}.search-box input{width:100%;border:0;outline:0;background:transparent}.bulk-assignment-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) auto auto;gap:8px;align-items:center;padding:10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7}.bulk-assignment-bar strong{display:block;min-width:0;color:var(--ink);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.bulk-assignment-bar span{display:block;min-width:0;color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.bulk-assignment-bar select{width:100%;height:34px;min-width:0;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:0 9px;background:#fff;color:var(--ink)}.list-panel .bulk-assignment-bar{grid-template-columns:minmax(0,1fr) minmax(150px,1fr)}.list-panel .bulk-assignment-bar .primary-button,.list-panel .bulk-assignment-bar .ghost-button{width:100%}.filter-title{display:flex;align-items:center;gap:7px;color:#18345a;font-size:13px;font-weight:800}.filter-title svg{color:var(--ocean-blue)}.filter-title strong{margin-left:auto;color:var(--muted);font-size:12px;font-weight:700}.hidden-input{display:none}.data-table-wrap{overflow:auto;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);max-height:calc(100vh - 224px);background:#ffffffd1;box-shadow:var(--shadow-soft)}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.data-table th,.data-table td{min-height:42px;padding:10px 11px;border-bottom:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:middle}.data-table .select-column{width:42px;min-width:42px;padding:10px 8px;text-align:center}.data-table .select-column input{width:16px;min-width:16px;height:16px;margin:0;accent-color:var(--deep-blue)}.data-table th{position:sticky;top:0;z-index:1;background:#f7f7f9f5;color:#6e6e73;font-size:12px;font-weight:700}.data-table tr{background:#ffffffeb}.data-table tbody tr:hover,.data-table tbody tr.selected{background:#007aff11}.data-table input,.data-table select{width:100%;min-width:100px;height:30px;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius-sm);padding:0 8px;background:#fff}.pill{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#eaf7fb;color:#065f8b;font-size:12px}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.field-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:6px}.field.full{grid-column:1 / -1}.field span{color:#65758a;font-size:12px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:0 10px;background:#fff;color:var(--ink)}.field input,.field select{height:36px}.field textarea{min-height:62px;padding:9px 10px;resize:vertical;line-height:1.5}.detail-panel .field input:disabled,.detail-panel .field select:disabled,.detail-panel .field textarea:disabled{cursor:default;opacity:1;background:#00000009;color:#3a3a3c}.section-title{margin:20px 0 10px;padding-top:14px;border-top:1px solid rgba(0,0,0,.07);color:#18345a;font-weight:800}.submission-trace-box{margin-top:6px}.submission-trace-box textarea{min-height:52px;white-space:normal}.hint-text{margin:8px 0 0;color:#6e6e73;font-size:12px;line-height:1.6}.product-list{display:grid;gap:12px}.section-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;width:100%;min-height:42px;margin:18px 0 10px;padding:0 12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1;color:#18345a;text-align:left}.section-toggle span{font-weight:900}.section-toggle strong{color:var(--deep-blue)}.section-toggle small{color:var(--muted);font-weight:800}.product-editor{padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.follow-records{display:grid;gap:12px}.follow-records-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.follow-records-title small{color:var(--muted);font-size:12px;font-weight:700}.follow-add-box{display:grid;grid-template-columns:minmax(132px,.65fr) minmax(0,1.2fr) minmax(0,1fr) minmax(145px,.75fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7}.follow-timeline{display:grid;gap:10px}.follow-record{display:grid;gap:7px;padding:11px 12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0}.follow-record-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.follow-record-head strong{color:#18345a;font-size:13px}.follow-record-head small,.follow-next{color:#65758a;font-size:12px}.todo-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#edf8fb;color:#065f8b;font-size:12px;font-weight:800}.todo-badge.todo-danger{background:#fff0e8;color:#b74816}.todo-badge.todo-warning{background:#fff4cf;color:#956100}.todo-badge.done{background:#eaf7ee;color:#166534}.follow-complete-button{justify-self:start;min-height:30px}.follow-record p{margin:0;color:#29405e;line-height:1.6}.ocr-import-box{display:grid;gap:12px;margin:12px 0;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7}.ocr-progress{display:flex;align-items:center;gap:8px;color:var(--ocean-blue);font-size:13px;font-weight:700}.ocr-progress svg{animation:spin 1.1s linear infinite}.ocr-import-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ocr-import-head h4{margin:3px 0 0;font-size:15px}.ocr-raw-text{width:100%;min-height:82px;resize:vertical;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:10px;background:#fff;color:#435048;font:inherit;font-size:12px;line-height:1.6}.ocr-row-list{display:grid;gap:10px}.ocr-row-editor{padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffdb}.ocr-row-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes page-enter{0%{opacity:0}to{opacity:1}}@keyframes card-enter{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes panel-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes detail-slide{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes menu-pop{0%{opacity:0;transform:translateY(-4px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.empty-text,.helper-line{color:var(--muted);line-height:1.7}.form-error,.form-success{margin:10px 0;padding:9px 10px;border-radius:var(--radius);font-size:13px;line-height:1.5}.form-error{border:1px solid #f3c1a9;background:#fff3ec;color:#b74816}.form-success{border:1px solid #a9dce8;background:#eefafe;color:#006e98}.buyer-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.buyer-summary span,.tag-row span{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border:1px solid rgba(0,122,255,.13);border-radius:999px;background:#007aff12;color:#385270;font-size:12px}.matching-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;align-items:start}.match-source-panel{position:sticky;top:94px;display:grid;gap:10px;max-height:calc(100vh - 148px);padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7;box-shadow:var(--shadow-soft)}.match-source-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.match-source-head strong{color:var(--ink);font-size:15px}.match-source-head span{color:var(--muted);font-size:12px;font-weight:800}.match-source-list{display:grid;gap:8px;overflow:auto;padding-right:2px}.match-source-card{display:grid;gap:4px;width:100%;padding:10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0;color:var(--ink);text-align:left}.match-source-card:hover,.match-source-card.selected{border-color:#007aff3d;background:#007aff12;transform:translateY(-1px)}.match-source-card strong{font-size:13px;line-height:1.35}.match-source-card small,.match-source-card span{color:var(--muted);font-size:12px;line-height:1.45}.match-result-panel{min-width:0}.match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.match-card{display:grid;grid-template-columns:74px minmax(0,1fr) 128px;gap:12px;align-items:center;min-height:138px;padding:14px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0;box-shadow:var(--shadow-soft)}.match-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px #00000017}.match-score{display:grid;align-content:center;place-items:center;gap:2px;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#e6f7fb,#fff2cc);color:var(--deep-blue)}.match-score strong{font-size:17px;font-weight:900;line-height:1}.match-score small{color:#5d738a;font-size:10px;font-weight:800;line-height:1}.match-main{min-width:0}.match-year{display:inline-flex;align-items:center;min-height:22px;margin-bottom:6px;padding:0 7px;border:1px solid rgba(0,122,255,.13);border-radius:999px;background:#007aff12;color:#385270;font-size:12px;font-weight:800}.match-main h4{margin:0 0 3px;font-size:15px}.match-main strong{display:block;margin-bottom:6px;color:var(--ocean-blue)}.match-main p{margin:0 0 8px;color:var(--muted);font-size:13px;line-height:1.55}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.match-actions{display:grid;gap:8px}.match-actions .primary-button{width:100%;justify-content:center}.feedback-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.feedback-button{min-height:28px;padding:0 7px;border:1px solid rgba(0,0,0,.09);border-radius:var(--radius);background:#fff;color:#385270;font-size:12px;font-weight:800}.feedback-button:hover,.feedback-button.active{border-color:#007aff42;background:#007aff14;color:var(--deep-blue)}.match-list.compact{display:grid;gap:8px}.match-row{display:grid;grid-template-columns:1fr 58px;gap:10px;align-items:center;min-height:52px;padding:10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffdb}.match-row strong,.match-row span{display:block}.match-row span{margin-top:3px;color:var(--muted);font-size:12px}.match-row b{color:var(--ocean-blue);text-align:right}.booth-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.booth-canvas-panel,.booth-side-panel{min-height:calc(100vh - 126px)}.booth-toolbox{display:grid;grid-template-columns:minmax(120px,1fr) 96px 96px auto auto;gap:8px;align-items:end;margin:10px 0 12px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7}.booth-link-card{display:grid;gap:5px;margin-bottom:12px;padding:12px;border:1px solid rgba(0,122,255,.13);border-radius:var(--radius);background:linear-gradient(135deg,#007aff14,#fbb7061a)}.booth-link-card span,.booth-link-card small{color:#65758a;font-size:12px;font-weight:800}.booth-link-card strong{color:var(--deep-blue);font-size:20px}.booth-canvas-wrap{overflow:hidden;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-soft)}.booth-svg{display:block;width:100%;height:calc(100vh - 240px);min-height:520px;-webkit-user-select:none;user-select:none}.booth-shape{cursor:move}.booth-shape text{pointer-events:none;fill:#1f2a23;font-size:13px;font-weight:800}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.coordinate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.tag-dictionary{display:grid;gap:12px}.tag-field{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.tag-field strong{font-size:14px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.association-fields{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px;margin-bottom:14px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffc7}.association-fields.single{grid-template-columns:1fr}.countdown-badge{display:grid;gap:3px;min-width:88px;padding:9px 12px;border:1px solid rgba(0,122,255,.13);border-radius:var(--radius);background:linear-gradient(135deg,#007aff14,#fbb7061a);text-align:center}.countdown-badge span{color:#65758a;font-size:12px;font-weight:800}.countdown-badge strong{color:var(--deep-blue);font-size:18px}.account-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.account-summary div{display:grid;gap:5px;min-height:72px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.account-summary span{color:var(--muted);font-size:12px;font-weight:700}.account-summary strong{font-size:15px}.add-user-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:10px;align-items:end;margin-bottom:12px}.add-user-button{height:36px}.account-table-wrap{max-height:420px}.custom-role-editor{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr) minmax(170px,.55fr) auto;gap:10px;align-items:end;margin:0 0 12px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.custom-role-editor>div:first-child{align-self:center}.custom-role-editor strong{display:block;margin-bottom:3px;color:var(--ink)}.custom-role-editor small{color:var(--muted)}.custom-role-tags{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px}.custom-role-tags span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid rgba(0,0,0,.075);border-radius:999px;background:#fff;color:#1c3857;font-size:12px;font-weight:800}.custom-role-tags small{font-weight:700}.permission-editor{display:grid;gap:10px;margin:0 0 12px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.permission-editor strong{display:block;margin-bottom:3px;color:var(--ink)}.permission-editor small{color:var(--muted)}.permission-check-grid{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.permission-check-grid.compact{min-width:0;max-width:430px}.permission-check{display:inline-flex;align-items:center;gap:5px;width:auto;min-height:20px;padding:2px 3px;border:0;border-radius:5px;background:transparent;color:#30455f;font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}.permission-check input{flex:0 0 auto;width:16px;height:16px;margin:0;accent-color:var(--deep-blue)}.permission-check span{writing-mode:horizontal-tb;white-space:nowrap}.account-permissions-cell{min-width:260px;max-width:460px}.import-action-panel{display:grid;grid-template-columns:minmax(180px,240px) auto;gap:10px;align-items:end;margin:12px 0;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.online-form-panel{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px;align-items:center;margin:12px 0;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.online-form-main{display:grid;gap:10px}.configurable-form-panel{align-items:start}.public-field-picker{display:flex;flex-wrap:wrap;gap:6px}.public-field-picker label{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 8px;border:1px solid rgba(0,0,0,.075);border-radius:999px;background:#fff;color:#30455f;font-size:12px;font-weight:800}.public-field-picker input{width:14px;height:14px;accent-color:var(--deep-blue)}.online-form-main h4{margin:2px 0;font-size:16px}.online-form-main small{color:var(--muted)}.online-form-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.online-form-link input{min-width:0;height:34px;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:0 10px;color:#30455f}.online-form-qr{display:grid;place-items:center}.online-form-qr img{width:96px;height:96px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#fff}.contract-settings-panel{display:grid;gap:12px;margin-top:18px;padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.panel-head.compact{margin-bottom:0}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.contract-template-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffe0}.contract-template-summary span,.contract-template-summary small{display:block;color:var(--muted);font-size:12px;font-weight:700}.contract-template-summary strong{display:block;margin:3px 0;color:var(--ink)}.contract-mapping-list{display:grid;gap:8px}.contract-mapping-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end}.inline-reset{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:7px;align-items:center}.sms-template-list{display:grid;gap:10px}.sms-template{padding:12px;border:1px solid rgba(0,0,0,.075);border-radius:var(--radius);background:#ffffffd1}.sms-template p{margin:6px 0 0;color:var(--muted);line-height:1.6}@media(max-width:1320px){.metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.matching-workspace{grid-template-columns:260px minmax(0,1fr)}.field-grid,.field-grid.compact,.match-grid,.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){body{overflow-x:hidden}.app-shell{display:block;min-height:100vh}.sidebar{position:sticky;top:0;z-index:10;height:auto;padding:10px 12px 12px;border-right:0;border-bottom:1px solid #18221b}.brand{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:4px 4px 10px}.brand-sidebar .brand-logo-frame{width:82px;height:38px;padding:4px}.brand h1{font-size:15px;line-height:1.25}.sidebar-user{display:none}nav{display:flex;gap:8px;padding:2px 0 0;overflow-x:auto;-webkit-overflow-scrolling:touch}.nav-button{flex:0 0 auto;width:auto;min-height:36px;padding:0 10px;font-size:13px}.workspace{padding:14px 12px 28px}.topbar{display:grid;gap:12px}.topbar-title,.global-search{width:100%;max-width:none}.topbar h2{font-size:21px}.top-actions,.toolbar-actions{width:100%;justify-content:flex-start}.top-actions .primary-button,.top-actions .ghost-button{flex:1 1 150px}.metrics-grid,.two-columns,.module-layout,.match-grid,.booth-layout,.settings-grid,.account-summary,.association-fields,.main-venue-summary,.main-venue-kpis,.attachment-row,.status-filter-grid,.enterprise-research-grid,.add-user-row,.custom-role-editor,.import-action-panel,.online-form-panel,.contract-template-summary,.contract-mapping-row,.tag-field,.dashboard-project-strip,.operation-grid,.capability-grid{grid-template-columns:1fr}.project-view-summary{justify-self:start;text-align:left}.enterprise-research-head{align-items:flex-start;flex-direction:column}.enterprise-research-actions{width:100%}.enterprise-research-actions .ghost-button{flex:1 1 auto}.library-summary{grid-template-columns:1fr}.panel{padding:14px}.panel-head{align-items:flex-start;flex-direction:column}.panel-head .button-group{width:100%}.panel-head .button-group .primary-button,.panel-head .button-group .ghost-button{flex:1 1 140px}.ocr-import-head{display:grid}.list-panel,.detail-panel,.booth-canvas-panel,.booth-side-panel{min-height:0}.toolbar,.advanced-search-head,.advanced-search-foot{display:grid}.condition-row{grid-template-columns:1fr 1fr}.condition-row input{grid-column:1 / -1}.search-box{min-width:0}.filter-title{align-items:flex-start;flex-wrap:wrap}.filter-title strong{width:100%;margin-left:23px}.data-table-wrap{max-height:58vh;overflow:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:760px}.field-grid,.field-grid.compact,.follow-add-box,.bulk-assignment-bar,.matching-workspace{grid-template-columns:1fr}.match-source-panel{position:relative;top:auto;max-height:none}.match-card{grid-template-columns:58px minmax(0,1fr)}.match-actions,.match-card .primary-button{grid-column:1 / -1;width:100%}.match-score{width:52px;height:52px}.booth-canvas-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.booth-toolbox{grid-template-columns:1fr}.booth-svg{width:100%;min-width:720px;height:56vh;min-height:360px}.button-grid,.coordinate-grid{grid-template-columns:1fr 1fr}.inline-reset{grid-template-columns:1fr}}@media(max-width:560px){.login-page{padding:14px}.login-card{padding:18px}.login-brand{grid-template-columns:38px minmax(0,1fr)}.login-brand .brand-mark{width:38px;height:38px}.login-brand h1{font-size:18px}.top-actions .primary-button,.top-actions .ghost-button,.toolbar-actions .primary-button,.toolbar-actions .ghost-button,.panel-head .button-group .primary-button,.panel-head .button-group .ghost-button{flex-basis:100%;width:100%}.metrics-grid{grid-template-columns:1fr}.metric{min-height:78px;padding:13px}.metric strong{font-size:22px}.data-table{min-width:700px;font-size:12px}.data-table th,.data-table td{padding:9px}.button-grid,.coordinate-grid,.condition-row{grid-template-columns:1fr}.condition-row input{grid-column:auto}}
