:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;color:#171717;background:#f6f7f8;font-synthesis:none;--border: #dedede;--muted: #6b7280;--panel: #ffffff;--primary: #1d4ed8;--primary-hover: #1e40af;--success: #15803d;--danger: #b91c1c;--warning: #a16207}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:14px;line-height:1.6}button,input{font:inherit}button{letter-spacing:0}a{color:inherit;text-decoration:none}h1{margin:0 0 5px;font-size:25px;line-height:1.25;letter-spacing:0}h2{margin:0;font-size:16px;letter-spacing:0}h3{margin:0 0 10px;font-size:14px;letter-spacing:0}h4{margin:18px 0 6px;font-size:12px}p{margin:0 0 12px}ul,ol{padding-left:20px}.app-header{min-height:62px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:700;white-space:nowrap}nav{display:flex;align-items:center;gap:5px;color:#525252}nav a,nav button{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:0;border-radius:6px;background:transparent;cursor:pointer}nav a:hover,nav button:hover,nav .router-link-active{color:#111827;background:#f1f5f9}main{width:min(1380px,100%);margin:0 auto;padding:28px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#eef2f7}.login-panel{width:min(390px,100%);padding:30px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 45px #0f172a17}.login-mark{width:48px;height:48px;display:grid;place-items:center;margin-bottom:18px;border-radius:8px;color:#fff;background:#1d4ed8}.login-panel p{color:var(--muted)}.login-panel .ui-button{width:100%;margin-top:18px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.page-heading p,.muted{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}.panel+.panel{margin-top:22px}.panel-heading{min-height:56px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 18px;border-bottom:1px solid #ececec}.panel-heading h2 span,.panel-heading>span{margin-left:7px;color:var(--muted);font-size:12px;font-weight:400}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.actions.end{justify-content:flex-end}.ui-button,.button-link{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 13px;border:1px solid transparent;border-radius:6px;color:#fff;background:var(--primary);cursor:pointer;font-weight:600;line-height:1.2}.ui-button:hover,.button-link:hover{background:var(--primary-hover)}.ui-button.outline,.button-link.outline{color:#262626;background:#fff;border-color:#cfcfcf}.ui-button.outline:hover,.button-link.outline:hover,.ui-button.ghost:hover{background:#f3f4f6}.ui-button.ghost{color:#404040;background:transparent}.ui-button.danger{background:#b91c1c}.ui-button:disabled{opacity:.5;cursor:default}.text-link,.back-link{color:#1d4ed8}.back-link{display:inline-block;margin-bottom:17px}label{display:block;margin:16px 0 6px;font-size:13px;font-weight:650}label span{margin-left:6px;color:var(--muted);font-size:12px;font-weight:400}input:not([type=checkbox]){width:100%;min-height:38px;padding:8px 11px;border:1px solid #cfcfcf;border-radius:6px;color:#171717;background:#fff}input:focus{outline:2px solid #93c5fd;outline-offset:1px;border-color:#60a5fa}.inline-search{display:flex;align-items:center;gap:8px}.inline-search input{width:210px;min-height:34px}.checkbox-label{display:flex;align-items:center;gap:8px;font-weight:400}.field-help{margin:7px 0 12px;color:var(--muted);font-size:12px}.settings-width{max-width:760px}.settings-form{padding:24px}.settings-actions{margin-top:25px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{padding:11px 18px;color:var(--muted);background:#fafafa;font-size:12px;font-weight:600}td{padding:15px 18px;border-top:1px solid #ededed;font-size:13px}tbody tr:hover td{background:#fbfdff}.align-right{text-align:right}.mono{max-width:260px;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.pagination{min-height:56px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 18px;border-top:1px solid #ededed;color:var(--muted);font-size:12px}.status{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border-radius:4px;color:#525252;background:#f1f1f1;font-size:12px}.status.completed{color:var(--success);background:#ecfdf3}.status.analyzing{color:#1d4ed8;background:#eff6ff}.status.failed{color:var(--danger);background:#fef2f2}.status.warning{color:var(--warning);background:#fffbeb}.error-box,.success-box{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px;padding:12px 15px;border:1px solid #fecaca;border-radius:6px;color:var(--danger);background:#fef2f2;overflow-wrap:anywhere}.success-box{display:block;color:var(--success);border-color:#bbf7d0;background:#f0fdf4}.empty{padding:56px 22px;text-align:center;color:var(--muted)}.empty h2{margin-bottom:6px;color:#404040}.detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;align-items:start}.chat-scroll{min-height:420px;max-height:calc(100vh - 240px);padding:21px;overflow-y:auto}.analysis-panel{display:flex;flex-direction:column;max-height:calc(100vh - 240px)}.analysis-panel .panel-heading{flex:none}.analysis-panel .analysis-content,.analysis-panel .empty{min-height:0;overflow-y:auto}.chat-message{max-width:87%;margin-bottom:22px;scroll-margin:28px;outline:none}.chat-message.sales{margin-left:auto}.message-meta{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:5px;color:var(--muted);font-size:11px}.sales .message-meta{justify-content:flex-end}.message-meta strong{color:#4b5563;font-weight:600}.bubble{padding:11px 14px;border:1px solid #e3e3e3;border-radius:8px;background:#fafafa;white-space:pre-wrap;overflow-wrap:anywhere}.sales .bubble{background:#eff6ff;border-color:#bfdbfe}.chat-message.marked .bubble{border-color:#f59e0b;background:#fffbeb}.chat-message.selected .bubble{outline:3px solid #fbbf24;outline-offset:2px}.evidence-label{display:block;margin-top:4px;color:var(--warning);font-size:11px;text-align:right}.image-button{display:block;padding:0;border:0;background:none;cursor:zoom-in}.chat-image{display:block;max-width:260px;max-height:260px;border-radius:6px}.media-download{display:inline-block;color:var(--primary);text-decoration:underline}.media-note{display:block;margin-top:4px;color:var(--muted);font-size:11px}.image-preview{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:32px;background:#000000b8;cursor:zoom-out}.image-preview img{max-width:100%;max-height:100%;border-radius:6px}.analysis-content{padding:20px}.analysis-section+.analysis-section{margin-top:22px;padding-top:22px;border-top:1px solid #e5e5e5}.strengths{color:var(--success)}.score{color:#9a6700;font-size:25px;font-weight:700;white-space:nowrap}.score.good{color:var(--success)}.score.low{color:var(--danger)}.score small{color:var(--muted);font-size:11px;font-weight:400}.issue-card{margin-bottom:15px;border:1px solid #e5e5e5;border-left:3px solid #60a5fa;border-radius:6px;overflow:hidden}.issue-card.medium{border-left-color:#eab308}.issue-card.high{border-left-color:#dc2626}.issue-card.active{outline:2px solid #d4d4d4;outline-offset:2px}.issue-heading{width:100%;display:flex;justify-content:space-between;gap:12px;padding:13px 15px;border:0;background:#fafafa;text-align:left;cursor:pointer}.issue-heading:hover{background:#f4f4f5}.issue-heading span,.issue-heading b{color:var(--muted);font-size:11px;font-weight:500}.issue-heading h3{margin:2px 0 0}.issue-body{padding:15px;font-size:13px}.issue-body p,.report-section p,dd{white-space:pre-wrap;overflow-wrap:anywhere}.original-quote{width:100%;padding:9px 11px;border:0;border-radius:4px;background:#f3f4f6;text-align:left;white-space:pre-wrap;cursor:pointer}.original-quote span{display:block;margin-bottom:3px;color:var(--muted);font-size:11px}.better-reply,.report-reply{padding:9px 11px;border-left:3px solid #60a5fa;background:#eff6ff;color:#1e3a8a}.better-reply h4{margin-top:0}.report-toolbar{max-width:900px;margin:0 auto 17px;display:flex;justify-content:space-between;align-items:center}.report-toolbar .back-link{margin:0}.report-sheet{max-width:900px;margin:auto;padding:42px 50px;border:1px solid var(--border);border-radius:8px;background:#fff}.report-eyebrow{color:var(--muted);font-size:12px}.report-header{padding-bottom:22px;border-bottom:2px solid #262626}.report-header h1{font-size:28px}.report-meta{display:flex;justify-content:space-between;gap:22px;margin-top:22px}.report-meta p{margin:4px 0;font-size:13px}.report-meta p>span{display:inline-block;width:50px;color:var(--muted)}.report-score{min-width:120px;text-align:center}.report-section{margin-top:25px}.report-section+.report-section{padding-top:25px;border-top:1px solid #dedede}.report-section h2{margin-bottom:15px}.report-issue{margin-top:18px;padding-top:17px;border-top:1px solid #e5e5e5}.report-issue h3 span{margin-left:7px;color:var(--muted);font-size:11px;font-weight:400}dl{margin:0}dt{margin-top:9px;color:var(--muted);font-size:12px}dd{margin:3px 0 11px}.report-section-meta{font-size:11px}.report-footer{margin-top:30px;padding-top:15px;border-top:1px solid #ddd;color:var(--muted);font-size:11px}@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.chat-scroll{max-height:56vh}.analysis-panel{max-height:70vh}}@media(max-width:680px){.app-header{align-items:flex-start;padding:12px 15px}.brand{padding-top:6px;font-size:15px}nav{max-width:230px;flex-wrap:wrap;justify-content:flex-end}nav a{font-size:12px}main{padding:19px 14px}.page-heading,.panel-heading{align-items:flex-start;flex-direction:column}.inline-search,.inline-search input{width:100%}.pagination{align-items:flex-start;flex-direction:column}.report-sheet{padding:23px 18px}.report-meta{flex-direction:column}.report-score{text-align:left}}@page{size:A4;margin:16mm}@media print{.no-print{display:none!important}body{color:#000;background:#fff;font-size:11pt}main{width:auto;max-width:none;padding:0}.report-sheet{max-width:none;margin:0;padding:0;border:0;border-radius:0}.report-header h1{font-size:22pt}.report-section h2,.report-issue h3,dt{break-after:avoid}.report-meta{flex-direction:row}.report-score{text-align:right}p,dd,li{orphans:3;widows:3}.report-reply{background:#f5f5f5}}
