:root{font-family:Hiragino Sans,Yu Gothic,Meiryo,sans-serif;color:#1f2530;background:radial-gradient(circle at top left,rgba(212,183,132,.14),transparent 32%),radial-gradient(circle at bottom right,rgba(63,109,96,.1),transparent 28%),linear-gradient(180deg,#f4efe7,#efede8 45%,#eceae5);line-height:1.6;--ink: #1f2530;--muted: #667085;--brand: #244d43;--brand-deep: #19362f;--accent: #b9854d;--paper: rgba(255, 252, 247, .96);--paper-soft: rgba(247, 242, 233, .9);--line: rgba(31, 37, 48, .1);--line-strong: rgba(36, 77, 67, .18);--success: #1f6a4c;--success-soft: #e7f4ec;--danger: #b6484e;--danger-soft: #fdeced;--warn: #97622c;--warn-soft: #fbf0e1;--shadow-lg: 0 24px 60px rgba(31, 37, 48, .08);--shadow-md: 0 14px 36px rgba(31, 37, 48, .06);--shadow-sm: 0 6px 16px rgba(31, 37, 48, .05)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink)}a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:.16em}code{font-family:SFMono-Regular,Consolas,monospace;font-size:.92em;padding:.08rem .34rem;border-radius:.45rem;background:#244d4314}pre{margin:0}.app-shell{position:relative;min-height:100vh;display:flex;flex-direction:column}.ambient{position:fixed;border-radius:999px;pointer-events:none;filter:blur(12px);z-index:0}.ambient-a{top:-8rem;left:-9rem;width:22rem;height:22rem;background:radial-gradient(circle,rgba(190,146,83,.16),transparent 72%)}.ambient-b{right:-10rem;top:8rem;width:26rem;height:26rem;background:radial-gradient(circle,rgba(56,95,83,.12),transparent 72%)}.top-nav{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:1rem 1.5rem .85rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f4eee0;border-bottom:1px solid rgba(31,37,48,.08)}.brand-block{display:flex;align-items:center;gap:.9rem}.brand-mark{width:2.65rem;height:2.65rem;display:grid;place-items:center;border-radius:.9rem;background:#1d2a3a;color:#f6efe2;font-weight:800;font-size:1.1rem;box-shadow:var(--shadow-sm)}.top-nav h1{margin:0;font-size:1.12rem;line-height:1.2}.eyebrow{display:block;margin:0 0 .3rem;color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.page-switcher{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center}.page-tab{border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:.45rem .15rem .55rem;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;transition:color .16s ease,border-color .16s ease}.page-tab:hover{color:var(--ink)}.page-tab.active{color:var(--ink);border-color:var(--brand)}.top-nav-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.85rem}.user-summary{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.user-summary-label{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}main.page{position:relative;z-index:1;flex:1;width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:1.3rem 0 2.2rem}.page-centered{display:grid;align-items:center}.page-stack{display:flex;flex-direction:column;gap:1rem}.page-stack-review{gap:.85rem;min-height:0;overflow:hidden}body.review-density-mode .top-nav{gap:1rem;padding:.75rem 1rem .62rem}body.review-density-mode .brand-mark{width:2.35rem;height:2.35rem;border-radius:.78rem;font-size:1rem}body.review-density-mode .top-nav h1{font-size:1.02rem}body.review-density-mode .page-tab{padding:.35rem .12rem .45rem}body.review-density-mode main.page{width:min(1280px,calc(100% - 1.25rem));padding:.85rem 0 1rem}.hero-panel{position:relative;display:grid;gap:1.1rem;padding:1.35rem 1.4rem 1.3rem 1.6rem;border-radius:1.5rem;background:linear-gradient(180deg,#fffdf9fa,#f8f4eceb);border:1px solid var(--line);box-shadow:var(--shadow-md)}.hero-panel:before{content:"";position:absolute;top:1rem;bottom:1rem;left:.9rem;width:4px;border-radius:999px;background:linear-gradient(180deg,var(--brand),rgba(36,77,67,.1))}.hero-panel-copy,.workflow-strip,.hero-points{position:relative;z-index:1}.hero-panel h2,.auth-hero h1{margin:0 0 .7rem;line-height:1.18;font-size:clamp(1.8rem,2.8vw,2.65rem)}.hero-copy{margin:0;max-width:58rem;color:var(--muted)}.workflow-strip{display:grid;gap:.8rem;grid-template-columns:repeat(3,minmax(0,1fr))}.workflow-step,.hero-point,.upload-panel,.pdf-source-item,.document-result,.profile-highlight,.loading-panel{background:#ffffffad;border:1px solid rgba(31,37,48,.08);border-radius:1.1rem;padding:.95rem 1rem;box-shadow:var(--shadow-sm)}.workflow-step span{display:inline-block;margin-bottom:.45rem;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.workflow-step strong,.hero-point strong{display:block;margin-bottom:.18rem;font-size:1.05rem}.workflow-step p,.hero-point span{margin:0;color:var(--muted)}.card{background:var(--paper);border:1px solid var(--line);border-radius:1.35rem;padding:1.15rem 1.2rem;box-shadow:var(--shadow-sm)}.card-tone{background:linear-gradient(180deg,#fffdf9fa,#f9f5edeb)}.card-spotlight{background:linear-gradient(180deg,#faf8f4fa,#f4f1eaf0)}.card-result{background:linear-gradient(180deg,#fffdf9fa,#faf6eff0)}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.section-heading h2,.section-heading h3,.auth-card h2,.modal h3{margin:0;font-size:1.35rem;line-height:1.2}.muted{color:var(--muted)}.compact{margin-top:.16rem}.field-note{margin:0;color:var(--muted);font-size:.84rem}.field-note-warn{color:var(--danger)}.notice-banner{margin:0;padding:.9rem 1rem;border-radius:1rem;border:1px solid transparent;font-weight:700}.notice-info{background:#eff5f3f0;border-color:#244d431f;color:var(--brand)}.notice-error{background:var(--danger-soft);border-color:#b6484e24;color:var(--danger)}.notice-success{background:var(--success-soft);border-color:#1f6a4c24;color:var(--success)}.toast-viewport{position:fixed;top:calc(5.35rem + env(safe-area-inset-top));right:1.25rem;z-index:30;display:flex;flex-direction:column;gap:.75rem;width:min(28rem,calc(100vw - 2rem));pointer-events:none}.toast-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding:.9rem 1rem;border-radius:1rem;border:1px solid rgba(31,37,48,.1);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto}.toast-banner-info{background:#e4eff5f5;color:#20435a}.toast-banner-success{background:#e7f4ecf7;color:#1f6a4c}.toast-banner-warn{background:#fbf0e1fa;color:#7d4e1f}.toast-dismiss{border:none;background:transparent;color:inherit;font:inherit;font-weight:700;line-height:1;cursor:pointer;padding:.1rem}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.18rem .7rem;border-radius:999px;background:#b9854d1f;border:1px solid rgba(185,133,77,.18);color:var(--warn);font-size:.78rem;font-weight:800}.status-pill-muted{background:#1f25300d;border-color:#1f253014;color:var(--muted)}.status-pill-warn{background:#b9854d29;border-color:#b9854d3d}.page-stack-review .status-pill{min-height:1.7rem;padding:.1rem .58rem;font-size:.72rem}.summary-grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.summary-tile{border-radius:1rem;padding:.9rem .95rem;border:1px solid rgba(31,37,48,.08);background:var(--paper-soft);display:flex;flex-direction:column;gap:.22rem}.summary-tile strong{font-size:1.4rem;line-height:1}.summary-tile span{color:var(--muted);font-size:.84rem}.summary-tile-brand strong{color:var(--brand)}.summary-tile-danger{background:#fdecedf5;border-color:#b6484e1a}.summary-tile-danger strong{color:var(--danger)}.summary-tile-warm{background:#fbf0e1f5;border-color:#97622c14}.summary-tile-warm strong{color:var(--warn)}.workspace-grid,.dual-column,.result-layout{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.check-layout{display:grid;gap:1.2rem;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.review-summary-bar{padding:.9rem 1rem}.review-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.6rem .9rem;align-items:center;padding:.58rem .72rem;border-radius:1rem;border:1px solid rgba(31,37,48,.08);background:#fffcf7f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);position:sticky;top:1rem;z-index:50}.review-toolbar-label{color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}.review-toolbar-source{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;align-items:center}.review-toolbar-status,.review-toolbar-badges,.review-toolbar-actions{display:flex;align-items:center;gap:.4rem}.review-toolbar-status,.review-toolbar-actions{justify-content:flex-end}.review-toolbar-actions>a,.review-toolbar-actions>button{min-height:2.15rem;padding:.38rem .72rem;border-radius:.78rem;font-size:.92rem}.review-summary-header,.review-summary-body,.review-summary-badges,.review-summary-actions,.review-source-group,.collapsible-card-meta{display:flex;flex-wrap:wrap;gap:.65rem}.review-summary-header,.review-summary-body{display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:initial;align-items:start;gap:.75rem 1rem}.review-summary-header h3,.review-panel-header h3,.collapsible-card-header h3{margin:0;font-size:1.22rem;line-height:1.2}.review-summary-body{margin-top:.7rem}.review-source-group{flex:1;min-width:0;flex-direction:column;gap:.35rem}.review-summary-actions{align-items:center;justify-content:flex-end;gap:.5rem;align-self:center}.review-summary-badges{justify-content:flex-end}.review-summary-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.45rem .8rem;border-radius:.85rem;border:1px solid rgba(31,37,48,.12);background:#ffffffb8;color:var(--ink);text-decoration:none}.review-source-list{display:flex;gap:.55rem;overflow-x:auto;padding-bottom:.2rem}.review-source-list-compact{gap:.35rem;padding-bottom:0}.review-source-chip{min-width:12rem;padding:.65rem .8rem;border-radius:.95rem;border:1px solid rgba(31,37,48,.12);background:#ffffffad;color:var(--ink);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.review-source-chip:hover,.review-source-chip:focus-visible{transform:translateY(-1px);border-color:#244d4347;box-shadow:var(--shadow-sm)}.review-source-chip-compact{min-width:0;max-width:min(22rem,100%);padding:.4rem .62rem;border-radius:.78rem}.review-source-chip.active{border-color:#244d4359;background:#244d431f}.review-source-name{display:block;font-weight:700}.review-source-chip-compact .review-source-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}.review-source-meta{display:block;margin-top:.15rem;color:var(--muted);font-size:.8rem}.review-workspace{display:grid;grid-template-columns:minmax(16.5rem,.72fr) minmax(0,1.58fr);gap:.7rem;flex:1 1 auto;height:auto;min-height:0}.review-issue-panel,.review-preview-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.review-issue-panel{position:sticky;top:5.5rem;max-height:calc(100vh - 7rem)}.page-stack-review .card{padding:.88rem .92rem;border-radius:1.08rem}.review-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;margin-bottom:.45rem}.review-panel-header .status-pill{max-width:min(100%,19rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-stack-review .review-panel-header h3{font-size:1.08rem}.check-right-stack{display:flex;flex-direction:column;gap:1rem}.card-preview{position:sticky;top:5.5rem;align-self:start}.preview-surface{margin-top:.85rem}.pdf-preview-surface-inner{margin-top:.5rem;border-radius:1rem;overflow:hidden;border:1px solid rgba(31,37,48,.08);background:#ffffff73}.notice-error-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem}.notice-error-row .notice-banner{flex:1;min-width:min(100%,280px)}.import-heading-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.6rem}.problem-line-expand,.extraction-issues-toggle{margin-top:.65rem;width:fit-content}.review-issue-list{flex:1;min-height:0;overflow:auto;padding-right:.15rem}.llm-primary-pane{margin-top:1rem}.llm-documents{display:flex;flex-direction:column;gap:.5rem;margin-top:.65rem}.llm-doc-block{border-radius:.85rem;border:1px solid rgba(31,37,48,.08);padding:.35rem .75rem;background:#ffffffa6}.llm-doc-block summary{cursor:pointer;font-weight:700}.llm-line-list{margin-top:.5rem;padding-left:1rem}.history-detail-body{margin-top:.5rem}.history-detail-meta{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0 0 1rem;font-size:.92rem}.history-detail-meta dt{margin:0;color:var(--muted);font-weight:700}.history-detail-meta dd{margin:0}.history-detail-status{margin-bottom:1rem}.history-detail-subheading{margin:0 0 .5rem;font-size:1rem}.history-detail-raw{margin-top:1.25rem;border-radius:.85rem;border:1px solid rgba(31,37,48,.08);padding:.5rem .75rem;background:#ffffff80}.history-detail-raw summary{cursor:pointer;font-weight:700;color:var(--muted);font-size:.88rem}.preview-placeholder{margin-top:.85rem;padding:1.4rem;border-radius:1rem;border:1px dashed rgba(31,37,48,.2);background:#fff9;color:var(--muted);text-align:center}.problem-line-panel{margin-top:.9rem;padding:.9rem;border-radius:.9rem;border:1px solid rgba(31,37,48,.08);background:#ffffffb8}.problem-line-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem}.problem-line-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.42rem}.problem-line-item{display:block}.problem-line-index{font-weight:800;color:var(--brand);font-size:.9rem}.problem-line-button{width:100%;display:grid;grid-template-columns:auto 1fr;gap:.52rem;align-items:flex-start;padding:.48rem .58rem;border-radius:.72rem;border:1px solid rgba(31,37,48,.08);background:#f8f2e99e;color:var(--ink);text-align:left;cursor:pointer}.problem-line-button:hover,.problem-line-button:focus-visible{border-color:#244d4347;background:#f5ede2e6}.problem-line-button.active{border-color:#244d4352;background:#244d431f;box-shadow:inset 0 0 0 1px #244d431f}.problem-line-content{min-width:0}.problem-line-text{font-weight:700;font-size:.98rem;line-height:1.34;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.problem-line-meta{margin-top:.14rem;color:var(--muted);font-size:.8rem;display:-webkit-box;overflow:hidden;-webkit-line-clamp:1;-webkit-box-orient:vertical}.card-chat .chat-log{display:flex;flex-direction:column;gap:.65rem;min-height:180px;max-height:320px;overflow:auto;padding:.85rem;border-radius:.9rem;border:1px solid rgba(31,37,48,.08);background:#ffffffbf}.chat-bubble{max-width:100%;padding:.6rem .75rem;border-radius:.85rem;font-size:.92rem;line-height:1.5;white-space:pre-wrap}.chat-user{align-self:flex-end;background:#244d432e;color:var(--ink)}.chat-assistant{align-self:flex-start;background:#1f253014;color:var(--ink)}.chat-input-row{margin-top:.75rem;display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center}.upload-stack,.stack-form,.document-result-list,.pdf-source-list,.hero-points{display:flex;flex-direction:column;gap:.85rem}.profile-highlight{display:flex;justify-content:space-between;align-items:center;gap:1rem}.profile-highlight-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem;color:var(--muted)}.pdf-source-item{justify-content:space-between;align-items:center;gap:1rem}.pdf-source-meta{display:flex;flex-direction:column;gap:.12rem}.editor-toolbar,.action-row,.inline-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.action-row{justify-content:space-between;margin-top:.8rem}.collapsible-card{padding:.95rem 1.05rem;min-height:0}.review-support-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:.85rem;align-items:start}.review-support-grid .collapsible-card{height:100%}.collapsible-card-header{width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.collapsible-card-body{margin-top:.9rem;padding-top:.95rem;border-top:1px solid rgba(31,37,48,.08)}.page-stack-review .collapsible-card-body{max-height:min(30vh,20rem);overflow:auto;padding-right:.2rem}.analysis-detail-grid{display:grid;gap:1rem}.analysis-detail-section{display:flex;flex-direction:column;gap:1rem}label{display:block;margin-bottom:.34rem;font-weight:700;color:#273142}input[type=email],input[type=password],input[type=text],input[type=file],select,textarea{width:100%;padding:.7rem .8rem;border:1px solid rgba(31,37,48,.12);border-radius:.95rem;font:inherit;color:var(--ink);background:#ffffffeb;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#244d4347;box-shadow:0 0 0 4px #244d4314}textarea{min-height:22rem;resize:vertical;font-family:SFMono-Regular,Consolas,monospace;font-size:.88rem}.editor-textarea{background:#fffffff5}button{font:inherit}button.primary,button.ghost,.file-upload-label{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:.62rem 1rem;border-radius:.95rem;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}button.primary{border:none;background:#1d2a3a;color:#fffaf0;box-shadow:var(--shadow-sm)}button.primary:hover:not(:disabled){transform:translateY(-1px);background:#172231}button.ghost{border:1px solid rgba(31,37,48,.12);background:#ffffffb3;color:var(--ink)}button.ghost:hover:not(:disabled){transform:translateY(-1px);border-color:#244d432e}.ghost-on-dark{background:#ffffff7a}.primary-wide{width:100%}button.primary:disabled,button.ghost:disabled{opacity:.56;cursor:not-allowed;transform:none}.file-upload-label{width:fit-content;border:1px solid rgba(31,37,48,.12);background:#ffffffdb;color:var(--ink);font-weight:700;box-shadow:var(--shadow-sm)}.file-upload-label.alt{background:#f8f2e7e6}.visually-hidden-file{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ok,.ng{font-weight:800}.ok{color:var(--success)}.ng{color:var(--danger)}.llm-decision{font-weight:800}.llm-ok{color:var(--success)}.llm-review{color:var(--warn)}.llm-reject{color:var(--danger)}.digest-list{margin:0;padding-left:1.15rem}.digest-list li{margin-bottom:.38rem}.compact-list li:last-child,.digest-list li:last-child{margin-bottom:0}.data-table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{padding:.76rem .65rem;border-bottom:1px solid rgba(31,37,48,.07);text-align:left;vertical-align:middle}.hover-table tbody tr{transition:background-color .15s ease,box-shadow .15s ease}.hover-table tbody tr:hover{background-color:#fffffff2;box-shadow:0 4px 12px #1f25300d;z-index:1;position:relative}.hover-table .row-actions{opacity:0;transform:translate(5px);transition:opacity .15s ease,transform .15s ease;display:flex;justify-content:flex-end}.hover-table tbody tr:hover .row-actions{opacity:1;transform:translate(0)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s ease;font-size:1.1rem}.icon-button:hover{background:#1f25300d}.icon-button.danger{color:var(--danger)}.icon-button.danger:hover{background:#db3a4414;border-color:#db3a4433}.icon-button[disabled]{opacity:.5;cursor:not-allowed}th{color:var(--muted);font-size:.79rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.table-subtext{margin-top:.18rem;color:#7b8494;font-size:.78rem}.maintenance-bulk-actions{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#db3a440d;border:1px solid rgba(219,58,68,.15);border-radius:.5rem;margin-top:1rem;font-size:.9rem;font-weight:600;color:var(--danger)}.maintenance-bulk-actions button{margin-left:auto}.checkbox-cell{width:2rem;text-align:center}.table-text-input{box-sizing:border-box;width:100%;min-width:6rem;font:inherit}.digest-cell{max-width:20rem;word-break:break-word}.maintenance-section-stack{display:flex;flex-direction:column;gap:1rem}.maintenance-source-grid{display:flex;flex-direction:column;gap:1.5rem}.maintenance-subtle-panel{padding:1rem;border:1px solid rgba(31,37,48,.08);border-radius:1rem;background:#fffcf6bf}.maintenance-chip-row{display:flex;flex-wrap:wrap;gap:.7rem}.maintenance-source-chip{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:10rem;padding:.7rem .9rem;border-radius:1rem;border:1px solid rgba(31,37,48,.12);background:#ffffffdb;color:var(--ink);cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.maintenance-source-chip:hover{transform:translateY(-1px);border-color:#b9854d66;box-shadow:0 10px 24px #533e1e14}.maintenance-source-chip.active{border-color:#b9854d73;background:#b9854d29}.maintenance-chip-meta,.maintenance-card-meta{display:inline-flex;flex-wrap:wrap;gap:.5rem;align-items:center}.maintenance-chip-meta{font-size:.78rem;color:var(--muted)}.maintenance-filter-row{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0}.maintenance-filter-button{padding:.55rem .95rem;border-radius:999px;border:1px solid rgba(31,37,48,.1);background:#ffffffe0;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.maintenance-filter-button.active{border-color:#b9854d5c;background:#b9854d29;color:var(--ink)}.maintenance-proposal-grid,.maintenance-source-groups{display:grid;gap:1rem;margin-top:1rem}.maintenance-proposal-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.maintenance-proposal-card,.maintenance-source-group-card{padding:1rem;border-radius:1.15rem;border:1px solid rgba(31,37,48,.08);background:#fffdf9eb;box-shadow:0 10px 30px #4e3a1e0d}.maintenance-page-stack{gap:1rem}.maintenance-hero-compact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-radius:1rem;background:#fffc;border:1px solid rgba(31,37,48,.08);box-shadow:var(--shadow-sm);margin-bottom:.5rem}.maintenance-hero-compact-status{display:flex;align-items:center;gap:.75rem}.maintenance-hero-compact-status strong{margin-top:1px}.maintenance-hero-compact-stats{display:flex;align-items:center;gap:.8rem;color:var(--muted);font-size:.85rem}.maintenance-hero-compact-stats strong{color:var(--ink)}.maintenance-hero-compact-divider{width:1px;height:14px;background:#1f253026}.maintenance-shell{padding:.8rem}.maintenance-tabbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1.5rem;padding:.5rem 1rem 0;margin:-.8rem -.8rem .85rem;border-bottom:2px solid rgba(31,37,48,.08);position:sticky;top:0;z-index:10;background:#fffdf9f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.maintenance-tab-button{padding:.6rem .2rem .5rem;border:none;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font:inherit;font-weight:800;font-size:1.05rem;cursor:pointer;transition:color .15s ease,border-color .15s ease;margin-bottom:-2px}.maintenance-tab-button:hover{color:var(--ink);border-bottom-color:#1f253033}.maintenance-tab-button.active{color:var(--brand);border-bottom-color:var(--brand)}.tab-dirty-dot{display:inline-block;width:8px;height:8px;background-color:var(--warn);border-radius:50%;margin-right:6px;vertical-align:middle;transform:translateY(-2px)}.sidebar-dirty-dot{display:inline-block;width:8px;height:8px;background-color:var(--warn);border-radius:50%;margin-right:6px;vertical-align:middle;transform:translateY(-1px)}@keyframes pulse-animation{0%{box-shadow:0 0 #4d66eb66}70%{box-shadow:0 0 0 6px #4d66eb00}to{box-shadow:0 0 #4d66eb00}}.pulse{animation:pulse-animation 2s infinite}.maintenance-workspace{display:grid;gap:.9rem;grid-template-columns:minmax(220px,.75fr) minmax(0,2fr);align-items:start}.maintenance-release-layout{display:grid;gap:.9rem;grid-template-columns:minmax(0,1.38fr) minmax(320px,.88fr);align-items:start}.maintenance-release-main,.maintenance-release-side,.maintenance-detail-panel,.maintenance-master-panel{display:flex;flex-direction:column;gap:.9rem;min-width:0}.maintenance-master-panel{padding:1rem;border-radius:1.2rem;border:1px solid rgba(31,37,48,.08);background:linear-gradient(180deg,#fbf9f5f5,#f7f3ebf0)}.maintenance-master-panel-operational{background:linear-gradient(180deg,#f7fbfaf5,#f0f6f4f0)}.maintenance-detail-panel{min-height:0}.maintenance-pane-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.maintenance-pane-heading h3,.maintenance-pane-heading h4{margin:0}.maintenance-search-box,.maintenance-release-preview,.maintenance-inline-card{display:flex;flex-direction:column;gap:.45rem}.maintenance-list-stack{display:flex;flex-direction:column;gap:.65rem;min-width:0}.maintenance-set-card{display:flex;flex-direction:column;gap:.45rem;width:100%;padding:.85rem .9rem;border-radius:1rem;border:1px solid rgba(31,37,48,.1);background:#ffffffd6;color:var(--ink);text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.maintenance-set-card:hover{transform:translateY(-1px);border-color:#244d432e;box-shadow:0 12px 26px #244d430f}.maintenance-set-card.active{border-color:#244d434d;background:#244d431a}.maintenance-set-card-operational.active{border-color:#1c6a5c3d;background:#1c6a5c14}.maintenance-set-card-head,.maintenance-set-card-stats,.maintenance-file-row,.maintenance-proposal-detail-head,.maintenance-editor-actions,.maintenance-release-row,.maintenance-modal-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.maintenance-set-card-stats{flex-wrap:wrap;color:var(--muted);font-size:.84rem}.maintenance-detail-card{padding:1rem;border-radius:1.2rem;border:1px solid rgba(31,37,48,.08);background:#fffdf9f5;box-shadow:var(--shadow-sm)}.maintenance-detail-card.surface-dark{background:#1f253005;border:1px solid rgba(31,37,48,.1)}.maintenance-pane-heading-styled{display:flex;align-items:center;gap:.5rem;padding:.5rem .8rem;background:#ffffff80;border-radius:.5rem;margin:-.2rem -.2rem 1rem;border-left:3px solid var(--brand)}.maintenance-pane-heading-styled h3{margin:0;font-size:1.1rem}.sticky-footer-actions{position:sticky;bottom:0;z-index:50;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1rem;margin-top:1rem;border-top:1px solid rgba(31,37,48,.08);border-radius:1rem;box-shadow:0 -4px 12px #1f25300d;display:flex;align-items:center;justify-content:space-between}.maintenance-accordion-panel{transition:all .2s ease}.maintenance-accordion-summary{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.maintenance-accordion-summary::-webkit-details-marker{display:none}.maintenance-accordion-summary:hover{opacity:.8}.maintenance-detail-card-operational{background:#f8fcfbf5}.maintenance-form-grid,.maintenance-detail-grid{display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-form-grid-compact,.maintenance-detail-grid-compact,.maintenance-filter-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-filter-grid{display:grid;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.maintenance-divider{height:1px;background:#1f253014;margin:1rem 0}.maintenance-inline-card{min-height:100%;justify-content:center;padding:.82rem .9rem;border-radius:1rem;border:1px solid rgba(31,37,48,.08);background:#ffffffbf}.maintenance-file-table,.maintenance-release-stack{display:flex;flex-direction:column;gap:.75rem}.maintenance-file-row{padding:.75rem .85rem;border-radius:.95rem;border:1px solid rgba(31,37,48,.08);background:#ffffffb8}.maintenance-file-select,.maintenance-proposal-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.7rem;align-items:flex-start;min-width:0}.maintenance-file-select strong,.maintenance-proposal-row strong{display:block}.maintenance-review-workspace{display:grid;gap:.9rem;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);min-width:0}.maintenance-proposal-list,.maintenance-proposal-rows{display:flex;flex-direction:column;gap:.65rem}.maintenance-proposal-nav{width:100%;padding:.8rem .85rem;border-radius:1rem;border:1px solid rgba(31,37,48,.1);background:#ffffffd1;color:var(--ink);text-align:left;cursor:pointer}.maintenance-proposal-nav.active{border-color:#b9854d47;background:#b9854d21}.maintenance-proposal-detail{display:flex;flex-direction:column;gap:.9rem;min-width:0}.maintenance-proposal-section{padding:.85rem;border-radius:1rem;border:1px solid rgba(31,37,48,.08);background:#ffffffad}.maintenance-proposal-row{padding:.7rem .75rem;border-radius:.9rem;border:1px solid rgba(31,37,48,.08);background:#fffdf9eb}.maintenance-editor-actions{margin-top:1rem;padding-top:.9rem;border-top:1px solid rgba(31,37,48,.08);position:sticky;bottom:0;background:inherit}.maintenance-collapsible{margin-top:1rem;padding:.85rem .9rem;border-radius:1rem;border:1px solid rgba(31,37,48,.08);background:#ffffff9e}.maintenance-collapsible summary{cursor:pointer;font-weight:800}.maintenance-collapsible[open] summary{margin-bottom:.8rem}.maintenance-subtle-panel-operational{background:#f1f9f7e0}.maintenance-release-card{width:100%}.maintenance-release-row{align-items:center}.maintenance-release-preview{margin-top:1rem;padding:.85rem .9rem;border-radius:1rem;border:1px solid rgba(31,37,48,.08);background:#ffffffc2}.maintenance-release-preview h4{margin:0}.maintenance-release-preview dl,.maintenance-confirm-summary dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem .85rem;margin:0}.maintenance-release-preview dt,.maintenance-confirm-summary dt{color:var(--muted);font-weight:700}.maintenance-release-preview dd,.maintenance-confirm-summary dd{margin:0;display:grid;gap:.18rem}.maintenance-modal{width:min(34rem,100%)}.maintenance-modal-body{display:grid;gap:.8rem}.maintenance-modal-actions{margin-top:1rem;justify-content:flex-end;flex-wrap:wrap}.maintenance-danger-button{border:none;background:var(--danger);color:#fffaf0}.maintenance-danger-button:hover:not(:disabled){transform:translateY(-1px);background:#9f3940}.result-overview,.document-result-header,.modal-header,.auth-card-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.result-status{min-width:10.5rem;padding:.85rem .95rem;border-radius:1rem;display:flex;flex-direction:column;align-items:flex-end;gap:.18rem;text-align:right}.result-status span{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.result-status strong{font-size:1.45rem}.result-status small{color:var(--muted)}.result-status-ok{background:var(--success-soft);color:var(--success)}.result-status-ng{background:var(--danger-soft);color:var(--danger)}.result-pane{padding:1rem;border-radius:1rem;background:#ffffffad;border:1px solid rgba(31,37,48,.08)}.result-pane h4{margin:0 0 .6rem}.auth-shell{justify-content:center}.auth-layout{display:grid;gap:1rem;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}.auth-hero,.auth-card{border-radius:1.45rem;padding:1.35rem;border:1px solid var(--line);box-shadow:var(--shadow-md)}.auth-hero{background:linear-gradient(180deg,#243445,#1d2a3a);color:#fff9ef}.auth-hero .hero-copy,.auth-hero .hero-point span{color:#fff9efc7}.auth-card{background:var(--paper)}.demo-switches{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 .75rem}.demo-switches button.ghost.is-selected{border-color:#244d4373;background:#244d431a;color:var(--ink);font-weight:600}.loading-panel{width:min(340px,100%);margin:0 auto;display:grid;place-items:center;gap:.85rem;background:var(--paper)}.loading-mark{width:3.3rem;height:3.3rem;border-radius:999px;border:4px solid rgba(36,77,67,.14);border-top-color:var(--brand);animation:spin .9s linear infinite}.loading-dot{width:.9rem;height:.9rem;border-radius:999px;background:var(--brand);box-shadow:0 0 0 6px #244d431f;animation:pulse 1.2s ease-in-out infinite}.upload-progress{display:flex;align-items:center;gap:.75rem}.pdf-load-progress{align-items:flex-start}.upload-progress-body{display:flex;flex-direction:column;gap:.45rem;width:100%}.pdf-load-progress-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.pdf-load-progress-note{margin:0;color:var(--muted);font-size:.85rem;font-weight:600}.progress-track{width:100%;height:.5rem;border-radius:999px;background:#244d431f;overflow:hidden;position:relative}.progress-bar{position:absolute;left:-40%;top:0;height:100%;width:40%;border-radius:inherit;background:linear-gradient(90deg,#244d4359,#244d43d9);animation:progress-slide 1.2s ease-in-out infinite}.history-hero-grid{align-self:end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:1rem;background:#171c2347;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{width:min(960px,100%);max-height:90vh;overflow:auto;padding:1.2rem;border-radius:1.35rem;background:#fffdf9fa;border:1px solid rgba(31,37,48,.08);box-shadow:var(--shadow-lg)}.modal-pdf{width:min(1120px,100%)}.modal pre{margin-top:1rem;padding:1rem;border-radius:1rem;background:#1f2b3b;color:#f4f0e8;font-size:.83rem;white-space:pre-wrap;word-break:break-word}.pdf-viewer-shell{margin-top:1rem;padding:1rem;border:1px solid rgba(31,37,48,.08);border-radius:1rem;background:linear-gradient(180deg,#f9f6f0e6,#f3eee4d1)}.review-preview-body{flex:1;min-height:0;overflow:hidden}.review-preview-body .pdf-viewer-shell{height:100%;margin-top:0;padding:0;border:none;border-radius:0;background:transparent;display:flex;flex-direction:column}.pdf-viewer-meta{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-bottom:.65rem}.review-preview-body .pdf-viewer-meta{margin-bottom:.5rem}.pdf-page-stack{display:flex;flex-direction:column;gap:.7rem;max-height:min(72vh,920px);overflow:auto;padding-right:.25rem}.review-preview-body .pdf-page-stack{flex:1;min-height:0;max-height:none}.pdf-page-card{padding:.55rem;border-radius:.82rem;background:#ffffffb8;border:1px solid rgba(31,37,48,.08)}.pdf-page-label{margin-bottom:.45rem;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pdf-page-viewport{position:relative;max-width:100%;overflow:hidden;border-radius:.85rem;border:1px solid rgba(31,37,48,.08);background:#f5f0e6}.pdf-page-viewport-inner{position:relative;transform-origin:top left}.pdf-page-image{display:block;width:100%;height:100%}.pdf-highlight-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:auto}.pdf-highlight-box{position:absolute;border-radius:.45rem;border:1px solid transparent;box-shadow:inset 0 0 0 1px #ffffff47;pointer-events:auto;cursor:help}.pdf-highlight-box:focus-visible{outline:2px solid rgba(31,37,48,.72);outline-offset:1px}.pdf-highlight-active{box-shadow:inset 0 0 0 1px #ffffff61,0 0 0 2px #1f25302e}.pdf-highlight-muted{opacity:.22}.pdf-highlight-critical{background:#b6484e57;border-color:#901e2661}.pdf-highlight-warn{background:#d4974357;border-color:#97622c57}.pdf-highlight-notice{background:#3979ad47;border-color:#1f588852}.pdf-highlight-base{background:#244d4338;border-color:#244d4342}.pdf-highlight-tooltip{position:fixed;z-index:1000;max-width:min(22rem,calc(100vw - 1rem));padding:.55rem .7rem;border-radius:.7rem;background:#1f2530f0;color:#fffaf2;font-size:.82rem;line-height:1.45;letter-spacing:.01em;box-shadow:0 12px 26px #1f253038;pointer-events:none;white-space:normal}.pdf-highlight-tooltip-above{transform:translate(-50%,calc(-100% - .5rem))}.pdf-highlight-tooltip-below{transform:translate(-50%,.5rem)}.pdf-highlight-tooltip-start.pdf-highlight-tooltip-above{transform:translateY(calc(-100% - .5rem))}.pdf-highlight-tooltip-start.pdf-highlight-tooltip-below{transform:translateY(.5rem)}.pdf-highlight-tooltip-end.pdf-highlight-tooltip-above{transform:translate(-100%,calc(-100% - .5rem))}.pdf-highlight-tooltip-end.pdf-highlight-tooltip-below{transform:translate(-100%,.5rem)}.review-preview-empty{flex:1;display:grid;place-items:center}.review-chat-fab{position:fixed;right:1rem;bottom:1rem;z-index:20;min-height:2.7rem;padding:.68rem 1rem;border:none;border-radius:999px;background:#1d2a3a;color:#f8f4ec;box-shadow:var(--shadow-md)}.modal-chat{width:min(34rem,100%);padding:.95rem 1rem 1rem}.modal-chat-body{margin-top:.75rem}.modal-chat .chat-log{max-height:min(52vh,28rem)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(.9);opacity:.7}50%{transform:scale(1);opacity:1}}@keyframes progress-slide{0%{left:-40%}50%{left:30%}to{left:100%}}@media(max-width:1040px){.page-stack-review{overflow:visible}body.review-density-mode .top-nav{gap:1.25rem;padding:.95rem 1rem .8rem}body.review-density-mode main.page{width:min(100% - 1rem,1180px);padding:1rem 0 1.4rem}.top-nav,.auth-layout,.check-layout,.review-workspace,.workspace-grid,.dual-column,.result-layout,.maintenance-source-grid,.maintenance-workspace,.maintenance-release-layout,.maintenance-form-grid,.maintenance-detail-grid,.maintenance-filter-grid,.maintenance-review-workspace,.workflow-strip,.review-support-grid{grid-template-columns:1fr}.review-toolbar{grid-template-columns:1fr;align-items:stretch}.review-toolbar-source{grid-template-columns:1fr}.review-toolbar-status,.review-toolbar-actions{justify-content:flex-start;flex-wrap:wrap}.maintenance-pane-heading,.maintenance-set-card-head,.maintenance-file-row,.maintenance-proposal-detail-head,.maintenance-editor-actions,.maintenance-release-row,.maintenance-modal-actions{flex-direction:column;align-items:stretch}.maintenance-shell{padding:.7rem}.maintenance-tabbar{overflow-x:auto;padding-bottom:.6rem}.maintenance-master-panel,.maintenance-detail-card{padding:.9rem}.page-switcher{justify-content:flex-start}.top-nav-meta,.user-summary,.review-summary-header,.review-summary-body,.review-summary-actions,.collapsible-card-header,.profile-highlight,.profile-highlight-meta,.pdf-source-item,.result-overview,.document-result-header,.modal-header,.auth-card-header{align-items:flex-start;justify-content:flex-start;flex-direction:column}.review-workspace{height:auto}.review-chat-fab{right:.75rem;bottom:.75rem}.review-issue-panel,.review-preview-panel{min-height:0}.review-preview-body .pdf-page-stack{max-height:min(72vh,720px)}.pdf-page-viewport{width:100%!important;height:auto!important}.card-preview{position:static}}@media(max-width:720px){.top-nav,body.review-density-mode .top-nav{padding:.95rem 1rem .8rem}.toast-viewport{top:calc(4.85rem + env(safe-area-inset-top));right:.5rem;left:.5rem;width:auto}main.page{width:min(100% - 1rem,1180px);padding:1rem 0 1.6rem}body.review-density-mode main.page{width:min(100% - 1rem,1180px);padding:1rem 0 1.6rem}.hero-panel,.card,.auth-hero,.auth-card{padding:1rem;border-radius:1.2rem}.page-switcher,.top-nav-meta,.review-summary-actions,.collapsible-card-meta,.demo-switches,.editor-toolbar,.action-row,.inline-actions,.page-tab,button.primary,button.ghost,.file-upload-label{width:100%}.action-row{flex-direction:column;align-items:stretch}}.upload-hero-container{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:2rem}.upload-hero-card{text-align:center;padding:4rem 3rem;border-radius:1.5rem;background:#ffffffd9;border:2px dashed rgba(31,37,48,.15);box-shadow:var(--shadow-md);transition:all .2s ease;width:min(100%,36rem)}.upload-hero-card:hover{border-color:var(--brand);background:#fffffff2;transform:translateY(-2px)}.upload-hero-icon{font-size:3rem;margin-bottom:1rem;opacity:.8}.upload-hero-card h2{font-size:1.6rem;margin:0 0 .8rem}.upload-hero-text{font-size:1.05rem;color:var(--muted);line-height:1.6;margin-bottom:1.5rem}.upload-hero-hints{display:flex;justify-content:center;gap:1.5rem;font-size:.85rem;color:var(--muted);font-weight:600;flex-wrap:wrap}.dropzone-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#eef5fff2;border:4px dashed var(--brand);border-radius:1.5rem;z-index:100;display:flex;justify-content:center;align-items:center;pointer-events:none}.dropzone-content{text-align:center;color:var(--brand);animation:pulse-animation 1.5s infinite}.dropzone-icon{font-size:4rem;display:block;margin-bottom:1rem}.page-stack.drag-active{position:relative}.problem-line-badge{display:inline-block;padding:.15rem .4rem;border-radius:.25rem;font-size:.72rem;font-weight:800;margin-right:.4rem;vertical-align:middle;transform:translateY(-1px)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warn{background:#fdc03b33;color:#c2410c}.badge-info{background:#4d66eb1a;color:var(--brand)}.badge-muted{background:#1f253014;color:var(--muted)}.problem-line-button.tone-danger{border-left:3px solid var(--danger);border-radius:0 .5rem .5rem 0}.problem-line-button.tone-warn{border-left:3px solid #ea580c;border-radius:0 .5rem .5rem 0}.problem-line-button.tone-info{border-left:3px solid var(--brand);border-radius:0 .5rem .5rem 0}.problem-line-button.active.tone-danger{background:#db3a440d;border-left-width:4px}.problem-line-button.active.tone-warn{background:#fdc03b1a;border-left-width:4px}.problem-line-button.active.tone-info{background:#4d66eb0d;border-left-width:4px}
