:root{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,sans-serif;line-height:1.5;font-weight:500;color:#17202a;background:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--panel-bg: #ffffff;--panel-border: rgba(16, 35, 52, .08);--panel-shadow: 0 8px 24px rgba(41, 58, 79, .06);--text-muted: #536271;--brand: #1764a6;--brand-strong: #15568d;--accent: #1764a6;--success: #2d8a4a;--warning: #c17911;--danger: #b43b36;--slate: #6d7782}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(16,35,52,.08)}.brand{display:inline-flex;flex-direction:column;gap:2px}.brand__eyebrow,.eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--brand)}.eyebrow--home-title{font-size:18px}.brand__title{font-size:22px;font-weight:800;letter-spacing:-.03em}.topnav{display:flex;align-items:center;gap:8px}.topnav__link{padding:10px 14px;border-radius:999px;color:var(--text-muted);transition:.16s ease}.topnav__link:hover,.topnav__link--active{color:#fff;background:var(--brand)}.page{max-width:1580px;margin:0 auto;padding:24px 20px 32px}.stack-lg{display:flex;flex-direction:column;gap:24px}.stack-md{display:flex;flex-direction:column;gap:16px}.hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.9fr);gap:24px;padding:28px;border-radius:20px;background:#eef4fa;color:#17202a;box-shadow:var(--panel-shadow);border:1px solid var(--panel-border)}.hero--simple{grid-template-columns:1fr}.hero.hero--review-compact{padding:14px 18px;border-radius:16px}.hero.hero--review-compact h1{margin:4px 0 6px;font-size:clamp(1.08rem,1.6vw,1.52rem);line-height:1.18;letter-spacing:-.02em}.hero.hero--review-compact p{font-size:.86rem}.hero.hero--review-compact .eyebrow{font-size:11px}.hero--compact h1,.hero h1{margin:8px 0 12px;font-size:clamp(2rem,4vw,3.6rem);line-height:.95;letter-spacing:-.05em}.hero--detail h1{margin:6px 0 10px;font-size:clamp(1.1rem,1.6vw,1.8rem);line-height:1.15;letter-spacing:-.03em}.hero--detail p{font-size:.92rem}.hero--detail{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}.hero p{max-width:760px;margin:0;color:var(--text-muted)}.hero__meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.hero__meta--summary{margin-top:0;justify-content:flex-end}.hero-meta-item{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:#ffffffd1;border:1px solid rgba(16,35,52,.08)}.hero-meta-item__label{color:var(--text-muted);font-size:.86rem}.hero-meta-item strong{display:inline-flex;align-items:center;font-size:.98rem}.hero__stats{display:grid;gap:16px;align-self:stretch}.stat-card{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid rgba(16,35,52,.08)}.stat-card__value{font-size:2rem;font-weight:800;letter-spacing:-.04em}.stat-card__label{font-size:.9rem;color:var(--text-muted)}.panel{padding:24px;border-radius:18px;background:var(--panel-bg);border:1px solid var(--panel-border);box-shadow:var(--panel-shadow)}.panel--compact{padding:16px 18px}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.panel__header h2,.panel__header h1{margin:6px 0 0;font-size:1.45rem;letter-spacing:-.04em}.panel__subheading{margin:20px 0 10px;font-size:1rem}.panel__subheader{display:flex;flex-direction:column;gap:6px;margin:20px 0 14px}.workspace-grid,.detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px}.detail-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(320px,.8fr)}.detail-grid--simple{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}.detail-grid--triple{grid-template-columns:minmax(220px,2fr) minmax(0,5fr) minmax(300px,3fr);align-items:start}.detail-grid--triple.detail-grid--mgi-expanded{grid-template-columns:minmax(280px,.8fr) minmax(0,1.3fr)}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.home-layout{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);gap:16px;align-items:start}.home-projects-panel{position:sticky;top:82px;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 106px)}.home-projects__header{margin-bottom:0}.home-projects__meta{color:var(--text-muted);font-size:.82rem}.home-project-list{display:flex;flex-direction:column;gap:10px;margin-bottom:0;overflow-y:auto;min-height:0;flex:1 1 auto;padding-right:2px}.home-project-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 14px;border:1px solid rgba(16,35,52,.1);border-radius:14px;background:#fff;color:inherit;text-align:left}.home-project-item:hover{border-color:#1764a647;background:#f9fbff}.home-project-item--active{border-color:#1764a66b;background:#1764a612}.home-project-item__main{display:inline-flex;align-items:center;gap:8px;min-width:0}.home-project-item__name{font-size:.93rem;font-weight:700}.home-project-item__count{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 8px;border-radius:999px;font-size:.82rem;font-weight:800;color:#2b475f;background:#10233414}.home-project-status{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;font-size:.74rem;font-weight:800;white-space:nowrap}.home-project-status--live{color:#1f5d34;background:#2d8a4a1f}.home-project-status--test{color:#7f510d;background:#c179111f}.home-runs__subheading{margin:6px 0 0;color:var(--text-muted);font-size:.88rem}.home-runs__action{white-space:nowrap}.home-runs__workspace-hint{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;border:1px solid rgba(193,121,17,.34);background:#c1791129;color:#7a4b06;font-weight:800;white-space:nowrap}.project-card{display:flex;flex-direction:column;gap:12px;min-height:190px;padding:18px;border-radius:18px;background:#fff;border:1px solid rgba(16,35,52,.08)}.project-card__header,.project-card__footer,.filter-row,.kv-grid,.artifact-card__actions,.timeline__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.project-card__client{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}.project-card__version,.project-card__meta,.muted{color:var(--text-muted)}.project-card h3{margin:0;font-size:1.18rem}.project-card p{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.5}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag,.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#0f6d7314;color:var(--brand-strong);font-size:.82rem;font-weight:700}.tag--filled,.chip--soft{background:#1764a614;color:var(--brand-strong)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:14px;background:transparent;transition:.16s ease}.button:disabled{opacity:.55;cursor:not-allowed}.button--primary{color:#fff;background:var(--brand)}.button--primary:hover:not(:disabled){background:var(--brand-strong)}.button--ghost{color:var(--brand-strong);background:#0f6d7314;border-color:#0f6d731a}.button--ghost.is-active{color:#fff;background:var(--brand);border-color:var(--brand)}.button--danger{color:#8b2c28;background:#b43b3614;border-color:#b43b361f}.button--danger:hover:not(:disabled){background:#b43b3624}.button--small{min-height:34px;padding:0 12px;border-radius:12px;font-size:.86rem}.button--wide{width:100%}.delivery-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field,.form-stack{display:flex;flex-direction:column;gap:12px}.form-stack{gap:16px}.form-stack--compact{gap:14px}.project-run-form__submit{margin-top:18px}.upload-mode-panel{display:flex;flex-direction:column;gap:14px;margin:18px 0}.upload-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;border-radius:16px;background:#1023340f}.upload-mode-tab{min-height:42px;border:0;border-radius:12px;background:transparent;color:var(--text-muted);font-weight:800}.upload-mode-tab--active{background:#fff;color:var(--brand-strong);box-shadow:0 4px 14px #10233414}.bulk-upload-panel{display:flex;flex-direction:column;padding:0;border:1px dashed rgba(23,100,166,.28);border-radius:16px;background:#1764a60d;overflow:hidden}.bulk-upload-panel h3,.categorized-upload-panel h3{margin:4px 0 6px;font-size:1rem}.categorized-upload-panel{padding:16px;border:1px solid rgba(16,35,52,.08);border-radius:16px;background:#ffffff94}.bulk-upload-dropzone{display:flex;min-height:220px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;padding:18px 20px 22px;color:#1764a68f;transition:background .16s ease,color .16s ease}.bulk-upload-dropzone:hover{background:#1764a614;color:#1764a6c7}.bulk-upload-dropzone__input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bulk-upload-dropzone__header{display:flex;flex-direction:column;align-items:flex-start;align-self:stretch;gap:4px;margin-bottom:10px;color:var(--text)}.bulk-upload-dropzone__title{color:var(--text);font-size:1rem;font-weight:800}.bulk-upload-dropzone__icon{display:inline-flex}.bulk-upload-dropzone__icon svg{display:block;width:58px;height:58px}.bulk-upload-dropzone__text{color:var(--brand-strong);font-size:.86rem;font-weight:800}.bulk-upload-result{padding:0 16px 16px}.bulk-upload-result,.bulk-upload-result__group{display:flex;flex-direction:column;gap:10px}.bulk-upload-issue-list{margin:8px 0 0;padding-left:20px}.field__label{display:flex;align-items:center;gap:10px;font-size:.95rem;font-weight:700}.field__required{display:inline-flex;padding:2px 8px;border-radius:999px;background:#b43b361a;color:var(--danger);font-size:.72rem;font-weight:800}.field-help{margin:0;color:var(--text-muted);font-size:.88rem}.field input[type=text],.field input[type=url],.field input[type=date],.field input[type=file],.field select,.field textarea,.filter-row input,.filter-row select{width:100%;min-height:48px;padding:12px 14px;border:1px solid rgba(16,35,52,.12);border-radius:14px;background:#ffffffd1;color:#17202a}.field textarea{min-height:120px;resize:vertical}.field--checkbox{flex-direction:row;align-items:flex-start;gap:12px}.field--checkbox input[type=checkbox]{width:18px;height:18px;margin-top:4px}.field__checkbox-copy{display:flex;flex-direction:column;gap:6px}.file-pill-list{display:flex;flex-wrap:wrap;gap:8px}.file-pill{padding:6px 10px;border-radius:999px;background:#0f6d7314;color:var(--brand-strong);font-size:.82rem}.alert,.empty-state{padding:16px 18px;border-radius:16px}.alert{border:1px solid transparent}.alert--error{color:#7b241f;background:#b43b361a;border-color:#b43b3624}.alert--success{color:#1f5d34;background:#2d8a4a1a;border-color:#2d8a4a24}.alert--soft{color:#5d4a1f;background:#d96b2714;border-color:#d96b271f}.status-callout{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;padding:14px 16px;border-radius:14px;border:1px solid transparent}.status-callout--ready,.status-callout--success{color:#1f5d34;background:#2d8a4a1a;border-color:#2d8a4a24}.status-callout--processing{color:#0b4e66;background:#1764a614;border-color:#1764a61f}.status-callout--warning{color:#7f510d;background:#c179111a;border-color:#c1791124}.status-callout--error{color:#7b241f;background:#b43b361a;border-color:#b43b3624}.empty-state{color:var(--text-muted);background:#f6f8fb}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;min-width:1140px}.data-table__col--run-id{width:15%}.data-table__col--project{width:11%}.data-table__col--algorithm{width:9%}.data-table__col--edition{width:8%}.data-table__col--status{width:7%}.data-table__col--progress{width:6%}.data-table__col--step{width:10%}.data-table__col--delivery{width:20%}.data-table__col--created{width:9%}.data-table__col--actions{width:5%}.data-table th,.data-table td{padding:14px 12px;border-bottom:1px solid rgba(16,35,52,.08);text-align:left;vertical-align:top}.data-table th{color:var(--text-muted);font-size:.82rem;font-weight:800;letter-spacing:.02em}.table-link{color:var(--brand-strong);font-weight:700}.data-table__cell--nowrap{white-space:nowrap}.delivery-cell{display:flex;flex-direction:column;gap:8px;min-width:180px}.delivery-cell__meta{color:var(--text-muted);font-size:.84rem;line-height:1.35}.delivery-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:800}.delivery-pill--latest{color:#1f5d34;background:#2d8a4a1f}.delivery-pill--warning{color:#7f510d;background:#c179111f}.delivery-pill--pending{color:#4b5661;background:#6d77821f}.algorithm-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:28px;padding:0 10px;border-radius:999px;font-size:.77rem;font-weight:800;line-height:1;white-space:nowrap}.algorithm-pill--ranked{border:1px solid rgba(23,100,166,.14);background:#1764a614;color:#1d5b90}.algorithm-pill--editorial{border:1px solid rgba(15,109,115,.14);background:#0f6d7314;color:var(--brand-strong)}.delivery-filter-bar{display:flex;flex-wrap:wrap;gap:10px}.delivery-filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid rgba(16,35,52,.1);border-radius:999px;background:#ffffffd1;color:var(--text-muted);font-weight:700}.delivery-filter-chip span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#1023340f;font-size:.78rem}.delivery-filter-chip--active{border-color:#0f6d732e;background:#0f6d7314;color:var(--brand-strong)}.delivery-filter-chip--active span{background:#0f6d731f}.run-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.run-pagination__summary{color:var(--text-muted);font-size:.84rem}.run-pagination__controls{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.run-pagination__size{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.84rem}.run-pagination__size select{min-height:34px;border:1px solid rgba(16,35,52,.12);border-radius:10px;padding:0 8px;background:#fff}.run-pagination__page{color:var(--text-muted);font-size:.84rem;font-weight:700}.run-pagination__jump{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.84rem}.run-pagination__jump input{width:72px;min-height:34px;border:1px solid rgba(16,35,52,.12);border-radius:10px;padding:0 8px;background:#fff}.status-summary{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.status-summary__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:#f7f9fc}.stage-progress{display:flex;flex-direction:column;gap:14px;margin-top:18px}.stage-progress__summary{padding:12px 14px;border-radius:14px;background:#eef4fa;color:var(--brand-strong);font-weight:700}.stage-progress__list{display:flex;flex-direction:column;gap:10px}.stage-card{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:#f7f9fc;color:var(--text-muted)}.stage-card__dot{width:10px;height:10px;border-radius:999px;background:#c4ced8}.stage-card--completed{color:#1f5d34;background:#2d8a4a14}.stage-card--completed .stage-card__dot{background:var(--success)}.stage-card--current{color:var(--brand-strong);background:#1764a614}.stage-card--current .stage-card__dot{background:var(--brand)}.stage-card--failed{color:#7b241f;background:#b43b3614}.stage-card--failed .stage-card__dot{background:var(--danger)}.send-report-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:18px;border:1px solid rgba(193,121,17,.14);background:#c1791114}.send-report-status--latest{border-color:#0f6d7324;background:linear-gradient(135deg,#0f6d731a,#1764a60f)}.send-report-status h3{margin:6px 0 8px;font-size:1.04rem}.send-report-status p{margin:0;color:var(--text-muted)}.delivery-status-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:16px 0 18px;padding:16px 18px;border-radius:18px;border:1px solid rgba(193,121,17,.14);background:#c1791114}.delivery-status-banner--latest{border-color:#0f6d7324;background:linear-gradient(135deg,#0f6d731a,#1764a60f)}.delivery-status-banner h3{margin:6px 0 8px;font-size:1.04rem}.delivery-status-banner p{margin:0;color:var(--text-muted)}.status-badge,.event-level{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:800}.status-badge--green,.event-level--green,.timeline__dot--green{color:#1f5d34;background:#2d8a4a1f}.status-badge--red,.event-level--red,.timeline__dot--red{color:#7b241f;background:#b43b361f}.status-badge--amber,.event-level--amber,.timeline__dot--amber{color:#7f510d;background:#c179111f}.status-badge--blue,.event-level--blue,.timeline__dot--blue{color:#0b4e66;background:#22a7f01f}.status-badge--slate,.event-level--slate,.timeline__dot--slate{color:#4b5661;background:#6d77821f}.timeline{display:flex;flex-direction:column;gap:18px}.timeline__item{display:grid;grid-template-columns:16px minmax(0,1fr);gap:14px}.timeline__dot{width:12px;height:12px;margin-top:7px;border-radius:999px}.timeline__content{display:flex;flex-direction:column;gap:10px}.timeline__message{font-weight:700}.code-block{margin:0;padding:16px;border-radius:18px;background:#16212c;color:#eff5fb;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.84rem;overflow:auto;white-space:pre-wrap;word-break:break-word}.code-block--tall,.preview-frame{min-height:540px}.artifact-list{display:flex;flex-direction:column;gap:12px}.artifact-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border-radius:18px;border:1px solid rgba(16,35,52,.08);background:#ffffffc7}.artifact-card--selected{border-color:#0f6d7347;box-shadow:inset 0 0 0 1px #0f6d731a}.artifact-card__select{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;border:none;background:transparent;text-align:left}.artifact-card__name{font-weight:800}.artifact-card__meta{color:var(--text-muted);font-size:.88rem}.report-stats{margin-top:18px;padding:14px 16px;border-radius:16px;border:1px solid rgba(16,35,52,.08);background:#0f6d730a}.report-stats--loading{color:var(--text-muted)}.report-stats__table{width:100%;margin-top:8px;border-collapse:collapse}.report-stats__table th,.report-stats__table td{padding:8px 0;border-bottom:1px dashed rgba(16,35,52,.12);font-size:.9rem}.report-stats__table th{text-align:left;color:var(--text-muted);font-weight:700}.report-stats__table td{text-align:right;font-weight:800;color:#17202a}.report-stats__table--compact{table-layout:fixed}.report-stats__table--compact th,.report-stats__table--compact td{padding:10px 8px;border:1px solid rgba(16,35,52,.12);text-align:center;font-size:.84rem}.report-stats__table--compact thead th{background:#0f6d7312;color:var(--text-muted);font-weight:700;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.25}.report-stats__table--compact tbody td{color:#17202a;font-weight:800}.report-stats__table--compact tbody tr:last-child td{border-bottom:1px solid rgba(16,35,52,.12)}.report-stats__row--total th,.report-stats__row--total td{border-bottom-style:solid;color:var(--brand-strong)}.report-stats__table tbody tr:last-child th,.report-stats__table tbody tr:last-child td{border-bottom:none}.report-stats__hint{margin-top:16px}.mgi-fulltext-warnings{margin-top:16px;padding:14px 16px;border:1px solid rgba(185,117,28,.28);border-radius:16px;background:#fff8e8cc}.mgi-fulltext-warnings__hint{margin:6px 0 10px;color:var(--text-muted);font-size:.9rem}.mgi-fulltext-warnings__table-wrap{overflow-x:auto}.mgi-fulltext-warnings__table{width:100%;min-width:780px;border-collapse:collapse}.mgi-fulltext-warnings__table th,.mgi-fulltext-warnings__table td{padding:9px 10px;border:1px solid rgba(185,117,28,.22);vertical-align:top;font-size:.84rem}.mgi-fulltext-warnings__table th{background:#b9751c1a;color:var(--text-muted);text-align:left;font-weight:800}.mgi-fulltext-warnings__title{max-width:340px;overflow-wrap:anywhere;color:#17202a;font-weight:700}.mgi-fulltext-warnings__meta{display:block;margin-top:3px;color:var(--text-muted);font-size:.78rem;line-height:1.35}.report-preview,.review-panel{margin-top:22px}.review-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start;align-content:start;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:6px}.review-board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.review-board-toolbar h2{margin:6px 0 0;font-size:1.12rem}.review-board-toolbar__actions{display:flex;gap:10px;flex-wrap:wrap}.review-editor-layout{display:block;min-height:640px}.review-section-order{padding:18px}.review-section-order__list{display:flex;flex-direction:column;gap:0}.review-section-order__slot{min-height:8px;border-radius:6px}.review-section-order__slot--active{min-height:22px;background:#1764a614;border:1px dashed rgba(23,100,166,.28)}.review-section-order__item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(16,35,52,.08);border-radius:8px;background:#ffffffdb;cursor:grab}.review-section-order__item:hover{border-color:#1764a633;box-shadow:0 10px 22px #1023340a}.review-section-order__item--dragging{opacity:.5}.review-section-order__handle{color:var(--text-muted);font-weight:700;letter-spacing:0}.review-section-order__title{display:flex;flex-direction:column;gap:3px;min-width:0}.review-section-order__title strong,.review-section-order__title span{overflow-wrap:anywhere}.review-section-order__title span{color:var(--text-muted);font-size:.85rem}.review-section-order__index{min-width:30px;text-align:right;color:var(--text-muted);font-size:.86rem}.review-board__column{min-height:520px;padding:18px}.review-board__column--active{border-color:#1764a638}.review-board__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.review-board__header h2{margin:6px 0 0;font-size:1.15rem}.review-board__list{display:flex;flex-direction:column;gap:12px}.review-board__add-slot{display:flex;flex-direction:column;gap:8px;align-items:center;padding:4px 0}.review-board__add-slot--active{border-radius:12px;padding:8px 6px;background:#1764a60f}.review-board__add-button{border-style:dashed;min-width:148px;margin:2px 0}.review-board__card{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:16px;background:#fbfcfe;border:1px solid rgba(16,35,52,.08);transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.review-board__card-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.review-board__media{display:flex;align-items:center;min-width:0;gap:10px}.review-board__media strong{display:block;min-width:0;font-size:.95rem;line-height:1.35}.review-board__edit-button{min-width:68px;padding:8px 12px}.qiankun-volume-panel{border-style:dashed}.qiankun-volume-panel__body{display:grid;gap:12px}.qiankun-volume-panel .field textarea{min-height:120px}.qiankun-volume-panel__hint{margin-top:4px}.qiankun-volume-panel__actions{display:flex;gap:10px;flex-wrap:wrap}.qiankun-volume-panel__preview{border:1px solid rgba(21,71,110,.18);background:#f5f9fdb3;border-radius:10px;min-height:120px;padding:10px;display:flex;align-items:center;justify-content:center}.qiankun-volume-panel__preview-image{display:block;max-width:100%;max-height:260px;object-fit:contain;border-radius:6px}.qiankun-volume-panel__preview-empty{text-align:center;font-size:.92rem}.review-board--compact .review-board__column{min-height:440px;padding:14px}.review-board--compact .review-board__list{gap:8px}.review-board--compact .review-board__card{gap:7px;padding:10px 11px;border-radius:14px}.review-board--compact .review-logo-thumb--card{width:46px;height:46px;border-radius:12px}.review-board--compact .review-board__section{gap:3px;padding-top:7px}.review-board--compact .review-board__section-label,.review-board--compact .review-board__section p,.review-board--compact .review-board__media strong{font-size:.82rem}.review-board--summary-hidden .review-board__section--summary{display:none}.review-board__card:hover{transform:translateY(-1px);border-color:#1764a62e;box-shadow:0 14px 28px #1023340d}.review-board__card--dragging{opacity:.48}.review-board__section{display:flex;flex-direction:column;gap:4px;padding-top:9px;border-top:1px solid rgba(16,35,52,.07)}.review-board__section-label{color:var(--text-muted);font-size:.78rem}.review-board__section p{margin:0;font-size:.92rem;line-height:1.5;color:var(--text-default);white-space:pre-wrap;word-break:break-word}.review-board__section--title-en p{font-weight:600;color:#22384b}.review-board__section--title-cn p{font-weight:700;color:#102334}.review-board__section--summary p{color:var(--text-muted)}.review-board__insert-indicator{height:10px;border-radius:999px;background:linear-gradient(90deg,#1764a626,#1764a6d9,#1764a626)}.review-board__dropzone{border:1px dashed rgba(23,100,166,.34);background:#1764a60f}.review-sidepanel{display:flex;max-height:calc(100vh - 120px);min-height:0;flex-direction:column;overflow:hidden}.review-sidepanel__header{margin-bottom:16px}.review-sidepanel__header h2{margin:6px 0 0;font-size:1.2rem}.review-sidepanel__content{min-height:0;overflow-y:auto;padding-right:6px}.review-sidepanel__group{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:16px;background:#f7f9fc}.review-sidepanel__group-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-sidepanel__logo-preview{display:flex;align-items:center;gap:14px}.review-sidepanel__logo-meta{display:flex;min-width:0;flex-direction:column;gap:8px;flex:1 1 auto}.review-sidepanel__logo-meta .field{margin:0}.review-sidepanel__logo-meta strong{color:var(--text-muted);font-size:.86rem;line-height:1.4}.review-logo-thumb{display:flex;align-items:center;justify-content:center;flex:0 0 auto;overflow:hidden;border-radius:14px;border:1px solid rgba(16,35,52,.08);background:#fff}.review-logo-thumb img{display:block;max-width:100%;max-height:100%;object-fit:contain}.review-logo-thumb--card{width:56px;height:56px}.review-logo-thumb--panel{width:132px;height:88px;border-radius:16px}.review-logo-thumb--empty{background:#f4f6f9;color:var(--text-muted)}.review-logo-thumb--empty span{padding:0 8px;text-align:center;font-size:.78rem;line-height:1.3}.review-editor-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:28px;background:#0c18245c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.review-editor-modal__dialog{width:min(760px,100%);max-height:calc(100vh - 56px);display:flex;flex-direction:column;overflow:hidden}.review-editor-modal__header,.review-editor-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.review-editor-modal__header{padding-bottom:16px;border-bottom:1px solid rgba(16,35,52,.08)}.review-editor-modal__header h2{margin:6px 0 0}.review-editor-modal__body{flex:1;min-height:0;overflow-y:auto;padding:20px 2px}.review-editor-modal__footer{padding-top:16px;border-top:1px solid rgba(16,35,52,.08)}.review-editor-modal__footer .review-actions{width:100%}.review-text-parse-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;background:#08121c6b}.review-text-parse-modal__dialog{width:min(820px,100%);max-height:min(86vh,920px);overflow-y:auto;display:flex;flex-direction:column;gap:12px}.review-text-parse-modal__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-text-parse-modal__header h3{margin:0}.review-text-parse-modal__hint{font-size:.86rem}.review-text-parse-modal__actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.review-mgi-rewrite-panel{border:1px solid rgba(15,109,115,.12);background:#0f6d730f}.review-mgi-rewrite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-mgi-rewrite-preview{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid rgba(16,35,52,.1);border-radius:12px;background:#fff}.review-mgi-rewrite-preview p{margin:0;line-height:1.7}.review-mgi-rewrite-preview dl{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px 12px;margin:0}.review-mgi-rewrite-preview dt{color:var(--muted);font-weight:700}.review-mgi-rewrite-preview dd{margin:0;min-width:0;line-height:1.7;word-break:break-word}.review-mgi-rewrite-diff-grid{display:flex;flex-direction:column;gap:12px}.review-mgi-rewrite-diff-card{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid rgba(16,35,52,.1);border-radius:10px;background:#f6f9fad1}.review-mgi-rewrite-diff-card__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-mgi-rewrite-diff-meta,.review-mgi-rewrite-diff-label{font-size:.82rem}.review-mgi-rewrite-diff-label{display:inline-block;margin-bottom:6px;color:var(--muted);font-weight:700}.review-mgi-rewrite-diff-columns{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px}.review-mgi-rewrite-diff-columns>div{min-width:0}.review-mgi-rewrite-diff-columns p{margin:0;line-height:1.7;word-break:break-word}.review-editor-status{border-color:#c6881a24;background:#c6881a14}.review-editor-status--saved{border-color:#0f6d731a;background:#0f6d730f}.review-next-step{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-radius:18px;border:1px solid rgba(15,109,115,.14);background:linear-gradient(135deg,#0f6d7314,#1764a60f)}.review-next-step h3{margin:6px 0 8px;font-size:1.08rem}.review-next-step p{margin:0;color:var(--text-muted)}.review-delete-undo{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.review-delete-undo__header{display:flex;flex-direction:column;gap:4px}.review-recycle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.review-recycle-column{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:14px;border:1px solid rgba(16,35,52,.08);background:#fbfcfe}.review-recycle-column__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.review-recycle-list{display:flex;flex-direction:column;gap:10px}.review-recycle-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(16,35,52,.08);background:#fff}.review-recycle-item__content{display:flex;min-width:0;flex-direction:column;gap:4px}.review-recycle-item__content strong{font-size:.9rem;line-height:1.4;word-break:break-word}.review-toolbar,.review-item-grid,.review-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.review-actions{grid-template-columns:repeat(auto-fit,minmax(180px,220px));justify-content:flex-start}.review-section{padding:18px;border-radius:16px;background:#f7f9fc}.review-section__header,.review-item-card__header,.review-item-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.review-section__header{margin-bottom:14px}.review-section__header span,.review-item-meta{color:var(--text-muted);font-size:.9rem}.review-item-list{display:flex;flex-direction:column;gap:14px}.review-item-card{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:16px;background:#fff;border:1px solid rgba(16,35,52,.08)}.review-item-card__actions{display:flex;gap:8px;flex-wrap:wrap}.review-logo-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-url-parse-row{display:flex;align-items:center;gap:10px}.review-url-parse-row input{flex:1 1 auto}.review-url-upload-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.review-related-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:center}@media (max-width: 720px){.review-mgi-rewrite-grid,.review-mgi-rewrite-preview dl,.review-mgi-rewrite-diff-columns{grid-template-columns:minmax(0,1fr)}}.review-related-chip-list{display:flex;flex-wrap:wrap;gap:6px}.review-html-upload{position:relative;overflow:hidden}.review-html-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.review-logo-upload{position:relative;overflow:hidden}.review-logo-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.overview-list-editor{display:flex;flex-direction:column;gap:8px}.overview-list-item{display:flex;align-items:center;gap:8px;padding:8px;border-radius:10px;border:1px solid rgba(16,35,52,.12);background:#fff}.overview-list-item--dragging{opacity:.6;border-color:#1764a659;background:#1764a60d}.overview-list-item__handle{display:inline-flex;align-items:center;justify-content:center;min-width:22px;color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none}.overview-list-item input{flex:1 1 auto;min-width:0}.overview-list-item input:focus-visible{outline:2px solid rgba(23,100,166,.35);outline-offset:1px}.overview-list-item__actions{display:inline-flex;align-items:center;gap:6px}.overview-list-drop-slot{margin:4px 0 8px;padding:6px 10px;border:1px dashed transparent;border-radius:8px;color:var(--text-muted);font-size:.82rem}.overview-list-drop-slot--active{border-color:#1764a673;background:#1764a614;color:#15466f}.review-mgi-headline-preview{padding:10px 12px;border-radius:10px;border:1px solid rgba(16,35,52,.1);background:#fff;color:#102334;font-weight:700;line-height:1.45;word-break:break-word}.review-headline-preview{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:2px}.review-headline-preview__source-link{color:#007f7a;text-decoration:underline;text-underline-offset:2px;font-weight:700}.review-headline-preview__source-link:hover{color:#006a66}.review-mgi-headline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-pool-card{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border-radius:16px;background:#fff;border:1px solid rgba(16,35,52,.08)}.review-pool-card--candidate{background:#fcfdff;border-color:#1764a624}.review-pool-card strong,.review-pool-card p{display:block}.review-pool-card__body{display:flex;flex:1;flex-direction:column;min-width:0;cursor:grab}.review-pool-card__body--dragging{opacity:.48}.review-pool-card p{margin:6px 0 0;color:var(--text-muted);font-size:.92rem}.review-pool-meta{display:inline-flex;margin-top:8px;color:var(--text-muted);font-size:.84rem}.review-pool-hint{margin-top:10px;color:#1764a6e0;font-size:.84rem}.review-pool-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.review-filter-bar{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:14px;margin-bottom:16px}.review-pool-groups{display:flex;flex-direction:column;gap:16px}.review-pool-group{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:#f7f9fc}.review-pool-group__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-pool-group__header span{color:var(--text-muted);font-size:.9rem}.mail-summary{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:14px;background:#f7f9fc}.mail-summary__label{color:var(--text-muted);font-size:.82rem}.share-block-gap{margin-top:16px}.share-result{display:flex;flex-direction:column;gap:8px}.share-result a{color:var(--brand-strong);font-weight:700;word-break:break-all}.share-result__actions{display:flex;flex-wrap:wrap;gap:8px}.share-list{display:flex;flex-direction:column;gap:10px}.share-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border-radius:16px;border:1px solid rgba(16,35,52,.08);background:#ffffffc7}.share-item__content{display:flex;min-width:0;flex-direction:column;gap:8px}.share-item__meta{display:flex;flex-direction:column;gap:4px;color:var(--text-muted);font-size:.84rem}.share-item__actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.share-item__link-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.share-public-layout{max-width:1120px;margin:0 auto;padding:24px 20px 32px;display:flex;flex-direction:column;gap:18px}.share-public-sections{display:flex;flex-direction:column;gap:14px}.share-public-section{padding:14px}.share-public-section .panel__header{margin-bottom:12px}.share-public-section .panel__header h2{font-size:1.06rem}.share-public-hero{background:linear-gradient(135deg,#0f6d731a,#1764a614)}.share-public-hero h1{margin:8px 0 12px;font-size:clamp(1.3rem,2.8vw,2.2rem);line-height:1.2}.share-public-hero__meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--text-muted);font-size:.9rem}.share-public-viewer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.share-public-viewer input{width:100%;min-height:44px;padding:0 12px;border:1px solid rgba(16,35,52,.12);border-radius:12px}.share-public-list{display:flex;flex-direction:column;gap:14px}.share-public-item{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;border:1px solid rgba(16,35,52,.08);background:#ffffffd1}.share-public-item__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.share-public-item__source{display:flex;align-items:center;gap:10px;min-width:0}.share-public-item__header h3{margin:0;font-size:1.03rem;line-height:1.35}.share-public-item__header a{flex:0 0 auto;color:var(--brand-strong);font-size:.88rem;font-weight:700}.share-public-item__meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--text-muted);font-size:.84rem}.share-public-item__source .share-public-item__meta{min-width:0}.share-public-item__summary{margin:0;color:#22384b;line-height:1.6;white-space:pre-wrap}.share-public-item__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.share-public-comment-inline{margin-left:auto;display:inline-flex;align-items:center;gap:8px;min-width:340px;max-width:100%}.share-public-comment-inline__input{flex:1 1 280px;min-width:180px;min-height:34px;padding:0 10px;border:1px solid rgba(16,35,52,.12);border-radius:12px}.share-public-comment-inline__submit{min-width:58px;white-space:nowrap;flex:0 0 auto}.share-public-comment-inline__expand{white-space:nowrap;flex:0 0 auto}.share-public-comment-inline__count{white-space:nowrap;font-size:.8rem}.share-public-comment-editor{display:flex;flex-direction:column;gap:10px}.share-public-comment-editor__textarea{width:100%;min-height:280px;padding:10px 12px;border:1px solid rgba(16,35,52,.12);border-radius:12px;resize:vertical;line-height:1.55}.share-public-comment-editor__meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.share-public-comments{display:flex;flex-direction:column;gap:10px}.share-public-toast{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:120;max-width:min(92vw,420px);padding:10px 14px;border-radius:12px;background:#16212eeb;color:#fff;font-size:.88rem;line-height:1.35;box-shadow:0 10px 24px #10233447;pointer-events:none}.share-public-comment{padding:12px;border-radius:12px;background:#f7f9fc;border:1px solid rgba(16,35,52,.06)}.share-public-comment__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-muted);font-size:.82rem}.share-public-comment__meta-actions{display:inline-flex;align-items:center;gap:8px}.share-public-comment p{margin:8px 0 0;white-space:pre-wrap}.preview-frame{width:100%;border:none;border-radius:18px;background:#fff}.panel--artifact-preview .preview-frame,.panel--artifact-preview .code-block--tall{min-height:clamp(480px,78vh,1100px)}.panel--artifact-preview .preview-frame{height:clamp(480px,78vh,1100px)}.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.kv-item{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;background:#0f6d730d}.kv-item span{color:var(--text-muted);font-size:.86rem}.input-file-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}.input-file-card{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;background:#0f6d730d}.input-file-card__label,.input-file-card__meta{color:var(--text-muted);font-size:.82rem}@media (max-width: 1180px){.hero,.home-layout,.workspace-grid,.detail-grid,.detail-grid--triple,.review-board,.review-recycle-grid,.review-editor-layout,.review-pool-layout{grid-template-columns:1fr}.hero--detail{grid-template-columns:1fr;align-items:start}.home-projects-panel{position:static;max-height:none}.home-project-list{overflow:visible;flex:0 0 auto}.home-runs__action{width:100%}.home-runs__workspace-hint{width:100%;justify-content:flex-start;white-space:normal}.hero__meta{gap:10px}.hero__meta--summary{justify-content:flex-start}.review-filter-bar{grid-template-columns:1fr}.review-next-step{flex-direction:column;align-items:flex-start}.review-board,.review-sidepanel,.review-sidepanel__content,.review-editor-modal__dialog,.review-editor-modal__body{max-height:none;overflow:visible;padding-right:0}.review-sidepanel__logo-preview{align-items:flex-start}.review-editor-modal{padding:18px}}@media (max-width: 780px){.topbar,.page{padding:20px}.hero__meta,.hero-meta-item{width:100%}.panel,.hero{padding:20px;border-radius:20px}.send-report-status,.delivery-status-banner{flex-direction:column;align-items:flex-start}.brand__title{font-size:18px}.hero h1{font-size:2.2rem}.artifact-card{grid-template-columns:1fr}.panel--artifact-preview .preview-frame,.panel--artifact-preview .code-block--tall{min-height:65vh}.panel--artifact-preview .preview-frame{height:65vh}.review-pool-card{flex-direction:column}.delivery-mode-switch{grid-template-columns:1fr}.share-item{flex-direction:column}.share-item__actions{align-items:flex-start}.share-item__link-actions{justify-content:flex-start}.share-public-viewer{grid-template-columns:1fr}.share-public-item__header{flex-direction:column}.share-public-comment-inline{width:100%;margin-left:0;min-width:0}.share-public-comment-inline__count{margin-left:auto}.review-editor-modal{padding:12px}.review-editor-modal__header,.review-editor-modal__footer{flex-direction:column;align-items:flex-start}}.zeiss-page{display:flex;flex-direction:column;gap:18px}.zeiss-hero{background:linear-gradient(135deg,#0d2bb8,#13224a);color:#fff}.zeiss-hero .eyebrow,.zeiss-hero p{color:#ffffffc7}.zeiss-hero h1{margin-bottom:8px}.zeiss-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.zeiss-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.zeiss-summary-grid div{border:1px solid rgba(16,35,52,.08);border-radius:14px;padding:12px;background:#f8fbff}.zeiss-summary-grid strong,.zeiss-summary-grid span{display:block}.zeiss-summary-grid strong{color:var(--text-muted);font-size:.78rem;margin-bottom:5px;text-transform:uppercase;letter-spacing:.08em}.zeiss-share-link{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 14px;font-size:.9rem}.zeiss-share-link a{color:var(--brand-strong);word-break:break-all}.zeiss-email-frame{width:100%;min-height:760px;border:1px solid rgba(16,35,52,.1);border-radius:18px;background:#fff}.zeiss-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.zeiss-form-grid label{display:flex;flex-direction:column;gap:6px;color:var(--text-muted);font-size:.86rem;font-weight:700}.zeiss-form-grid input,.zeiss-upload-panel input[type=file]{min-height:38px;border:1px solid rgba(16,35,52,.12);border-radius:12px;padding:8px 10px;background:#fff;color:var(--text-main)}@media (max-width: 760px){.zeiss-summary-grid,.zeiss-form-grid{grid-template-columns:1fr}.zeiss-actions{justify-content:flex-start}}.peninsula-page{display:flex;flex-direction:column;gap:18px}.peninsula-hero{background:linear-gradient(135deg,#173f32,#1d2937 62%,#8d7340);color:#fff}.peninsula-hero .eyebrow,.peninsula-hero p{color:#ffffffc7}.peninsula-hero h1{margin-bottom:8px}.peninsula-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.peninsula-bulk-upload{display:flex;align-items:center;gap:12px;min-height:72px;margin-bottom:14px;padding:14px 16px;border:1px dashed rgba(23,63,50,.32);border-radius:12px;background:#f8faf7;cursor:pointer}.peninsula-bulk-upload input{flex:0 0 auto;max-width:260px}.peninsula-bulk-upload span{display:flex;flex-direction:column;gap:4px;min-width:0}.peninsula-bulk-upload strong{color:#17202a;font-size:.92rem}.peninsula-bulk-upload em{color:var(--text-muted);font-size:.84rem;font-style:normal;line-height:1.45}.peninsula-file-grid,.peninsula-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.peninsula-file-grid label,.peninsula-form-grid label{display:flex;flex-direction:column;gap:6px;color:var(--text-muted);font-size:.86rem;font-weight:700}.peninsula-file-grid span{color:#17202a;font-size:.82rem;font-weight:600;word-break:break-all}.peninsula-form-grid{margin-bottom:16px}.peninsula-form-grid input,.peninsula-file-grid input[type=file]{min-height:38px;border:1px solid rgba(16,35,52,.12);border-radius:12px;padding:8px 10px;background:#fff;color:var(--text-main)}.peninsula-summary-grid{display:grid;grid-template-columns:1.2fr 1.6fr 1fr .8fr;gap:12px;margin-bottom:14px}.peninsula-summary-grid div{border:1px solid rgba(23,63,50,.12);border-radius:14px;padding:12px;background:#fbfaf4;min-width:0}.peninsula-summary-grid strong,.peninsula-summary-grid span{display:block}.peninsula-summary-grid span{overflow-wrap:anywhere}.peninsula-summary-grid strong{color:var(--text-muted);font-size:.78rem;margin-bottom:5px;text-transform:uppercase;letter-spacing:.08em}.peninsula-share-link{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 14px;font-size:.9rem}.peninsula-share-link a{color:#17644f;word-break:break-all}.peninsula-email-frame{width:100%;min-height:760px;border:1px solid rgba(23,63,50,.14);border-radius:18px;background:#fff}@media (max-width: 760px){.peninsula-file-grid,.peninsula-form-grid,.peninsula-summary-grid{grid-template-columns:1fr}.peninsula-actions{justify-content:flex-start}.peninsula-bulk-upload{align-items:flex-start;flex-direction:column}}.share-public-item--highlight{outline:3px solid rgba(16,45,181,.45);box-shadow:0 0 0 8px #102db514;transition:outline-color .2s ease,box-shadow .2s ease}.share-public-item__header h3 a{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}@font-face{font-family:ZEISS Text;src:url(/fonts/zeiss/ZEISSText-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ZEISS Text;src:url(/fonts/zeiss/ZEISSText-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}.zeiss-feedback-page{--zf-bg: #f5f7fa;--zf-card: #ffffff;--zf-line: #d8dee6;--zf-text: #17202a;--zf-muted: #536271;--zf-brand: #102DB5;min-height:100vh;margin:0;background:var(--zf-bg);color:var(--zf-text);font-family:ZEISS Text,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-size:16px}.zeiss-feedback-page *{box-sizing:border-box}.zeiss-feedback-page .wrap{max-width:1080px;margin:0 auto;padding:20px}.zeiss-feedback-page .hero{margin-bottom:16px}.zeiss-feedback-page .hero h1{margin:8px 0}.zeiss-feedback-page .eyebrow{color:var(--zf-brand);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.zeiss-feedback-page .muted{color:var(--zf-muted)}.zeiss-feedback-page .list{display:grid;gap:12px}.zeiss-feedback-page .card{background:var(--zf-card);border:1px solid var(--zf-line);border-radius:8px;padding:14px}.zeiss-feedback-page .card.is-target{outline:3px solid rgba(16,45,181,.25)}.zeiss-feedback-page .card.is-busy{opacity:.82}.zeiss-feedback-page .section{margin:0 0 4px;color:var(--zf-brand);font-size:12px;font-weight:700}.zeiss-feedback-page h2{margin:0 0 6px;font-size:16px}.zeiss-feedback-page .item-title-link{color:inherit;text-decoration:underline;text-underline-offset:3px}.zeiss-feedback-page .meta{margin:0 0 6px;color:var(--zf-muted);font-size:16px}.zeiss-feedback-page .summary{margin:0 0 10px;line-height:1.6;white-space:pre-wrap}.zeiss-feedback-page a,.zeiss-feedback-page .original-article-link{color:var(--zf-brand)}.zeiss-feedback-page button{min-height:34px;padding:6px 12px;border:1px solid var(--zf-brand);border-radius:999px;background:#fff;color:var(--zf-brand);cursor:pointer;font:inherit;white-space:nowrap}.zeiss-feedback-page button:disabled{cursor:not-allowed;opacity:.65}.zeiss-feedback-page button.is-active{border-color:#102db53d;background:#102db524}.zeiss-feedback-page button.is-loading{color:var(--zf-muted)}.zeiss-feedback-page .share-public-item__actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin-top:10px}.zeiss-feedback-page .share-public-comment-inline{display:inline-flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;margin-left:auto}.zeiss-feedback-page .share-public-comment-inline__input{flex:1 1 220px;min-width:140px;min-height:34px;padding:0 10px;border:1px solid rgba(16,35,52,.12);border-radius:12px;font:inherit}.zeiss-feedback-page .share-public-comment-inline__expand,.zeiss-feedback-page .share-public-comment-inline__submit{flex:0 0 auto}.zeiss-feedback-page .share-public-comment-inline__submit{min-width:58px;border-color:var(--zf-brand);background:var(--zf-brand);color:#fff}.zeiss-feedback-page .comment-count{flex:0 0 auto;font-size:.8rem;white-space:nowrap}.zeiss-feedback-page .comment-error{margin-top:10px;padding:8px 10px;border:1px solid rgba(188,62,62,.18);border-radius:8px;background:#bc3e3e14;color:#9b2d2d;font-size:.88rem}.zeiss-feedback-page .share-public-comments{display:flex;flex-direction:column;gap:10px;margin-top:12px}.zeiss-feedback-page .share-public-comment{padding:12px;border:1px solid rgba(16,35,52,.06);border-radius:8px;background:#f7f9fc}.zeiss-feedback-page .share-public-comment__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--zf-muted);font-size:.82rem}.zeiss-feedback-page .share-public-comment__meta-actions{display:inline-flex;align-items:center;gap:8px}.zeiss-feedback-page .comment-delete{min-height:28px;padding:4px 10px;font-size:.82rem}.zeiss-feedback-page .share-public-comment p{margin:8px 0 0;line-height:1.5;white-space:pre-wrap}.zeiss-feedback-page .review-editor-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:28px;background:#0c18245c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.zeiss-feedback-page .review-editor-modal__dialog{width:min(760px,100%);max-height:calc(100vh - 56px);display:flex;flex-direction:column;overflow:hidden;background:var(--zf-card);border:1px solid var(--zf-line);border-radius:8px;padding:16px}.zeiss-feedback-page .review-editor-modal__header,.zeiss-feedback-page .review-editor-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.zeiss-feedback-page .review-editor-modal__header{padding-bottom:16px;border-bottom:1px solid rgba(16,35,52,.08)}.zeiss-feedback-page .review-editor-modal__header h2{margin:6px 0 0;font-size:18px}.zeiss-feedback-page .review-editor-modal__body{flex:1;min-height:0;overflow-y:auto;padding:20px 2px}.zeiss-feedback-page .review-editor-modal__footer{padding-top:16px;border-top:1px solid rgba(16,35,52,.08)}.zeiss-feedback-page .review-editor-modal__footer .review-actions{width:100%}.zeiss-feedback-page .share-public-comment-editor{display:flex;flex-direction:column;gap:10px}.zeiss-feedback-page .share-public-comment-editor__textarea{width:100%;min-height:280px;padding:10px 12px;border:1px solid rgba(16,35,52,.12);border-radius:8px;resize:vertical;font:inherit;line-height:1.55}.zeiss-feedback-page .share-public-comment-editor__meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.zeiss-feedback-page .review-actions{display:flex;justify-content:flex-end;gap:10px}.zeiss-feedback-page .feedback-toast{position:fixed;left:50%;top:20px;z-index:1100;max-width:min(420px,calc(100vw - 32px));padding:11px 16px;border:1px solid rgba(16,45,181,.22);border-left:4px solid var(--zf-brand);border-radius:8px;background:#fff;color:var(--zf-text);font-size:.92rem;font-weight:600;line-height:1.4;box-shadow:0 12px 28px #10233429;pointer-events:none;transform:translate(-50%)}@media (max-width: 900px){.zeiss-feedback-page .share-public-item__actions{flex-wrap:wrap}.zeiss-feedback-page .share-public-comment-inline{width:100%;margin-left:0}.zeiss-feedback-page .comment-count{margin-left:auto}}@media (max-width: 640px){.zeiss-feedback-page .wrap{padding:12px}.zeiss-feedback-page .feedback-toast{top:12px}.zeiss-feedback-page .share-public-comment-inline{flex-wrap:wrap}.zeiss-feedback-page .share-public-comment-inline__input{flex-basis:100%}.zeiss-feedback-page .review-editor-modal{padding:12px}.zeiss-feedback-page .review-editor-modal__header,.zeiss-feedback-page .review-editor-modal__footer{flex-direction:column;align-items:flex-start}}.zeiss-feedback-page .hero{display:block}.zeiss-feedback-page .hero .muted{display:block;margin:0}.zeiss-feedback-page .hero h1{max-width:none;margin:8px 0;font-size:2em;line-height:normal;letter-spacing:normal;white-space:nowrap;overflow-wrap:normal}@media (max-width: 640px){.zeiss-feedback-page .hero h1{font-size:clamp(1.35rem,6vw,2em)}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--page-bg, #f5f6f8)}.login-form{width:100%;max-width:380px;padding:40px 32px 36px;background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014}.login-form__header{display:flex;flex-direction:column;gap:2px;margin-bottom:28px;text-align:center}.login-form__field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.login-form__label{font-size:13px;font-weight:600;color:var(--text-secondary, #5a6270)}.login-form__input{padding:10px 14px;font-size:15px;border:1px solid rgba(16,35,52,.15);border-radius:8px;outline:none;transition:border-color .15s}.login-form__input:focus{border-color:var(--brand, #0078d4);box-shadow:0 0 0 2px #0078d41f}.login-form__submit{width:100%;margin-top:8px;padding:12px;font-size:15px}.topbar__user{display:flex;align-items:center;gap:12px}.topbar__email{font-size:13px;color:var(--text-secondary, #5a6270)}.topbar__logout{padding:6px 14px;font-size:13px;font-weight:500;color:var(--text-secondary, #5a6270);background:transparent;border:1px solid rgba(16,35,52,.12);border-radius:6px;cursor:pointer;transition:background .15s,color .15s}.topbar__logout:hover{background:#1023340a;color:var(--text-primary, #102334)}
