@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=Instrument+Serif:ital@0;1&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--blue: #377AFF;--blue-dark: #0E2A5E;--blue-light: #EBF1FF;--sage: #8DAB7F;--bg: #FAFAF8;--card: #FFFFFF;--text: #1A1A1A;--muted: #5A5650;--border: #E4DFD8;--error: #D03F2F;--warning-bg: #FFF8E1;--success-bg: #F0FAF0;--radius-btn: 8px;--radius-card: 12px;--radius-modal: 16px;--radius-full: 999px;--font-serif: "Instrument Serif", Georgia, serif;--font-sans: "DM Sans", system-ui, sans-serif;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--shadow-lg: 0 8px 32px rgba(0,0,0,.14)}html{font-size:16px}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}h1,h2,h3{font-family:var(--font-serif);line-height:1.2}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}img,svg{display:block;max-width:100%}#root{min-height:100vh;display:flex;flex-direction:column}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;font-family:var(--font-sans);font-size:.9375rem;font-weight:600;border-radius:var(--radius-btn);border:2px solid transparent;cursor:pointer;transition:background .15s,opacity .15s,transform .1s;text-decoration:none;white-space:nowrap}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-auto{width:auto}.btn-sm{padding:.5rem .875rem;font-size:.875rem}.btn-lg{padding:1rem 1.5rem;font-size:1.0625rem}.btn-primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn-primary:hover:not(:disabled){background:#2b6de0;border-color:#2b6de0}.btn-outline{background:transparent;color:var(--blue);border-color:var(--blue)}.btn-outline:hover:not(:disabled){background:var(--blue-light)}.btn-ghost{background:transparent;color:var(--muted);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--border);color:var(--text)}.btn-dark{background:var(--blue-dark);color:#fff;border-color:var(--blue-dark)}.btn-dark:hover:not(:disabled){opacity:.9}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);padding:1.5rem;box-shadow:var(--shadow-sm)}.card-lg{padding:2rem}.nav{background:var(--blue-dark);color:#fff;padding:0 1.5rem;height:60px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;flex-shrink:0}.nav-logo{font-family:var(--font-serif);font-size:1.25rem;color:#fff;letter-spacing:-.01em}.nav-actions{display:flex;gap:.5rem;align-items:center}.lang-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:var(--radius-full);padding:.25rem .75rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s}.lang-btn:hover{background:#ffffff40}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem;animation:fadeIn .15s ease}.modal{background:var(--card);border-radius:var(--radius-modal);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;padding:2rem;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.modal-title{font-family:var(--font-serif);font-size:1.5rem}.modal-close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:1.5rem;line-height:1;padding:0 .25rem}.modal-close:hover{color:var(--text)}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.4rem;color:var(--muted)}.form-input,.form-textarea,.form-select{width:100%;padding:.75rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-btn);font-family:var(--font-sans);font-size:.9375rem;background:var(--card);color:var(--text);transition:border-color .15s}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #377aff26}.form-textarea{resize:vertical;min-height:80px}.form-hint{font-size:.8125rem;color:var(--muted);margin-top:.3rem}.form-error{font-size:.8125rem;color:var(--error);margin-top:.3rem}.progress-bar{width:100%;height:4px;background:#fff3;border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:#fff;border-radius:var(--radius-full);transition:width .4s ease}.toast-container{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:300;display:flex;flex-direction:column;gap:.5rem;align-items:center}.toast{background:var(--text);color:#fff;padding:.75rem 1.25rem;border-radius:var(--radius-full);font-size:.875rem;box-shadow:var(--shadow-md);animation:slideUp .2s ease}.toast-success{background:#2a7a3b}.toast-error{background:var(--error)}.spinner{width:2rem;height:2rem;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}.spinner-center{display:flex;justify-content:center;padding:3rem}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;line-height:1.4}.badge-blue{background:var(--blue-light);color:var(--blue)}.badge-sage{background:#e8f3e4;color:#4a7a3a}.badge-demo{background:var(--warning-bg);color:#8a6a00}.tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:1.5rem}.tab-btn{padding:.625rem 1.25rem;font-family:var(--font-sans);font-size:.9375rem;font-weight:500;color:var(--muted);background:none;border:none;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--muted);font-size:.8125rem;border-bottom:2px solid var(--border)}.table td{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--bg)}.banner{padding:.75rem 1rem;border-radius:var(--radius-btn);font-size:.875rem;font-weight:500;margin-bottom:1rem}.banner-demo{background:var(--warning-bg);color:#7a5c00}.banner-vacancy{background:var(--success-bg);color:#2a6a2a}.choice-group{display:flex;flex-direction:column;gap:.75rem}.choice-btn{width:100%;padding:1rem 1.25rem;text-align:left;border:2px solid var(--border);border-radius:var(--radius-card);background:var(--card);cursor:pointer;transition:border-color .15s,background .15s;font-family:var(--font-sans);font-size:.9375rem}.choice-btn:hover,.choice-btn.selected{border-color:var(--blue);background:var(--blue-light)}.choice-btn-title{font-weight:600;margin-bottom:.2rem}.choice-btn-desc{font-size:.8125rem;color:var(--muted)}.hero{background:var(--blue-dark);color:#fff;padding:5rem 1.5rem 4rem;text-align:center}.hero h1{font-family:var(--font-serif);font-size:clamp(2rem,6vw,3.5rem);margin-bottom:1rem}.hero p{font-size:1.125rem;opacity:.85;max-width:480px;margin:0 auto 2rem}.step-indicator{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.step-dot{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background .2s}.step-dot.active{background:var(--blue)}.step-dot.done{background:var(--blue);opacity:.4}.quote-screen{background:var(--blue-dark);min-height:100vh;color:#fff;display:flex;flex-direction:column}.quote-card-inner{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-card);padding:1.5rem;margin:1rem 0}.quote-text{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.125rem,3vw,1.5rem);line-height:1.4;margin:1rem 0}.quote-artist{font-size:.875rem;opacity:.7}.answer-btn{width:100%;padding:.875rem 1rem;margin-bottom:.625rem;text-align:left;background:#ffffff14;border:1.5px solid rgba(255,255,255,.18);border-radius:var(--radius-btn);color:#fff;cursor:pointer;font-family:var(--font-sans);font-size:.9375rem;transition:background .15s,border-color .15s}.answer-btn:hover{background:#ffffff29;border-color:#fff6}.answer-btn.selected{background:#377aff59;border-color:var(--blue)}.heart-btn{position:absolute;right:1rem;bottom:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;transition:transform .15s}.heart-btn:active{transform:scale(1.3)}.star-step-label{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:.25rem}.skill-card{border:2px solid var(--border);border-radius:var(--radius-card);padding:1.25rem;cursor:pointer;transition:border-color .15s,background .15s}.skill-card:hover,.skill-card.selected{border-color:var(--blue);background:var(--blue-light)}.page{flex:1;padding:2rem 1rem;max-width:640px;margin:0 auto;width:100%}.page-wide{flex:1;padding:2rem 1rem;max-width:960px;margin:0 auto;width:100%}.page-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem}.stack{display:flex;flex-direction:column;gap:1rem}.stack-sm{display:flex;flex-direction:column;gap:.5rem}.row{display:flex;gap:.75rem;align-items:center}.row-between{display:flex;justify-content:space-between;align-items:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.text-muted{color:var(--muted);font-size:.875rem}.text-center{text-align:center}.divider{border:none;border-top:1px solid var(--border);margin:1.5rem 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:640px){.modal{padding:2.5rem}.page,.page-wide{padding:2.5rem 1.5rem}.hero{padding:6rem 2rem 5rem}.choice-group{flex-direction:row;flex-wrap:wrap}.choice-btn{flex:1 1 220px}}@media(min-width:960px){.page,.page-wide{padding:3rem 2rem}}@media(max-width:480px){.nav{padding:0 1rem}.nav-logo{font-size:1.0625rem}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:520px}.progress-bar-label{font-size:.75rem}.quote-card-inner{padding:1.25rem}.quote-text{font-size:1.125rem}.stack>.btn-auto,.row>.btn-auto{flex:1}.quiz-nav{flex-wrap:wrap}.quiz-nav .btn{flex:1;min-width:0}.skill-card{padding:1rem}.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:2px}.tab-btn{white-space:nowrap}.card{padding:1.25rem}.hero h1{font-size:clamp(1.625rem,8vw,3.5rem)}.hero p{font-size:1rem}}
