.tool-page{min-height:100vh;padding:36px 0;background:radial-gradient(circle at 92% 0%,rgba(49,215,197,.12),transparent 26rem),#f6f7fb}.tool-shell{width:min(calc(100% - 40px),1180px);margin:0 auto;display:grid;grid-template-columns:.82fr 1.18fr;gap:28px;align-items:stretch}.tool-guide{padding:44px 42px;border-radius:30px;color:#fff;background:linear-gradient(140deg,#17172a,#30295f 68%,#235767);box-shadow:0 24px 60px #1919372e}.tool-guide .brand{color:#fff}.guide-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px}.back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:0;color:#ffffffd1;font-weight:800}.tool-kicker{color:#9f8cff;font-size:14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.tool-guide h1{margin:12px 0 24px;font-size:clamp(42px,5vw,58px);line-height:1.08;letter-spacing:-.06em}.tool-guide p{color:#ffffffd1;line-height:1.8}.tool-steps{display:grid;gap:12px;margin-top:34px;font-weight:900;list-style:none;padding:0}.tool-steps li{display:flex;align-items:center;gap:12px;color:#ffffff7a;transition:color .2s ease}.tool-steps li.is-active,.tool-steps li.is-complete{color:#fff}.tool-steps span:first-child{display:grid;width:30px;height:30px;place-items:center;border-radius:10px;color:#12131a;background:#ffffff29}.tool-steps li.is-active span:first-child,.tool-steps li.is-complete span:first-child{background:var(--accent)}.tool-steps li.is-complete span:first-child:before{content:"✓"}.tool-steps li.is-complete span:first-child{font-size:0}.tool-steps li.is-complete span:first-child:before{font-size:14px}.tool-guide .language-switch{margin-top:36px}.tool-workspace{padding:24px;border-radius:30px;background:#ffffffc7;box-shadow:var(--shadow)}@media(max-width:900px){.tool-shell{grid-template-columns:1fr}.tool-guide{min-height:auto}}@media(max-width:520px){.tool-page{padding:20px 0}.tool-shell{width:min(calc(100% - 24px),1180px)}.tool-guide,.tool-workspace{padding:22px;border-radius:24px}.guide-nav{align-items:flex-start;flex-direction:column}}.drop-zone{min-height:652px;padding:28px;border:1px dashed rgba(109,93,252,.35);border-radius:24px;background:#ffffff9e;transition:.2s ease}.drop-zone.is-dragging{border-color:var(--primary);background:#6d5dfc14}#fileInput{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.illustrator-upload-note{display:flex;width:min(520px,100%);margin:16px auto 0;padding:13px 14px;gap:11px;border:1px solid rgba(255,126,30,.28);border-radius:13px;background:#fff8f1;text-align:left}.illustrator-upload-note>span{display:grid;flex:0 0 auto;width:32px;height:32px;place-items:center;color:#ff7e1e;border:1px solid #ff9a4c;border-radius:8px;background:#2d1608;font-size:13px;font-weight:900}.illustrator-upload-note strong{display:block;color:#784019;font-size:12px}.illustrator-upload-note p{margin:4px 0 0;color:#8a6549;font-size:10px;line-height:1.55}.upload-idle{display:grid;min-height:590px;place-content:center;justify-items:center;text-align:center}.upload-idle h2{margin:24px 0 8px;font-size:26px;letter-spacing:-.04em}.upload-idle p,.file-note{color:var(--muted)}.upload-idle .button{margin-top:8px}.upload-icon{display:grid;width:70px;height:70px;place-items:center;color:var(--primary);border:1px solid rgba(109,93,252,.15);border-radius:24px;background:#6d5dfc1a;font-size:25px;font-weight:900}.file-note{margin-top:16px;font-size:12px}.upload-result{display:none}.upload-result.is-visible{display:grid;gap:18px}.workflow-panel[hidden]{display:none!important}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 2px 8px}.workspace-header h2{margin:4px 0 0;font-size:25px;letter-spacing:-.04em}.stage-label,.mini-kicker{color:#6557e8;font-size:11px;font-weight:900;letter-spacing:.1em}.reset-button{padding:10px 14px;color:#a23e65;border:0;border-radius:12px;background:#ff6f911a;font-weight:900;cursor:pointer}.object-stage,.settings-stage,.preview-stage,.download-stage{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.artwork-view{position:relative;display:grid;overflow:hidden;place-items:center;border-radius:16px;background-color:#fafafe;background-image:linear-gradient(45deg,#eceef5 25%,transparent 25%),linear-gradient(-45deg,#eceef5 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eceef5 75%),linear-gradient(-45deg,transparent 75%,#eceef5 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px}.object-preview-frame{min-height:320px;max-height:440px;padding:12px}.object-preview-frame .artwork-image{width:auto;height:auto;max-width:100%;max-height:416px;object-fit:contain;object-position:center}.isolated-preview-label{position:absolute;z-index:2;top:12px;left:12px;padding:7px 10px;color:#fff;border-radius:999px;background:#221d3dc7;font-size:11px;font-weight:900}.isolated-preview-label[hidden]{display:none}.artwork-image{width:100%;height:100%;object-fit:contain}.analysis-scrim{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;color:#49405f;background:#ffffffdb}.analysis-scrim.is-hidden{display:none}.spinner{width:20px;height:20px;border:3px solid #ddd9ff;border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.inspection-header{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-top:20px}.inspection-header h3,.setting-copy h3{margin:0;font-size:22px;letter-spacing:-.04em}.inspection-header p,.setting-copy p{margin:5px 0 0;color:var(--muted);font-size:13px}.inspection-badge{flex:0 0 auto;padding:8px 12px;color:#5f51e7;border-radius:999px;background:#6d5dfc1a;font-size:12px;font-weight:900}.inspection-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.result-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.inspection-stats>div,.result-summary>div{padding:13px;border-radius:12px;background:#f5f6fa;text-align:center}.inspection-stats strong,.inspection-stats span,.result-summary strong,.result-summary span{display:block}.inspection-stats strong{font-size:17px}.inspection-stats span,.result-summary span{color:var(--muted);font-size:11px;font-weight:800}.result-summary strong{margin-top:3px;font-size:14px}.object-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.object-selection .object-list{max-height:340px;overflow-y:auto;padding-right:4px}.count-confirmation{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:16px;border:1px solid rgba(109,93,252,.16);border-radius:14px;background:#f8f7ff}.count-confirmation[hidden],.count-correction[hidden],.analysis-failure[hidden],.object-selection[hidden]{display:none}.count-question strong{font-size:16px}.count-question p{margin:4px 0 0;color:var(--muted);font-size:12px}.count-actions{display:flex;flex:0 0 auto;gap:7px}.count-actions .button{padding:11px 14px;font-size:12px}.count-correction{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:14px;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:14px}.count-correction label{display:grid;gap:4px}.count-correction label span{color:var(--muted);font-size:11px}.count-correction>div{display:flex;gap:7px}.count-correction input{width:78px;padding:10px;border:1px solid rgba(109,93,252,.35);border-radius:11px;text-align:center;font-weight:900}.retry-message{flex-basis:100%;margin:0;color:#a23e65;font-size:12px;font-weight:800}.analysis-feedback{margin-top:12px;padding:12px 14px;color:#443b66;border:1px solid rgba(109,93,252,.25);border-radius:12px;background:#f4f2ff;font-size:13px;font-weight:800}.analysis-feedback[hidden]{display:none}.analysis-feedback.is-success{color:#176b4d;border-color:#25a0704d;background:#effbf6}.count-correction.is-analyzing{opacity:.7;pointer-events:none}.physical-size-notice{display:grid;gap:13px;margin-top:16px;padding:16px;border:1px solid rgba(49,158,119,.24);border-radius:14px;background:#f4fbf8}.physical-size-notice[hidden]{display:none}.physical-size-notice.is-required{border-color:#e8972d59;background:#fffaf1}.physical-size-heading{display:flex;align-items:flex-start;gap:11px}.physical-size-heading>span{flex:0 0 auto;padding:5px 8px;color:#176b4d;border-radius:999px;background:#daf4e8;font-size:10px;font-weight:900}.physical-size-heading strong{font-size:14px}.physical-size-heading p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.physical-size-notice>label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:900}.physical-height-control{display:flex;align-items:center;overflow:hidden;border:1px solid rgba(109,93,252,.35);border-radius:10px;background:#fff}.physical-height-control input{width:112px;padding:10px;border:0;outline:0;text-align:right;font-weight:900}.physical-height-control b{padding-right:10px;color:var(--muted)}.raster-scale-warning{padding:11px 12px;color:#8c4c12;border-radius:10px;background:#fff0dc}.raster-scale-warning[hidden]{display:none}.raster-scale-warning strong{font-size:11px}.raster-scale-warning p{margin:3px 0 0;font-size:10px;line-height:1.55}.physical-size-error{min-height:14px;margin:0;color:#c23e58;font-size:10px;font-weight:800}.analysis-failure{display:flex;align-items:center;gap:12px;margin-top:16px;padding:16px;color:#7d3551;border:1px solid rgba(255,111,145,.25);border-radius:14px;background:#fff5f7}.analysis-failure>span{display:grid;flex:0 0 34px;height:34px;place-items:center;color:#fff;border-radius:50%;background:#e96a8b;font-weight:900}.analysis-failure p{margin:4px 0 0;font-size:12px}.object-selection{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.selection-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.selection-heading span{color:var(--muted);font-size:11px}.object-item{display:flex;align-items:center;gap:10px;padding:11px;color:var(--text);border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}.object-item:hover{border-color:#6d5dfc66}.object-item.is-selected{border-color:var(--primary);background:#6d5dfc0f;box-shadow:0 0 0 2px #6d5dfc14}.object-thumb{display:grid;flex:0 0 40px;height:40px;place-items:center;border-radius:10px;color:var(--primary);background:#efedff;font-weight:900}.object-item span:last-child{display:grid;gap:2px;font-size:13px}.object-item small{color:var(--muted)}.stage-actions{display:flex;justify-content:flex-end;margin-top:18px}.stage-actions.split{align-items:center;justify-content:space-between}.button:disabled{opacity:.45;cursor:not-allowed}.text-button{padding:8px 4px;color:var(--muted);border:0;background:none;font-size:13px;font-weight:800;cursor:pointer}.text-button:hover{color:var(--primary)}.setting-copy{margin:22px 0 16px;text-align:center}.setting-copy .mini-kicker{display:block;margin-bottom:7px}.settings-preview{height:190px}.settings-preview .artwork-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}.setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.setting-card{min-width:0;margin:0;padding:18px;border:1px solid var(--line);border-radius:16px}.setting-card legend{padding:0 5px;font-weight:900}.setting-card p{min-height:34px;margin:0 0 12px;color:var(--muted);font-size:12px}.number-control{display:flex;align-items:stretch;justify-content:center}.preview-toolbar button{width:38px;border:1px solid var(--line);border-radius:10px;background:#f7f7fb;cursor:pointer}.number-control label{display:flex;align-items:center;overflow:hidden;border:1px solid rgba(109,93,252,.35);border-radius:10px}.number-control input{width:88px;padding:10px 4px 10px 12px;border:0;outline:0;text-align:right;font-size:16px;font-weight:900;opacity:1;pointer-events:auto}.number-control label span{padding-right:10px;color:var(--muted);font-size:12px;font-weight:900}.segmented-control{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border-radius:12px;background:#f3f4f8}.segmented-control button{padding:9px 5px;color:var(--muted);border:0;border-radius:9px;background:transparent;font-weight:900;cursor:pointer}.segmented-control button.is-selected{color:#fff;background:var(--primary);box-shadow:0 5px 12px #6d5dfc40}.detail-setting{grid-column:1 / -1}.detail-control input{width:100%;accent-color:var(--primary);cursor:pointer}.detail-control>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:7px;color:var(--muted);font-size:11px;font-weight:800}.detail-control>div span:last-child{text-align:right}.detail-control output{min-width:86px;color:var(--primary);text-align:center;font-size:12px;font-weight:900}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;color:var(--muted);font-size:12px;font-weight:800}.preview-toolbar>span{display:flex;align-items:center;gap:7px}.preview-toolbar i{width:16px;height:3px;background:#ff00d4}.preview-toolbar>div{display:flex;align-items:center;gap:8px}.preview-toolbar button{height:30px}.cutline-preview{height:390px;overscroll-behavior:contain;user-select:none;-webkit-user-select:none}.cutline-preview.is-pannable{cursor:grab}.cutline-preview.is-panning{cursor:grabbing}.preview-stack{position:absolute;inset:0;width:100%;height:100%;min-height:0;transition:transform .2s ease}.cutline-preview.is-panning .preview-stack{transition:none}.preview-stack,.preview-stack *{user-select:none;-webkit-user-select:none}.preview-stack .artwork-image{pointer-events:none;-webkit-user-drag:none}.preview-stack .artwork-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}.preview-stack svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.preview-stack path{fill:none;stroke:#ff00d4;stroke-width:.667;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px white)}.decision-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-radius:14px;background:#f7f6ff}.decision-card h3{margin:0;font-size:16px}.decision-card p{margin:4px 0 0;color:var(--muted);font-size:11px}.decision-actions{display:flex;flex:0 0 auto;gap:7px}.decision-actions .button{padding:11px 13px;font-size:12px}.feedback-dialog{width:min(520px,calc(100% - 32px));padding:0;border:0;border-radius:20px;background:transparent;box-shadow:0 24px 70px #1c194247}.feedback-dialog::backdrop{background:#18163494;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.feedback-dialog-card{position:relative;padding:30px;border-radius:20px;background:#fff;text-align:center}.feedback-dialog-close{position:absolute;top:12px;right:14px;width:32px;height:32px;color:var(--muted);border:0;border-radius:50%;background:#f2f3f7;font-size:20px;cursor:pointer}.feedback-dialog-icon{display:grid;width:44px;height:44px;margin:0 auto 12px;place-items:center;color:#fff;border-radius:50%;background:var(--primary);font-size:19px;font-weight:900}.feedback-dialog h3{margin:0 0 9px;font-size:21px}.feedback-dialog-card>p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}.feedback-contact{display:grid;gap:5px;margin:18px 0;padding:14px;border-radius:12px;background:#f7f6ff;font-size:11px}.feedback-contact a{color:var(--primary);font-size:15px;font-weight:900;text-decoration:none}.feedback-contact a:hover{text-decoration:underline}.stage-back{margin-top:9px}.download-stage{padding:42px 26px;text-align:center}.complete-icon{display:grid;width:58px;height:58px;margin:0 auto 15px;place-items:center;color:#fff;border-radius:50%;background:var(--accent);font-size:24px;font-weight:900;box-shadow:0 12px 24px #31d7c540}.download-stage h3{margin:8px 0;font-size:25px}.download-stage>p{margin:0;color:var(--muted);font-size:13px}.download-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0 18px}.download-options button{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff;text-align:left;cursor:pointer;transition:.2s ease}.download-options button:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 10px 22px #3c37781a}.format-icon{display:grid;width:48px;height:48px;place-items:center;color:#5f51e7;border-radius:12px;background:#eeecff;font-size:11px;font-weight:900}.format-icon.pdf{color:#c54863;background:#fff0f3}.download-options button>span:nth-child(2){display:grid;flex:1;gap:3px}.download-options small{color:var(--muted)}.download-options b{color:var(--primary);font-size:19px}.file-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 14px;border-radius:12px;background:#f5f6fae6;color:var(--muted);font-size:11px}.file-meta div{display:flex;min-width:0;gap:8px}.file-meta strong{overflow:hidden;max-width:250px;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.file-meta>span:before{content:"●";margin-right:6px;color:var(--accent)}@media(max-width:680px){.setting-grid,.download-options{grid-template-columns:1fr}.result-summary{grid-template-columns:1fr 1fr}.object-list{grid-template-columns:1fr}.decision-card,.decision-actions{align-items:stretch;flex-direction:column}.decision-actions{width:100%}.decision-actions .button{flex:1}.cutline-preview{height:320px}.count-confirmation,.count-correction{align-items:stretch;flex-direction:column}.count-actions,.count-correction>div{width:100%}.count-actions .button,.count-correction .button{flex:1}}@media(max-width:520px){.drop-zone{padding:14px}.inspection-header,.workspace-header,.file-meta{align-items:flex-start;flex-direction:column}.inspection-stats{grid-template-columns:1fr}.stage-actions.split{align-items:stretch;flex-direction:column-reverse}}
