@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--primary-color: #375078;--secondary-color: #a7c7e7;--accent-color: #ff9f29;--neutral-white: #ffffff;--neutral-light-gray: #f4f4f4;--neutral-dark-gray: #4a4a4a;--text-primary: #0f172a;--text-muted: rgba(74, 74, 74, .75);--border: rgba(55, 80, 120, .12);--shadow-soft: 0 8px 24px rgba(15, 23, 42, .08);--radius-card: 16px;--radius-button: 12px;--focus-ring: 0 0 0 3px rgba(255, 159, 41, .35);--font-family-primary: "Inter", sans-serif;--motion-fast: .12s;--motion-base: .2s;--motion-slow: .26s;--motion-page: .24s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.32, 0, .67, 0);--ease-standard: cubic-bezier(.2, 0, 0, 1);--lift-1: 1px;--lift-2: 2px;--slide-y: 8px;--slide-x: 10px}*{box-sizing:border-box}body{margin:0;background:var(--neutral-light-gray);color:var(--text-primary);font-family:var(--font-family-primary);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}#root{min-height:100vh}.app-shell{min-height:100vh;background:var(--neutral-light-gray)}.header-bar{position:sticky;top:0;z-index:10;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);box-shadow:0 6px 18px #0f172a0a}.header-content{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.header-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;color:var(--primary-color)}.brand-logo{height:26px;width:auto;cursor:pointer}.header-meta{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:13px}.content-area{max-width:1200px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:16px}.workspace{background:var(--neutral-white);border:1px solid var(--border);border-radius:24px;padding:20px;box-shadow:0 16px 40px #0f172a14;min-height:60vh;display:flex;flex-direction:column;gap:16px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.page-header h1{margin:0;font-size:24px;font-weight:600;color:var(--text-primary)}.page-header p{margin:4px 0 0;color:var(--text-muted);font-size:14px}.card{display:flex;flex-direction:column;height:100%;background:var(--neutral-white);border:1px solid var(--border);box-shadow:var(--shadow-soft);border-radius:var(--radius-card);padding:18px;transition:border-color var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),transform var(--motion-base) var(--ease-standard)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card-title{font-size:16px;font-weight:600;color:var(--primary-color);margin:0}.card-section{border:1px dashed var(--border);border-radius:12px;padding:12px;background:#37507805;margin-top:10px}.card-section h4{margin:0 0 6px;font-size:14px;color:var(--text-primary)}.card-section p{margin:0;color:var(--text-muted);font-size:13px}.btn{border:none;border-radius:var(--radius-button);padding:10px 14px;font-weight:600;font-size:14px;cursor:pointer;transition:transform var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),background var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard);display:inline-flex;align-items:center;gap:8px;position:relative}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-primary{background:var(--primary-color);color:var(--neutral-white);box-shadow:0 6px 16px #3750782e}.btn-primary:hover{transform:translateY(calc(-1 * var(--lift-1)));box-shadow:0 10px 18px #3750782e}.btn:active{transform:translateY(0);box-shadow:0 6px 12px #0f172a14}.btn-secondary{background:var(--neutral-white);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{transform:translateY(calc(-1 * var(--lift-1)));border-color:#37507866;background:#f4f4f4b3;box-shadow:0 8px 16px #0f172a14}.btn-secondary:active{background:#f4f4f4e6}.btn-text{background:transparent;color:var(--primary-color);padding:8px 10px}.btn.disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn.loading{min-width:140px}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:var(--neutral-white);animation:spin .7s linear infinite}.btn-secondary .spinner,.btn-text .spinner{border:2px solid rgba(55,80,120,.35);border-top-color:var(--primary-color)}.progress-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(55,80,120,.3);border-top-color:var(--primary-color);animation:spin .7s linear infinite}.check-pop{animation:checkPop var(--motion-base) var(--ease-out)}@keyframes checkPop{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.grid-2{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch}.grid-3{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch}.input,.select,.multiselect{width:100%;border:1px solid var(--border);border-radius:12px;padding:10px 12px;font-size:14px;transition:border-color .14s ease,box-shadow .14s ease;background:var(--neutral-white)}.input:focus,.select:focus,.multiselect:focus{outline:none;border-color:#37507873;box-shadow:var(--focus-ring)}.input.error,.select.error,.multiselect.error{border-color:#d14343}.helper-error{color:#d14343;font-size:12px;margin-top:4px}.label{font-size:13px;color:var(--text-muted);margin-bottom:6px;display:block}.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:8px 0 18px}.step{padding:10px 12px;border-radius:12px;background:#3750780f;border:1px solid rgba(55,80,120,.08);font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:8px;transition:background .16s ease,border-color .16s ease,color .16s ease}.step.current{background:#3750781f;color:var(--primary-color);border-color:#37507866;font-weight:600}.step.completed{color:#375078d9;background:#3750781a;border-color:#3750782e}.step-dot{width:10px;height:10px;border-radius:50%;background:var(--border)}.step.current .step-dot{background:var(--primary-color)}.step.completed .step-dot{background:#375078bf}.step-check{opacity:0;transition:opacity var(--motion-fast) var(--ease-out);font-size:12px}.step.completed .step-check{opacity:1}.table{width:100%;border-collapse:collapse;margin-top:6px}.table thead{position:sticky;top:0;background:#f8fafc;box-shadow:inset 0 -1px 0 var(--border),0 2px 8px #0f172a0a}.table th,.table td{text-align:left;padding:10px 12px;font-size:13px;color:var(--text-primary)}.table tbody tr{border-bottom:1px solid var(--border)}.table tbody tr:hover{background:#a7c7e72e}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--border);background:#3750780f;color:var(--primary-color)}.tag.accent{background:#ff9f291a;color:#b5620f;border-color:#ff9f2966}.tag.neutral{background:#4a4a4a14;color:var(--neutral-dark-gray)}.tag.recommended{background:var(--secondary-color);color:var(--primary-color);border-color:#37507840}.alert{border-radius:12px;padding:12px 14px;border:1px solid var(--border);background:#3750780d;font-size:13px;color:var(--text-primary);display:flex;gap:10px;align-items:flex-start}.alert.info{border-color:#37507840}.alert.success{border-color:#1ab5664d;background:#1ab56614}.alert.warning{border-color:#ff9f2940;background:#ff9f291f}.alert.success{background:#1ab56614}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.stat-tile{padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--neutral-white);box-shadow:var(--shadow-soft)}.stat-title{font-size:12px;color:var(--text-muted);margin-bottom:4px}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.stat-subtle{font-size:12px;color:var(--text-muted)}.accordion{border:1px solid var(--border);border-radius:14px;background:var(--neutral-white)}.accordion-header{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.accordion-body{padding:0 14px 14px;border-top:1px solid var(--border)}.toggle{width:46px;height:26px;border-radius:13px;background:#37507840;position:relative;cursor:pointer;transition:background .16s ease}.toggle-thumb{width:22px;height:22px;border-radius:50%;background:var(--neutral-white);position:absolute;top:2px;left:2px;transition:transform .16s ease,box-shadow .16s ease;box-shadow:0 2px 8px #0f172a2e}.toggle.on{background:var(--primary-color)}.toggle.on .toggle-thumb{transform:translate(20px)}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#37507814;color:var(--text-primary);font-size:12px;border:1px solid var(--border)}.chip button{border:none;background:transparent;cursor:pointer}.skeleton{background:linear-gradient(90deg,#eef1f6,#f8faff,#eef1f6);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite;border-radius:8px;height:12px;width:100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:center}.card.clickable:hover{border-color:#37507838;box-shadow:0 12px 24px #0f172a1f;transform:translateY(calc(-1 * var(--lift-2)))}.card.clickable:active{box-shadow:0 8px 18px #0f172a1a;transform:translateY(0)}.fade-in{animation:fadeOnly var(--motion-base) var(--ease-out);animation-fill-mode:both}@keyframes fadeOnly{0%{opacity:0}to{opacity:1}}.status-chip{animation:fadeOnly var(--motion-fast) var(--ease-out);animation-fill-mode:both}.accordion-body{transition:opacity var(--motion-base) var(--ease-out)}.asset-grid .asset-card{border:1px solid rgba(55,80,120,.18)}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.pill{padding:6px 10px;border-radius:999px;background:#37507814;font-size:12px;color:var(--text-primary);border:1px solid var(--border)}.build-card{border:1px solid rgba(55,80,120,.16)}.export-card{min-height:230px;height:230px;display:flex;flex-direction:column;justify-content:space-between}.export-grid{align-items:stretch}.icon-button{background:var(--primary-color);color:var(--neutral-white);border:none;border-radius:12px;padding:10px 12px;cursor:pointer;box-shadow:0 6px 16px #3750782e;transition:transform var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard)}.icon-button:hover{transform:translateY(calc(-1 * var(--lift-1)));box-shadow:0 10px 18px #3750782e}.icon-button:active{transform:translateY(0);box-shadow:0 6px 12px #0f172a14}.progress-panel{margin-top:12px;min-height:150px}.timeline{display:flex;flex-direction:column;gap:10px}.timeline-step{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px}.timeline-step.active{border-color:#37507859;background:#3750780f}.timeline-step.completed{border-color:#1ab56659;background:#1ab56614}.timeline-icon{width:28px;height:28px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:var(--neutral-white);border:1px solid var(--border);font-weight:700;color:var(--primary-color)}.timeline-step.completed .timeline-icon{background:#1ab56626;border-color:#1ab56659;color:#0b7d49}.timeline-label{font-weight:600;color:var(--text-primary)}.timeline-sub{font-size:12px;color:var(--text-muted)}.section-nav{margin-bottom:12px}.section-tabs{display:flex;gap:8px;margin-bottom:8px}.section-tab{padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--neutral-white);color:var(--text-primary);cursor:pointer;font-weight:600;transition:background var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard)}.section-tab.active{background:#3750781f;border-color:#37507859;color:var(--primary-color)}@media (prefers-reduced-motion: reduce){.page-transition,.btn,.card,.step,.fade-in,.skeleton{animation-duration:1ms!important;transition-duration:1ms!important}.page-transition{transform:none!important}.btn:hover,.card.clickable:hover,.btn:active{transform:none!important;box-shadow:none!important}}.hero h2{margin:0 0 12px;font-size:26px;color:var(--text-primary)}.hero p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.5}.list{margin:10px 0 0;padding-left:18px;color:var(--text-muted);font-size:13px;line-height:1.5}.inline{display:flex;align-items:center;gap:10px}
