:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#172b46;background:#f7f9fc}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,.dropzone:focus-visible{outline:3px solid #6d98fb;outline-offset:3px}.app-shell{display:flex;min-height:100vh}.sidebar{width:242px;flex:none;background:#fff;border-right:1px solid #e9edf4;padding:33px 19px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:0 10px;color:#19345b;font-weight:800;font-size:19px;letter-spacing:-.5px}.brand small{display:block;color:#9ba8b9;font-size:10px;letter-spacing:2px;font-weight:700;margin-top:3px}.brand-icon{width:35px;height:35px;background:#3868e8;border-radius:10px;display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:4px;place-content:center;box-shadow:0 6px 13px #3868e833}.brand-icon span{background:white;border-radius:2px}.side-section{margin:62px 12px 15px;color:#aab6c6;font-size:11px;letter-spacing:1.5px;font-weight:700}.nav-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:#34537e;font-size:13px;font-weight:700;padding:13px 14px;border-radius:9px}.nav-link.active{background:#edf3ff;color:#2d61e7}.nav-glyph{font-size:19px;line-height:1}.side-bottom{margin-top:auto;padding:18px 16px;background:#f3f7fe;border:1px solid #e9effa;border-radius:12px}.side-bottom .privacy-icon{width:31px;height:31px;border-radius:8px;background:#e1ebff;color:#3868e8;display:grid;place-items:center;font-size:19px;margin-bottom:13px}.side-bottom strong{font-size:12px}.side-bottom p{font-size:11px;line-height:1.7;color:#8493a7;margin:7px 0 0}.main{flex:1;min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid #edf0f5;display:flex;justify-content:space-between;align-items:center;padding:0 52px}.crumb{font-size:12px;color:#8090a6}.crumb span{padding:0 12px;color:#c6d0dd}.top-right{display:flex;align-items:center;gap:9px;font-size:11px;color:#73839a}.online-dot{width:7px;height:7px;border-radius:50%;background:#42c59b}.avatar{margin-left:20px;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#dfe9ff;color:#3d67c9;font-weight:800}.content{max-width:1510px;margin:0 auto;padding:44px 52px 38px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.3px;color:#4779e8}.heading h1{margin:12px 0 10px;font-size:29px;letter-spacing:-1px}.heading p{color:#8493a9;font-size:13px;margin:0}.version-pill{padding:8px 12px;background:#eaf1ff;color:#5b80d4;font-size:10px;font-weight:700;border-radius:20px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}.summary-card{min-height:175px;background:#fff;border:1px solid #e9eef6;border-radius:13px;padding:21px 23px;box-shadow:0 5px 16px #1f406407}.summary-card.primary{background:linear-gradient(120deg,#3c6fec,#477de9);color:#fff;border:0;box-shadow:0 8px 19px #2d68da2a}.summary-icon{width:29px;height:29px;border-radius:8px;background:#ffffff33;display:grid;place-items:center;font-size:17px;margin-bottom:13px}.summary-icon.soft-blue{background:#eaf0ff;color:#5f80dc}.summary-icon.soft-green{background:#e6f7f2;color:#4bb994}.summary-label{font-size:12px;font-weight:700}.summary-label span{font-weight:500;font-size:8px;letter-spacing:1.25px;color:#a6b2c2;margin-left:4px}.primary .summary-label span{color:#c6d8ff}.summary-value{display:flex;align-items:baseline;gap:7px;margin:5px 0}.summary-value strong{font-size:34px;line-height:1.15;letter-spacing:-1px}.summary-value span{font-size:12px;color:#9eacbf}.primary .summary-value span{color:#d3e0ff}.summary-foot{font-size:10px;color:#a4b0c1}.primary .summary-foot{color:#d5e2ff}.mode-value{font-size:21px;font-weight:800;margin-top:12px;margin-bottom:14px}.work-grid{display:grid;grid-template-columns:minmax(350px,.98fr) minmax(380px,1.16fr);gap:19px}.panel{background:#fff;border:1px solid #e9eef6;border-radius:13px;min-height:450px;box-shadow:0 5px 16px #1f406407}.input-panel{padding:25px}.result-panel{padding:25px;display:flex;flex-direction:column}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.panel-kicker{color:#4576e6;font-size:9px;letter-spacing:1.7px;font-weight:800}.panel h2{font-size:17px;margin:7px 0 6px}.panel-header p{font-size:11px;color:#9aabc0;margin:0;line-height:1.5}.status{background:#edfbf6;border:1px solid #dbf5e8;color:#36a67d;font-size:10px;font-weight:700;border-radius:16px;padding:7px 10px;white-space:nowrap;display:flex;align-items:center;gap:5px}.status i{width:5px;height:5px;border-radius:50%;background:currentColor}.status.busy{background:#edf3ff;color:#4c79de;border-color:#dfe9ff}.status.error{background:#fff1ef;color:#cf6b5f;border-color:#ffdfda}.tabs{display:flex;gap:4px;background:#f4f6fa;border-radius:8px;padding:4px;margin-top:25px}.tab{flex:1;border:0;background:transparent;color:#8190a4;font-weight:700;font-size:11px;padding:9px;border-radius:6px}.tab.active{background:#fff;color:#3d6ddd;box-shadow:0 1px 5px #1f406412}.tab-pane{margin-top:16px}.dropzone{min-height:253px;border:1.5px dashed #cbd9f2;border-radius:11px;background:#f8faff;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:22px;transition:.18s}.dropzone:hover,.dropzone.dragover{background:#eef4ff;border-color:#7298ed}.upload-art{height:68px;position:relative;margin-bottom:8px}.art-window{width:70px;height:57px;border-radius:10px;background:#e6eeff;border:3px solid #b9cdfa;display:block;position:relative;transform:rotate(-4deg)}.art-window i{position:absolute;width:12px;height:12px;border-radius:50%;background:#94b1ef;left:10px;top:10px}.art-window b,.art-window em{position:absolute;bottom:8px;width:28px;height:19px;background:#a9c0f4;clip-path:polygon(0 100%,50% 10%,100% 100%)}.art-window b{left:8px}.art-window em{right:5px;background:#88a8ee}.art-plus{position:absolute;right:-10px;bottom:0;background:#3c70e8;color:white;border:3px solid white;width:25px;height:25px;border-radius:50%;font-size:17px;line-height:18px}.dropzone h3,.camera-pane h3{font-size:13px;margin:0 0 7px}.dropzone p,.camera-pane p{font-size:11px;color:#96a7bd;margin:0 0 15px}.choose-button{background:#3d70e8;border:0;border-radius:7px;color:white;font-size:11px;font-weight:700;padding:10px 17px;box-shadow:0 4px 10px #3d70e82b}.choose-button span{margin-left:12px}.choose-button:hover{background:#2e5ed3}.dropzone small,.camera-pane small{display:block;color:#abb7c7;font-size:9px;margin-top:15px}.input-note{display:flex;gap:9px;align-items:flex-start;margin-top:18px;color:#8091a8}.input-note span{color:#7d9bdf;font-size:15px}.input-note p{margin:0;font-size:10px;line-height:1.7}.camera-pane{min-height:253px;border:1.5px dashed #cbd9f2;border-radius:11px;background:#f8faff;text-align:center;padding:51px 20px 20px}.camera-art{font-size:39px;color:#9bb7ee;margin-bottom:14px}.result-header{margin-bottom:20px}.text-button{background:none;border:0;color:#4775dd;font-size:11px;font-weight:700;white-space:nowrap}.result-empty{flex:1;min-height:294px;background:#f8faff;border:1px solid #f0f3fa;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-illustration{width:118px;height:90px;position:relative;margin-bottom:6px}.empty-board{position:absolute;left:13px;top:15px;width:92px;height:65px;border:6px solid #dce7fa;border-radius:10px;background:#f2f6ff;display:flex;align-items:flex-end;justify-content:center;gap:11px;padding-bottom:12px}.empty-board i{width:12px;height:22px;background:#b2c8f4;border-radius:8px 8px 4px 4px;position:relative}.empty-board i:before{content:"";position:absolute;width:12px;height:12px;left:0;top:-14px;background:#b2c8f4;border-radius:50%}.empty-board i:nth-child(2){height:29px;background:#92b1ed}.empty-board i:nth-child(2):before{background:#92b1ed}.empty-spark{position:absolute;right:0;top:0;color:#89a9ec;font-size:25px}.result-empty h3{font-size:13px;margin:7px 0 5px}.result-empty p{font-size:11px;color:#a0aec1;line-height:1.8;margin:0}.result-visual{background:#102340;border-radius:10px;overflow:hidden;align-self:stretch}.result-visual canvas{display:block;width:100%;max-height:480px;object-fit:contain;background:#14253c}.visual-footer{display:flex;justify-content:space-between;gap:12px;color:#d7e5ff;font-size:10px;padding:11px 14px}.visual-footer span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-strip{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:22px;color:#a6b3c3;font-size:10px}.bottom-strip>div{display:flex;align-items:center;gap:8px}.bottom-strip strong{color:#6e7e95;white-space:nowrap}.strip-icon{font-size:15px;color:#7c9fe8}.toast{position:fixed;right:24px;bottom:24px;max-width:min(420px,calc(100vw - 48px));background:#1d3556;color:#fff;padding:12px 16px;border-radius:9px;font-size:12px;box-shadow:0 12px 30px #0d294442;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}@media(max-width:1080px){.sidebar{width:200px}.topbar{padding:0 30px}.content{padding:36px 30px}.work-grid{grid-template-columns:1fr}.panel{min-height:auto}.result-panel{min-height:410px}}@media(max-width:700px){.sidebar{display:none}.topbar{height:59px;padding:0 18px}.content{padding:26px 18px}.heading{align-items:flex-start;gap:8px}.heading h1{font-size:25px}.version-pill{white-space:nowrap;margin-top:12px}.summary-grid{gap:8px}.summary-card{padding:16px 13px;min-height:148px}.summary-label span{display:none}.summary-value strong{font-size:29px}.summary-foot{line-height:1.4}.mode-value{font-size:15px}.work-grid{display:block}.result-panel{margin-top:16px}.bottom-strip>span{display:none}.bottom-strip>div{align-items:flex-start}.top-right{font-size:0}.online-dot{display:none}.avatar{font-size:11px;margin-left:0}}

