*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}input,textarea{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}body,html{font-family:-apple-system,PingFang SC,Helvetica Neue,sans-serif;background:#f5f3ee;color:#1a1a1a;-webkit-font-smoothing:antialiased;overflow-x:hidden}.screen,body,html{width:100%;min-height:100vh}.screen{padding:60px 48px 120px;animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.screen-flex{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;min-height:100vh}.progress-bar{position:fixed;top:0;left:0;width:100%;height:3px;background:rgba(0,0,0,.05);z-index:100}.progress-fill{height:100%;background:#1a1a1a;width:0;transition:width .4s ease}.progress-text{position:fixed;top:24px;right:32px;font-size:13px;letter-spacing:2px;color:#888;z-index:100}.welcome-mark{width:60px;height:60px;border:1.5px solid #1a1a1a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:300;margin-bottom:60px;letter-spacing:1px}.welcome-title{font-size:64px;font-weight:200;letter-spacing:8px;margin-bottom:24px;line-height:1.2}.welcome-subtitle{font-size:16px;letter-spacing:4px;color:#888}.welcome-subtitle,.welcome-text{margin-bottom:80px;font-weight:300}.welcome-text{font-size:17px;line-height:2;color:#444;max-width:540px}.welcome-text strong{color:#1a1a1a;font-weight:500}.welcome-actions{display:flex;flex-direction:column;gap:16px;align-items:center}.btn{display:inline-block;padding:18px 56px;background:#1a1a1a;color:#f5f3ee;border:none;border-radius:0;font-size:15px;letter-spacing:4px;cursor:pointer;transition:opacity .2s;font-family:inherit;font-weight:400;-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:active{opacity:.7}.btn-secondary{background:transparent;color:#1a1a1a;border:1px solid #1a1a1a}.btn:disabled{opacity:.3;cursor:not-allowed}.info-title{font-size:28px;font-weight:300;letter-spacing:4px;margin-bottom:60px;text-align:center}.info-form{width:100%;max-width:420px}.info-input{width:100%;padding:18px 0;border:none;border-bottom:1px solid #1a1a1a;background:transparent;font-size:18px;font-family:inherit;margin-bottom:32px;text-align:center;letter-spacing:2px;color:#1a1a1a;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}.info-input::-moz-placeholder{color:#aaa;letter-spacing:4px}.info-input::placeholder{color:#aaa;letter-spacing:4px}.info-input:focus{outline:none;border-bottom-width:2px}.question-header{margin-bottom:50px}.q-number{font-size:12px;letter-spacing:4px;color:#999;margin-bottom:16px;font-weight:400}.q-title{font-size:26px;font-weight:300;line-height:1.5;letter-spacing:1px;color:#1a1a1a}.q-instruction{font-size:15px;color:#666;margin-top:14px;line-height:1.7;font-weight:300}.path-container{width:100%;max-width:800px;margin:0 auto}.path-canvas-wrapper{position:relative;width:100%;margin-bottom:24px;background:#000;overflow:hidden;cursor:crosshair;line-height:0}.path-canvas{width:100%;display:block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.path-marker{position:absolute;width:36px;height:36px;border-radius:50%;background:rgba(255,220,0,.95);border:2px solid #1a1a1a;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;transform:translate(-50%,-50%);pointer-events:none;animation:pop .3s ease;color:#1a1a1a;z-index:10}.path-marker.pending{opacity:.7}.path-reason-panel{max-width:640px;margin:0 auto 24px;padding:20px;background:#fff;border:1px solid #e5e2da}.path-reason-title{text-align:center;font-size:14px;letter-spacing:2px;color:#666;margin-bottom:16px;font-weight:300}.path-reason-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.path-reason-option{padding:12px 10px;background:#f9f7f2;border:1px solid #e5e2da;color:#1a1a1a;font-size:14px;font-family:inherit;cursor:pointer;border-radius:0}.path-reason-option:active{background:#1a1a1a;color:#f5f3ee}@keyframes pop{0%{transform:translate(-50%,-50%) scale(0)}60%{transform:translate(-50%,-50%) scale(1.2)}to{transform:translate(-50%,-50%) scale(1)}}.path-status{text-align:center;font-size:16px;letter-spacing:2px;color:#666;margin-bottom:24px;font-weight:300}.path-status strong{color:#1a1a1a;font-weight:500;font-size:20px}.path-reasons{display:block;margin-top:10px;font-size:13px;letter-spacing:1px;color:#888}.path-actions{display:flex;gap:16px;justify-content:center}.btn-mini{padding:12px 32px;font-size:13px;letter-spacing:2px}.options{max-width:640px;margin:0 auto}.option{display:block;width:100%;padding:20px 28px;margin-bottom:14px;background:#fff;border:1px solid #e5e2da;cursor:pointer;font-size:16px;line-height:1.6;color:#1a1a1a;text-align:left;font-family:inherit;font-weight:300;transition:all .15s ease}.option:active{background:#f9f7f2}.option.selected{background:#1a1a1a;color:#f5f3ee;border-color:#1a1a1a}.option-letter{display:inline-block;width:24px;font-weight:500;margin-right:12px;font-size:14px;letter-spacing:2px}.single-image-layout{width:100%}.q-image-container{width:100%;max-width:420px;margin:0 auto 28px;background:#f0ede5;line-height:0}.q-image{width:100%;max-height:420px;-o-object-fit:contain;object-fit:contain;display:block}.q-image-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:720px;margin:0 auto 36px}.q-image-pair .pair-item{cursor:pointer}.q-image-pair .pair-img-wrap{width:100%;aspect-ratio:4/3;background:#ddd;border:3px solid transparent;transition:border-color .2s;overflow:hidden;line-height:0}.q-image-pair .pair-img-wrap img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block;background:#f0ede5}.q-image-pair .pair-item.selected .pair-img-wrap{border-color:#2f5fca;box-shadow:0 8px 24px rgba(47,95,202,.18)}.q-image-pair .pair-label{text-align:center;margin-top:12px;font-size:14px;color:#888;letter-spacing:2px}.q-image-pair .pair-item.selected .pair-label{color:#2f5fca;font-weight:500}.q-image-triple{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;margin:0 auto 36px}.q-image-triple .pair-item{cursor:pointer}.q-image-triple .pair-img-wrap{width:100%;aspect-ratio:4/3;background:#ddd;border:3px solid transparent;transition:border-color .2s;overflow:hidden;line-height:0}.q-image-triple .pair-img-wrap img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block;background:#f0ede5}.q-image-triple .pair-item:nth-child(3) .pair-img-wrap img{-o-object-position:70% 30%;object-position:70% 30%}.q-image-triple .pair-item.selected .pair-img-wrap{border-color:#2f5fca;box-shadow:0 8px 24px rgba(47,95,202,.18)}.q-image-triple .pair-label{text-align:center;margin-top:12px;font-size:14px;color:#888;letter-spacing:2px}.q-image-triple .pair-item.selected .pair-label{color:#2f5fca;font-weight:500}.word-input-section{max-width:540px;margin:32px auto 24px}.word-label{font-size:14px;color:#666;margin-bottom:16px;font-weight:300}.word-input,.word-label{text-align:center;letter-spacing:2px}.word-input{width:100%;padding:18px 24px;border:1px solid #d5d2c8;background:#fff;font-size:16px;font-family:inherit;color:#1a1a1a;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}textarea.word-input{resize:none;font-family:inherit;line-height:1.6;min-height:80px}.word-input:focus{outline:none;border-color:#1a1a1a}.checkbox-options{max-width:640px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:12px}.checkbox-option{padding:16px 24px;background:#fff;border:1px solid #e5e2da;cursor:pointer;font-size:15px;color:#1a1a1a;font-weight:300;display:flex;align-items:center;gap:14px;transition:all .15s ease}.checkbox-option:active{background:#f9f7f2}.checkbox-option.selected{background:#1a1a1a;color:#f5f3ee;border-color:#1a1a1a}.checkbox-mark{width:18px;height:18px;border:1.5px solid #999;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:transparent}.checkbox-option.selected .checkbox-mark{background:#f5f3ee;border-color:#f5f3ee;color:#1a1a1a}.checkbox-counter{text-align:center;margin-top:24px;font-size:13px;letter-spacing:2px;color:#888;font-weight:300}.checkbox-counter strong{color:#1a1a1a;font-weight:500}.dual-input{max-width:540px;margin:0 auto}.single-text-prompt{font-size:22px;line-height:1.8;color:#1a1a1a;text-align:center;margin-bottom:32px;font-weight:300;letter-spacing:1px}.single-text-input{font-size:18px;padding:22px 28px}.dual-input-hint{font-size:12px;color:#999;margin-top:8px;letter-spacing:1px;text-align:center}.q-actions{position:fixed;bottom:0;left:0;width:100%;padding:24px 48px;background:linear-gradient(0deg,#f5f3ee,hsla(43,26%,95%,.95) 80%,transparent);display:flex;justify-content:space-between;align-items:center;z-index:50}.btn-prev{background:transparent;color:#888;padding:12px 24px;font-size:13px}.btn-next,.btn-prev{border:none;letter-spacing:3px;cursor:pointer;font-family:inherit}.btn-next{background:#1a1a1a;color:#f5f3ee;padding:14px 44px;font-size:14px;transition:opacity .2s}.btn-next:disabled{background:#ccc;cursor:not-allowed}.processing-text{font-size:24px;letter-spacing:4px;color:#1a1a1a;font-weight:300;margin-bottom:40px}.processing-dots{display:flex;gap:12px}.dot{width:8px;height:8px;background:#1a1a1a;border-radius:50%;animation:dotPulse 1.4s ease infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.result-container{max-width:720px;margin:0 auto;padding:80px 40px 60px}.result-tag{text-align:center;font-size:12px;letter-spacing:6px;color:#999;margin-bottom:24px;font-weight:300}.result-name{text-align:center;font-size:56px;font-weight:200;letter-spacing:4px;margin-bottom:12px;line-height:1.2}.result-name-en{font-size:14px;letter-spacing:3px;margin-bottom:8px;font-style:italic}.result-meta,.result-name-en{text-align:center;color:#888;font-weight:300}.result-meta{font-size:13px;letter-spacing:4px;margin-bottom:50px}.result-images{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:60px}.result-work-img{aspect-ratio:4/3;overflow:hidden;background:#f0ede5;width:100%}.result-work-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.result-section{margin-bottom:40px}.result-section-title{font-size:12px;letter-spacing:4px;color:#999;margin-bottom:18px;font-weight:400;text-align:center}.result-section-body{font-size:16px;line-height:2;color:#2a2a2a;font-weight:300;text-align:center;max-width:540px;margin:0 auto}.result-divider{width:40px;height:1px;background:#1a1a1a;margin:60px auto}.result-books{text-align:center}.result-keyword-section{margin-bottom:48px}.result-keywords{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:540px;margin:0 auto}.result-keyword{padding:12px 24px;background:#fff;border:1px solid #d5d2c8;font-size:16px;letter-spacing:2px;color:#1a1a1a;font-weight:300;border-radius:0}.result-book-title{font-size:18px;font-weight:300;letter-spacing:2px;margin:8px 0;font-style:italic}.result-note{margin-top:56px;text-align:center;color:#888;font-size:13px;line-height:1.8;font-weight:300}@media (min-width:900px){.screen{padding:80px 80px 120px}.q-title{font-size:32px}.result-container{max-width:800px;padding:100px 60px 80px}.single-image-layout{display:grid;grid-template-columns:minmax(220px,360px) minmax(360px,1fr);gap:36px;align-items:start;max-width:980px;margin:0 auto}.single-image-layout .q-image-container{margin:0}.single-image-layout .options{margin:0;max-width:none}.single-image-layout .option{padding:16px 24px;margin-bottom:12px}}@media (min-width:600px){.result-images{grid-template-columns:repeat(3,1fr);gap:12px}.result-work-img{aspect-ratio:1/1}}@media (max-width:600px){.screen{padding:50px 24px 110px}.welcome-title{font-size:44px;letter-spacing:4px}.q-title{font-size:22px}.q-actions{padding:20px 24px}.result-container{padding:60px 24px 40px}.result-name{font-size:42px;letter-spacing:3px}.result-section-body{font-size:15px;line-height:1.9;padding:0 8px}.q-image-pair,.q-image-triple{grid-template-columns:1fr;max-width:100%}.path-reason-options{grid-template-columns:repeat(2,1fr)}}