.sp{--sp-bg:#f5f1e8;--sp-green:#1b3326;--sp-green2:#142a1e;--sp-text:#1a1a18;--sp-mid:#5e5c56;--sp-muted:#7a7870;--sp-faint:#8a8780;--sp-border:#e3dfd8;--sp-divider:#e8e4dc;--sp-card-sel:#eaede5;--sp-input:#fff;--sp-ease:cubic-bezier(0.22,1,0.36,1);min-height:100vh;font-family:var(--font-sans,"DM Sans",system-ui,sans-serif)}.sp,.sp-nav{background:var(--sp-bg)}.sp-nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;height:64px;border-bottom:1px solid rgba(27,51,38,.09);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,52px);animation:navSlideDown .5s .05s both}.sp-nav-left{width:140px}.sp-nav-right{width:140px;justify-content:flex-end;gap:10px}.sp-back-btn,.sp-nav-right{display:flex;align-items:center}.sp-back-btn{background:none;border:none;cursor:pointer;font-size:14px;color:var(--sp-faint);font-family:var(--font-sans,"DM Sans",sans-serif);padding:0;gap:6px;transition:color .2s,gap .25s}.sp-back-btn:hover{color:var(--sp-text);gap:10px}.sp-progress{display:flex;gap:4px}.sp-dot{width:20px;height:3px;border-radius:2px;transition:background .45s ease}@keyframes slideInRight{0%{opacity:0;transform:translateX(56px)}to{opacity:1;transform:none}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-56px)}to{opacity:1;transform:none}}@keyframes navSlideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes confirmPop{0%{opacity:0;transform:scale(.4)}65%{transform:scale(1.18)}to{opacity:1;transform:scale(1)}}@keyframes ringExpand{0%{transform:scale(1);opacity:.5}to{transform:scale(2.5);opacity:0}}@keyframes floatBob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spScaleIn{0%{opacity:0;transform:scale(.86) translateY(14px)}to{opacity:1;transform:scale(1) translateY(0)}}.sp-plan-card{background:#fff;border:2px solid var(--sp-border);border-radius:18px;overflow:hidden;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .3s ease,border-color .3s ease}.sp-plan-card:hover{transform:translateY(-5px);box-shadow:0 14px 40px rgba(0,0,0,.13)}.sp-plan-card:active{transform:translateY(-2px) scale(.985)}.sp-plan-card.selected{background:var(--sp-card-sel);border-color:var(--sp-green);box-shadow:0 4px 24px rgba(27,51,38,.14)}.sp-slot-card{background:#fff;border:2px solid var(--sp-border);border-radius:20px;padding:36px 24px 32px;cursor:pointer;text-align:center;transition:transform .22s ease,background .3s ease,border-color .3s ease,box-shadow .22s ease}.sp-slot-card:hover{transform:scale(1.04);box-shadow:0 10px 32px rgba(0,0,0,.1)}.sp-slot-card:active{transform:scale(.97)}.sp-slot-card.selected{background:var(--sp-green);border-color:var(--sp-green)}.sp-input{width:100%;padding:13px 16px;background:var(--sp-input);border:1.5px solid var(--sp-border);border-radius:12px;font-size:15px;color:var(--sp-text);outline:none;font-family:var(--font-sans,"DM Sans",sans-serif);transition:border-color .2s,box-shadow .2s}.sp-input:focus{border-color:var(--sp-green);box-shadow:0 0 0 3px rgba(27,51,38,.06)}textarea.sp-input{resize:vertical;line-height:1.6}.sp-label{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sp-muted);margin-bottom:7px}.sp-field{margin-bottom:16px}.sp-field-error{font-size:12px;color:#c84444;margin-top:4px}.sp-btn{background:var(--sp-green);color:#f5f1e8;border:none;border-radius:100px;padding:15px 40px;font-size:15px;font-weight:500;cursor:pointer;font-family:var(--font-sans,"DM Sans",sans-serif);display:inline-flex;align-items:center;gap:8px;transition:background .2s,box-shadow .2s,transform .15s}.sp-btn:hover{background:var(--sp-green2);box-shadow:0 8px 24px rgba(27,51,38,.32);transform:translateY(-2px)}.sp-btn:active{transform:scale(.97)}.sp-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.sp-btn-full{width:100%;justify-content:center;border-radius:14px;padding:17px}.sp-ghost{background:none;border:1.5px solid #d4d0c8;border-radius:100px;padding:13px 32px;font-size:14px;color:var(--sp-mid);cursor:pointer;font-family:var(--font-sans,"DM Sans",sans-serif);transition:border-color .2s,color .2s,transform .15s}.sp-ghost:hover{border-color:var(--sp-green);color:var(--sp-green);transform:translateY(-2px)}.sp-ghost:active{transform:scale(.97)}@media (max-width:860px){.sp-sidebar{display:none!important}}