:root{--color-primary: #0f766e;--color-primary-dark: #0d5f5a;--color-primary-light: #14b8a6;--color-accent: #f59e0b;--color-text: #111827;--color-text-muted: #6b7280;--color-text-subtle: #9ca3af;--color-bg: #fafaf9;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-strong: #d1d5db;--color-success: #059669;--color-error: #dc2626;--color-highlight-bg: #fef3c7;--color-highlight-border: #fde68a;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.06);--shadow-lg: 0 12px 28px rgba(0,0,0,.1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}h1,h2,h3{margin:0;letter-spacing:-.02em}p{margin:0;line-height:1.55}.container{max-width:640px;margin:0 auto;padding:24px 20px}@media (min-width: 700px){.container{padding:48px 24px}}.header{display:flex;align-items:center;gap:12px;margin-bottom:32px}.header .logo{font-weight:700;font-size:20px;letter-spacing:-.03em;color:var(--color-primary)}.header .tagline{font-size:13px;color:var(--color-text-muted)}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px;box-shadow:var(--shadow-md);border:1px solid var(--color-border)}@media (min-width: 700px){.card{padding:32px}}.step-title{font-size:20px;font-weight:600;margin-bottom:6px}.step-subtitle{font-size:14px;color:var(--color-text-muted);margin-bottom:20px}.option-list{display:flex;flex-direction:column;gap:10px}.option{display:block;padding:16px;border-radius:var(--radius-md);border:2px solid var(--color-border);cursor:pointer;transition:border-color .12s,background .12s,transform .08s;background:#fff;text-align:left}.option:hover,.option:focus-visible{border-color:var(--color-primary-light);background:#f0fdfa;outline:none}.option:active{transform:scale(.995)}.option.selected{border-color:var(--color-primary);background:#ccfbf1}.option .option-title{font-weight:600;font-size:16px;margin-bottom:4px}.option .option-desc{font-size:13px;color:var(--color-text-muted);line-height:1.45}.option .option-price{font-size:13px;color:var(--color-primary);margin-top:6px;font-weight:500}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;color:var(--color-text);font-weight:500}.field .hint{font-size:12px;color:var(--color-text-subtle);margin-top:-2px}.field input,.field textarea,.field select{padding:12px 14px;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);font-size:16px;font-family:inherit;background:#fff;transition:border-color .12s;width:100%}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e26}.field textarea{min-height:80px;resize:vertical}.field .error{color:var(--color-error);font-size:13px;margin-top:4px}.checkbox{display:flex;align-items:center;gap:10px;padding:12px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;background:#fff}.checkbox input{width:20px;height:20px;margin:0}.checkbox .label{font-size:15px;font-weight:500}.checkbox .desc{font-size:12px;color:var(--color-text-muted);margin-top:2px}.btn{padding:14px 20px;font-size:16px;font-weight:600;border-radius:var(--radius-md);border:0;cursor:pointer;font-family:inherit;transition:background .12s,transform .08s;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-ghost{background:#fff;color:var(--color-text);border:1.5px solid var(--color-border-strong)}.btn-ghost:hover:not(:disabled){background:#f9fafb}.btn-row{display:flex;gap:12px;margin-top:20px}.btn-row .btn{width:auto;flex:1}.quote-panel{background:linear-gradient(135deg,#ccfbf1,#e0f2fe);border-radius:var(--radius-md);padding:20px;margin-top:16px;border:1px solid #a7f3d0}.quote-panel .quote-total{font-size:36px;font-weight:700;color:var(--color-primary-dark);letter-spacing:-.03em}.quote-panel .quote-detail{font-size:13px;color:var(--color-text-muted);margin-top:4px}.quote-panel .quote-lines{margin-top:12px;font-size:14px}.quote-panel .quote-line{display:flex;justify-content:space-between;padding:3px 0;color:var(--color-text)}.quote-panel .quote-line-detail{color:var(--color-text-subtle);font-size:12px}.slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}@media (min-width: 700px){.slot-grid{grid-template-columns:repeat(3,1fr)}}.slot{padding:12px 8px;text-align:center;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:#fff;cursor:pointer;font-size:14px;transition:all .12s}.slot:hover{border-color:var(--color-primary-light);background:#f0fdfa}.slot.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.progress{display:flex;gap:6px;margin-bottom:24px}.progress .step{flex:1;height:4px;border-radius:2px;background:var(--color-border)}.progress .step.done{background:var(--color-primary)}.progress .step.active{background:var(--color-primary-light)}.confirm-hero{text-align:center;padding:20px 0}.confirm-hero .checkmark{width:56px;height:56px;border-radius:50%;background:var(--color-success);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:30px;margin-bottom:16px}.confirm-hero h1{font-size:24px;font-weight:700;margin-bottom:4px}.confirm-hero p{color:var(--color-text-muted)}.confirm-summary{background:#f9fafb;border-radius:var(--radius-md);padding:20px;margin-top:24px;border:1px solid var(--color-border);text-align:left}.confirm-summary .row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px}.confirm-summary .row .label{color:var(--color-text-muted)}.confirm-summary .row .value{font-weight:500}
