:root{color:#171a20;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f6f5f3;--bg-band:#fff0f1;--surface:#ffffffd6;--surface-strong:#fff;--ink:#171a20;--muted:#69717d;--line:#171a2024;--primary:#e82127;--primary-strong:#b80f18;--primary-soft:#e821271f;--country-primary:var(--primary);--country-strong:var(--primary-strong);--country-soft:var(--primary-soft);--country-accent:var(--accent);--country-accent-soft:var(--accent-soft);--country-flag-center:#fff;--accent:#d80621;--accent-soft:#d806211a;--chrome-soft:#9aa0a62e;--success:#22745b;--success-soft:#22745b21;--warning:#9c6517;--warning-soft:#9c651724;--error:#c81e26;--error-soft:#c81e261c;--shadow:0 24px 60px #4b3a3a21;--shadow-small:0 10px 26px #4b3a3a1c;background:#f6f5f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color:#f5f5f1;--bg:#0b0d10;--bg-band:#171a20;--surface:#181b21d1;--surface-strong:#1b1f26;--ink:#f5f5f1;--muted:#aeb5c1;--line:#f5f5f124;--primary:#ff4a52;--primary-strong:#ff2d36;--primary-soft:#ff4a5229;--country-primary:var(--primary);--country-strong:var(--primary-strong);--country-soft:var(--primary-soft);--country-accent:var(--accent);--country-accent-soft:var(--accent-soft);--country-flag-center:#fff;--accent:#ff3140;--accent-soft:#ff314021;--chrome-soft:#b7bdc626;--success:#5ed6a1;--success-soft:#5ed6a124;--warning:#ffc46b;--warning-soft:#ffc46b24;--error:#ff7c83;--error-soft:#ff7c8324;--shadow:0 24px 60px #00000061;--shadow-small:0 10px 26px #00000047;background:#0b0d10}*{box-sizing:border-box}html{background:linear-gradient(180deg, var(--bg-band) 0, var(--bg) 360px), var(--bg);min-width:320px;transition:background .22s,color .22s}body{min-width:320px;color:var(--ink);background:linear-gradient(125deg, var(--accent-soft) 0 1px, transparent 1px 84px), linear-gradient(90deg, transparent 0 calc(50% - 1px), #ffffff80 calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(180deg, var(--bg-band) 0, var(--bg) 360px), var(--bg);margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.app-shell{width:min(1120px,100% - 32px);margin:0 auto;padding:22px 0 56px}.app-shell[data-country=us]{--country-primary:#2457a7;--country-strong:#173d7a;--country-soft:#2457a724;--country-accent:#fff;--country-accent-soft:#fff3;--country-flag-center:#fff}:root[data-theme=dark] .app-shell[data-country=us]{--country-primary:#5f91e6;--country-strong:#8eb4ff;--country-soft:#5f91e62e;--country-accent:#fff;--country-accent-soft:#ffffff29}.app-shell[data-country=us] .featured-panel{background:linear-gradient(135deg, #2457a71f, transparent 42%), var(--surface)}.app-shell[data-country=us] .rotation-summary{color:var(--country-strong);background:linear-gradient(90deg, #ffffff8f, transparent 58%), var(--surface-strong)}.app-shell[data-country=us] .rotation-summary:before{z-index:-1;border-radius:inherit;background:linear-gradient(90deg, #ffffff75, transparent 58%), color-mix(in srgb, var(--country-primary) 32%, transparent);content:"";position:absolute;inset:-3px}:root[data-theme=dark] .app-shell[data-country=us] .rotation-summary{color:#fff}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.topbar-actions{align-items:center;gap:10px;display:inline-flex}.topbar-link{border:1px solid var(--line);min-height:38px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow-small);border-radius:999px;padding:0 14px;font-size:.9rem;font-weight:850;transition:transform .18s,border-color .18s,background .18s}.topbar-link:hover{border-color:color-mix(in srgb, var(--country-primary) 48%, transparent);transform:translateY(-1px)}.topbar-link:active{transform:translateY(0)scale(.97)}.brand-mark{min-height:38px;color:var(--ink);align-items:center;gap:10px;font-size:.98rem;font-weight:850;display:inline-flex}.brand-dot{background:var(--country-primary);width:12px;height:12px;box-shadow:0 0 0 5px var(--country-soft);border-radius:3px;transform:rotate(45deg)}.theme-toggle{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow-small);border-radius:999px;justify-content:center;align-items:center;transition:transform .18s,border-color .18s,background .18s;display:inline-flex}.theme-toggle:hover{border-color:color-mix(in srgb, var(--country-primary) 48%, transparent);transform:translateY(-1px)}.theme-toggle:active{transform:translateY(0)scale(.97)}.theme-toggle svg{width:17px;height:17px}.eyebrow,.section-label{color:var(--country-primary);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}h1,h2,p{margin-top:0}h1{max-width:680px;color:var(--ink);letter-spacing:0;margin-bottom:12px;font-size:clamp(2.15rem,4.5vw,3.55rem);line-height:1.04}h2{letter-spacing:0;margin-bottom:0;font-size:1.28rem}.panel-lede{max-width:620px;color:var(--muted);margin-bottom:0;font-size:1.08rem;line-height:1.58}.rotation-summary{z-index:0;border:1px solid color-mix(in srgb, var(--country-primary) 22%, transparent);width:fit-content;color:var(--ink);background:var(--country-soft);border-radius:999px;align-items:center;margin:14px 0 0;padding:8px 12px;font-size:.9rem;font-weight:850;line-height:1.35;display:inline-flex;position:relative}.use-section{grid-template-columns:minmax(0,760px);justify-content:center;display:grid}.faq-page{grid-template-columns:minmax(0,820px);justify-content:center;display:grid}.workspace{grid-template-columns:minmax(0,760px);justify-content:center;gap:22px;margin-top:24px;display:grid}.tool-panel{--panel-gap:17px;gap:var(--panel-gap);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:22px;flex-direction:column;padding:24px;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;animation:.52s both rise-in;display:flex}.tool-panel:hover{border-color:color-mix(in srgb, var(--country-primary) 32%, transparent);transform:translateY(-2px)}.featured-panel{min-height:0;padding:30px;position:relative;overflow:hidden}.featured-panel:before{background:linear-gradient(90deg, var(--country-primary), var(--country-flag-center), var(--country-primary));content:"";height:4px;position:absolute;top:0;left:0;right:0}.merged-panel{width:100%}.faq-panel{padding:30px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-heading svg{width:27px;height:27px;color:var(--country-primary)}.field-label{color:var(--ink);margin-bottom:-8px;font-size:.94rem;font-weight:800;line-height:1.5}.country-actions{border:1px solid color-mix(in srgb, var(--line) 72%, var(--country-primary));background:linear-gradient(180deg, #fff3, transparent), var(--chrome-soft);border-radius:18px;grid-template-columns:1fr 1fr;gap:7px;padding:6px;display:grid;position:relative;box-shadow:inset 0 1px 2px #00000014,0 1px #ffffff2e}.country-actions:before{border:1px solid color-mix(in srgb, var(--country-primary) 42%, transparent);background:linear-gradient(180deg, #ffffff29, transparent), var(--surface-strong);width:calc(50% - 9.5px);height:calc(100% - 12px);box-shadow:0 10px 24px color-mix(in srgb, var(--country-primary) 16%, transparent), 0 1px 0 #ffffff47 inset;content:"";border-radius:14px;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:absolute;top:6px;left:6px}.country-actions[data-selected=ca]:before{border-color:color-mix(in srgb, var(--primary) 54%, transparent);background:linear-gradient(180deg, #ffffff38, transparent), linear-gradient(90deg, var(--primary) 0 33.33%, #fff 33.33% 66.66%, var(--primary) 66.66% 100%)}.country-actions[data-selected=us]:before{background:url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='6,1 7.35,4.05 10.65,4.4 8.18,6.62 8.88,9.9 6,8.22 3.12,9.9 3.82,6.62 1.35,4.4 4.65,4.05' fill='rgba(255,255,255,0.95)'/%3E%3Cpolygon points='20,8 21.1,10.5 23.8,10.78 21.78,12.6 22.35,15.28 20,13.9 17.65,15.28 18.22,12.6 16.2,10.78 18.9,10.5' fill='rgba(255,255,255,0.86)'/%3E%3Cpolygon points='9,17 10.1,19.5 12.8,19.78 10.78,21.6 11.35,24.28 9,22.9 6.65,24.28 7.22,21.6 5.2,19.78 7.9,19.5' fill='rgba(255,255,255,0.9)'/%3E%3C/svg%3E") 0 0/28px 28px,linear-gradient(135deg,#ffffff24,#0000 46%),#2457a7;border-color:#2f5fa89e;transform:translate(calc(100% + 7px))}.country-button{z-index:1;min-height:48px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:14px;font-weight:850;transition:transform .16s,color .16s,background .16s,box-shadow .16s;position:relative}.country-button:hover:not(:disabled){color:var(--ink);background:#7f899914}.country-button.active{color:var(--primary-strong);box-shadow:none;background:0 0;border-color:#0000}.country-actions[data-selected=ca] .country-button.active{color:#171a20;text-shadow:0 1px #ffffffa8,0 0 8px #ffffffb3}.country-actions[data-selected=us] .country-button.active{color:#fff;text-shadow:0 1px 4px #00000057}.country-button:active:not(:disabled){transform:scale(.98)}.primary-action,.secondary-action{border-radius:16px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;font-weight:850;text-decoration:none;transition:transform .16s,background .16s,border-color .16s,box-shadow .16s;display:inline-flex}.primary-action{background:var(--country-primary);color:#fff;box-shadow:0 16px 32px color-mix(in srgb, var(--country-primary) 24%, transparent);border:0}.primary-action:hover:not(:disabled){background:var(--country-strong);transform:translateY(-1px)}.primary-action:active:not(:disabled),.secondary-action:active:not(:disabled){transform:scale(.985)}.use-action{min-height:58px;font-size:1.05rem}.secondary-action{border:1px solid var(--line);background:var(--surface-strong);color:var(--ink)}.secondary-action:hover:not(:disabled){border-color:color-mix(in srgb, var(--country-primary) 46%, transparent);transform:translateY(-1px)}.primary-action svg,.secondary-action svg,.message svg{width:18px;height:18px}.code-input-row{border:1px solid var(--line);background:var(--surface-strong);border-radius:16px;align-items:center;min-height:50px;transition:border-color .16s,box-shadow .16s;display:flex}.code-input-row:focus-within{border-color:color-mix(in srgb, var(--country-primary) 72%, transparent);box-shadow:0 0 0 4px var(--country-soft)}.code-input-row span{color:var(--muted);flex:none;padding-left:14px;font-weight:800}.code-input-row input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:0 14px;font-weight:750}.code-input-row input::placeholder{color:color-mix(in srgb, var(--muted) 72%, transparent)}.preview-text,.helper-text{overflow-wrap:anywhere;color:var(--muted);margin:-8px 0 0;font-size:.9rem;line-height:1.5}.faq-list{gap:0;margin:2px 0 0;padding:0;display:grid}.faq-item{border-top:1px solid var(--line);gap:7px;padding:18px 0;display:grid}.faq-item:first-child{border-top:0;padding-top:4px}.faq-item dt{color:var(--ink);font-size:1rem;font-weight:850;line-height:1.35}.faq-item dd{color:var(--muted);margin:0;font-size:.96rem;line-height:1.55}.back-action{margin-top:2px}.message{border-radius:16px;align-items:flex-start;gap:9px;margin:0;padding:12px 14px;font-size:.94rem;line-height:1.45;animation:.18s both message-in;display:flex}.message.error{color:var(--error);background:var(--error-soft)}.message.success{color:var(--success);background:var(--success-soft)}.message.neutral{color:var(--warning);background:var(--warning-soft)}.birthday-confetti{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:hidden}.birthday-confetti-piece{top:-28px;left:var(--confetti-left);width:var(--confetti-size);height:calc(var(--confetti-size) * 1.75);background:var(--confetti-color);opacity:0;animation:birthday-confetti-fall var(--confetti-duration) cubic-bezier(.18, .74, .31, 1) var(--confetti-delay) both;will-change:transform, opacity;border-radius:3px;position:absolute;transform:translateY(-28px)rotate(0)}.birthday-confetti-piece.circle{height:var(--confetti-size);border-radius:999px}.birthday-cursor-hat{--cursor-x:50vw;--cursor-y:50vh;z-index:30;opacity:0;pointer-events:none;width:28px;height:28px;transform:translate3d(calc(var(--cursor-x) - 14px), calc(var(--cursor-y) - 28px), 0) rotate(10deg);transition:opacity .12s;position:fixed;top:0;left:0}.birthday-cursor-hat[data-visible=true]{opacity:1}.birthday-cursor-hat:before{background:linear-gradient(135deg, transparent 0 20%, #ffffffb8 21% 28%, transparent 29% 50%), linear-gradient(135deg, var(--primary) 0 40%, #fff 41% 58%, var(--accent) 59% 100%);width:18px;height:22px;box-shadow:0 7px 16px color-mix(in srgb, var(--primary) 18%, transparent), inset 0 1px 0 #fff6;clip-path:polygon(50% 0,100% 100%,0 100%);content:"";border:1px solid #ffffff8a;border-radius:70% 70% 18% 18%;position:absolute;bottom:3px;left:5px}.birthday-cursor-hat:after{content:"";background:#fff;border-radius:999px;width:7px;height:7px;position:absolute;top:0;left:11px;box-shadow:0 0 0 2px #ffd60ac7,0 5px 14px #ffd60a3d}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes message-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes birthday-confetti-fall{0%{opacity:0;transform:translateY(-28px)rotate(0)}9%{opacity:1}78%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-drift), 108vh, 0) rotate(var(--confetti-rotation))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.birthday-confetti,.birthday-cursor-hat{display:none}}@media (width<=880px){.app-shell{width:min(100% - 24px,680px)}.use-section,.faq-page,.workspace{grid-template-columns:1fr}.featured-panel{min-height:0}}@media (width<=520px){.app-shell{padding-top:16px}h1{font-size:2.55rem}.tool-panel,.featured-panel{border-radius:18px;padding:18px}.faq-panel{padding:18px}.code-input-row{flex-direction:column;align-items:stretch;padding-top:10px}.code-input-row span{padding:0 14px 4px;font-size:.86rem}.code-input-row input{min-height:38px}}