[hidden] { display: none !important; }
.confidence-control{margin-top:18px;padding:15px 16px;border:1px solid #e8eef8;background:#fbfcff;border-radius:10px}.confidence-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;color:#566b88}.confidence-heading strong{color:#3569dc;font-size:14px}.confidence-control input{width:100%;margin:13px 0 4px;accent-color:#3d70e8;cursor:pointer}.confidence-hint{display:flex;justify-content:space-between;color:#a4b0c1;font-size:9px}.confidence-panel{padding:17px 2px 0}.confidence-list-title{display:flex;justify-content:space-between;color:#3b526f;font-size:11px;font-weight:800}.confidence-list-title span{color:#9aa9bb;font-weight:500}.confidence-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.confidence-item{padding:7px 10px;border-radius:6px;background:#eff6ff;color:#3f6ebc;font-size:10px;font-weight:700}.confidence-empty{color:#9cabc0;font-size:10px;margin:5px 0 0}
.confidence-help{margin-top:9px;color:#9aa9bb;font-size:9px;line-height:1.5}
.blog-back{color:#5575b5;text-decoration:none;font-weight:700}.blog-back:hover{color:#2d61e7;text-decoration:underline}
.loading-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:rgba(15,34,64,.48);backdrop-filter:blur(6px)}
.loading-card{width:min(100%,450px);padding:34px;background:#fff;border:1px solid #dfe8f8;border-radius:20px;box-shadow:0 24px 80px #0d234a36;text-align:left}
.loading-badge{width:50px;height:50px;display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:22px;border-radius:14px;background:linear-gradient(135deg,#3b6de9,#5e91ef);box-shadow:0 9px 22px #3c70e83d}
.loading-badge span{width:6px;height:17px;border-radius:5px;background:white;animation:loading-pulse 1s ease-in-out infinite}.loading-badge span:nth-child(2){height:24px;animation-delay:.14s}.loading-badge span:nth-child(3){animation-delay:.28s}
.loading-kicker{color:#4779e8;font-size:10px;font-weight:800;letter-spacing:2px}.loading-card h2{margin:10px 0 7px;color:#19345b;font-size:25px;letter-spacing:-.5px}.loading-card p{min-height:34px;margin:0 0 27px;color:#7c8fa9;font-size:13px;line-height:1.6}
.loading-progress-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;color:#667b99;font-size:11px;font-weight:700}.loading-progress-head strong{font-size:24px;color:#3569dc;font-variant-numeric:tabular-nums}
.loading-track{height:10px;overflow:hidden;border-radius:20px;background:#e9f0fc}.loading-bar{height:100%;width:0;border-radius:20px;background:linear-gradient(90deg,#3b6de9,#69b5f4);transition:width .18s ease;position:relative}.loading-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff77,transparent);animation:loading-shine 1.5s linear infinite}
.loading-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:21px;color:#9aa9bc;font-size:10px;line-height:1.5}.loading-foot button{flex:none;border:1px solid #dbe5f4;border-radius:7px;padding:7px 12px;background:white;color:#5271a4;font-size:11px;font-weight:700}.loading-foot button:hover{background:#f3f7ff}
.toast{z-index:60}
@keyframes loading-pulse{0%,100%{transform:scaleY(.65);opacity:.65}50%{transform:scaleY(1);opacity:1}}@keyframes loading-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@media(max-width:700px){.loading-card{padding:26px}.loading-card h2{font-size:21px}.loading-foot{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.loading-badge span,.loading-bar:after{animation:none}.loading-bar{transition:none}}
