:root{--navy: #1a3c5e;--navy-dark: #12293f;--blue: #2d6cdf;--blue-bg: #e8f0fc;--bg: #f2f5f8;--card: #ffffff;--border: #d8dfe6;--border-strong: #b9c5d0;--text: #23303c;--muted: #64748b;--ok: #1a8a4a;--ok-bg: #e5f6ec;--ng: #c92a2a;--ng-bg: #fdeaea;--provisional: #9a6700;--provisional-bg: #fff4d6}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;background:var(--bg);color:var(--text);font-size:clamp(14px,1.111vw,16px);line-height:1.7}h1,h2,h3{margin:0;line-height:1.4}.app-header{background:var(--navy);color:#fff;padding:clamp(10px,.972vw,14px) clamp(16px,1.667vw,24px)}.app-header-inner{max-width:1440px;margin-inline:auto;display:flex;align-items:baseline;gap:clamp(8px,.833vw,12px);flex-wrap:wrap}.app-header h1{font-size:clamp(15px,1.25vw,18px)}.app-header-sub{font-size:clamp(11px,.903vw,13px);opacity:.85}main{padding:clamp(16px,1.944vw,28px) clamp(12px,1.667vw,24px) clamp(40px,4.167vw,60px)}main:focus{outline:none}.main-inner{width:100%;max-width:1440px;margin-inline:auto}.sim{display:flex;flex-direction:column;gap:clamp(16px,1.667vw,24px);font-size:clamp(16px,1.389vw,20px);line-height:1.7}.panel{background:var(--card);border:1px solid var(--border);border-radius:clamp(8px,.833vw,12px);padding:clamp(14px,1.528vw,22px)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:clamp(8px,.833vw,12px);flex-wrap:wrap;padding-bottom:clamp(10px,.972vw,14px);border-bottom:1px solid var(--border)}.panel-head h2{font-size:clamp(15px,1.25vw,18px)}.panel-actions{display:flex;gap:clamp(6px,.556vw,8px);flex-wrap:wrap}.btn{font:inherit;font-size:clamp(12px,.972vw,14px);border-radius:clamp(5px,.417vw,6px);padding:clamp(6px,.556vw,8px) clamp(10px,.972vw,14px);border:1px solid var(--border-strong);background:#fff;color:var(--text);cursor:pointer;line-height:1.4;transition:background .15s,border-color .15s}.btn:hover:not(:disabled){background:var(--blue-bg);border-color:var(--blue)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--navy);border-color:var(--navy);color:#fff;font-size:clamp(13px,1.042vw,15px);padding:clamp(9px,.833vw,12px) clamp(14px,1.389vw,20px);width:100%}.btn-primary:hover:not(:disabled){background:var(--navy-dark);border-color:var(--navy-dark)}.btn-link{border:none;background:none;color:var(--blue);padding:0;text-decoration:underline;align-self:flex-start}.btn-link:hover:not(:disabled){background:none}.notes{margin:0;padding-left:1.2em;font-size:clamp(11px,.903vw,13px);color:var(--muted);line-height:1.75}.notes .provisional{color:var(--provisional)}.badge{display:inline-block;font-size:clamp(10px,.764vw,11px);line-height:1.5;padding:0 clamp(4px,.347vw,5px);border-radius:clamp(3px,.208vw,3px);margin-left:clamp(4px,.347vw,5px);font-weight:700;vertical-align:middle}.badge-provisional{background:var(--provisional-bg);color:var(--provisional)}.badge-recommend{background:var(--ok-bg);color:var(--ok)}.plan-size.selected .badge-recommend{background:#ffffffe6}.provisional-note{margin:clamp(10px,.833vw,12px) 0 0;font-size:clamp(11px,.903vw,13px);color:var(--provisional);background:var(--provisional-bg);border-radius:clamp(4px,.278vw,4px);padding:clamp(7px,.625vw,9px) clamp(9px,.764vw,11px);line-height:1.7}.muted{color:var(--muted)}.small{font-size:clamp(11px,.903vw,13px)}.toast{position:fixed;left:50%;bottom:clamp(20px,2.222vw,32px);transform:translate(-50%);background:var(--navy-dark);color:#fff;font-size:clamp(12px,.972vw,14px);padding:clamp(8px,.694vw,10px) clamp(14px,1.389vw,20px);border-radius:9999px;box-shadow:0 4px 16px #0003;z-index:100}.app-tabs{display:flex;gap:clamp(4px,.417vw,6px)}.app-tab{color:#fff;text-decoration:none;font-size:clamp(12px,.972vw,14px);padding:clamp(4px,.417vw,6px) clamp(10px,.972vw,14px);border-radius:clamp(4px,.417vw,6px);opacity:.75}.app-tab:hover{opacity:1;background:#ffffff1f}.app-tab.active{opacity:1;background:#ffffff2e;font-weight:600}.app-header-user{margin-left:auto;display:flex;align-items:center;gap:clamp(6px,.556vw,8px)}.app-header-user .muted{color:#fffc}.app-header-user .btn-link{color:#fff;opacity:.85}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(16px,2.222vw,32px)}.auth-card{width:100%;max-width:clamp(300px,29.167vw,420px);display:flex;flex-direction:column;gap:clamp(10px,.972vw,14px)}.field{display:flex;flex-direction:column;gap:clamp(3px,.278vw,4px)}.field>span{font-size:clamp(11px,.903vw,13px);color:var(--muted)}.field input,.field select{font-family:inherit;font-size:clamp(13px,1.042vw,15px);padding:clamp(6px,.556vw,8px) clamp(8px,.694vw,10px);border:1px solid var(--border-strong);border-radius:clamp(4px,.417vw,6px);background:#fff;color:var(--text);min-width:0}.field input:focus,.field select:focus{outline:2px solid var(--blue);outline-offset:-1px}.field.grow{flex:1 1 clamp(160px,16.667vw,240px)}.form-row{display:flex;flex-wrap:wrap;gap:clamp(10px,.972vw,14px);margin-bottom:clamp(10px,.972vw,14px)}.inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(160px,16.667vw,240px),1fr));align-items:end;gap:clamp(10px,.972vw,14px);padding:clamp(12px,1.111vw,16px);background:var(--bg);border-radius:clamp(6px,.556vw,8px);margin-bottom:clamp(12px,1.111vw,16px)}.inline-form .btn{width:auto;justify-self:start}.form-error{color:var(--ng);background:var(--ng-bg);padding:clamp(8px,.694vw,10px) clamp(10px,.833vw,12px);border-radius:clamp(4px,.417vw,6px);font-size:clamp(12px,.972vw,14px);margin:clamp(8px,.694vw,10px) 0}.form-total{display:flex;align-items:baseline;gap:clamp(8px,.694vw,10px);padding:clamp(10px,.833vw,12px) clamp(12px,1.111vw,16px);background:var(--blue-bg);border-radius:clamp(4px,.417vw,6px);margin:clamp(12px,1.111vw,16px) 0}.form-total strong{font-size:clamp(18px,1.667vw,24px);color:var(--navy)}.admin{display:flex;flex-direction:column;gap:clamp(12px,1.111vw,16px)}.breadcrumb{display:flex;align-items:center;gap:clamp(6px,.556vw,8px);font-size:clamp(11px,.903vw,13px);color:var(--muted)}.breadcrumb a{color:var(--blue)}.empty{color:var(--muted);padding:clamp(16px,1.667vw,24px);text-align:center}.alert{color:var(--ng);background:var(--ng-bg);padding:clamp(8px,.694vw,10px) clamp(10px,.833vw,12px);border-radius:clamp(4px,.417vw,6px);font-size:clamp(12px,.972vw,14px)}.notice{color:var(--provisional);background:var(--provisional-bg);padding:clamp(8px,.694vw,10px) clamp(10px,.833vw,12px);border-radius:clamp(4px,.417vw,6px);font-size:clamp(12px,.972vw,14px)}.balance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(120px,11.111vw,160px),1fr));gap:clamp(8px,.833vw,12px);margin:clamp(12px,1.111vw,16px) 0}.balance-card{display:flex;flex-direction:column;gap:clamp(2px,.139vw,2px);padding:clamp(10px,.972vw,14px);border:1px solid var(--border);border-radius:clamp(6px,.556vw,8px);background:#fff}.balance-card.main{background:var(--navy);color:#fff;border-color:var(--navy)}.balance-card.main .muted{color:#ffffffbf}.balance-label{font-size:clamp(11px,.903vw,13px);opacity:.85}.balance-value{font-size:clamp(20px,1.944vw,28px);font-weight:700;line-height:1.3}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:clamp(12px,.972vw,14px)}.data-table th,.data-table td{text-align:left;padding:clamp(8px,.694vw,10px) clamp(8px,.694vw,10px);border-bottom:1px solid var(--border);vertical-align:top}.data-table thead th{background:var(--bg);color:var(--muted);font-weight:600;font-size:clamp(11px,.903vw,13px);white-space:nowrap}.data-table tbody th{font-weight:600}.data-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.data-table .strong{font-weight:700}.data-table .minus{color:var(--ng)}.data-table .row-muted th,.data-table .row-muted td{color:var(--muted);text-decoration-color:var(--muted)}.data-table a{color:var(--blue)}.data-table td .muted,.data-table td .entry-desc{display:block}.badge-warn{color:var(--provisional);background:var(--provisional-bg)}.badge-alert{color:var(--ng);background:var(--ng-bg)}.picker-list{list-style:none;margin:clamp(10px,.972vw,14px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(240px,25vw,360px),1fr));gap:clamp(4px,.417vw,6px)}.picker-row{display:grid;grid-template-columns:1fr auto clamp(64px,5.556vw,80px);align-items:center;gap:clamp(6px,.556vw,8px);padding:clamp(5px,.486vw,7px) clamp(8px,.694vw,10px);border:1px solid var(--border);border-radius:clamp(4px,.417vw,6px)}.picker-row.active{border-color:var(--blue);background:var(--blue-bg)}.picker-name{font-size:clamp(12px,.972vw,14px)}.picker-row input{font-family:inherit;font-size:clamp(13px,1.042vw,15px);text-align:right;padding:clamp(4px,.347vw,5px) clamp(6px,.486vw,7px);border:1px solid var(--border-strong);border-radius:clamp(4px,.417vw,6px);min-width:0}.invite-result{padding:clamp(12px,1.111vw,16px);background:var(--ok-bg);border-radius:clamp(6px,.556vw,8px);margin-bottom:clamp(12px,1.111vw,16px);font-size:clamp(12px,.972vw,14px)}.invite-url{display:flex;gap:clamp(6px,.556vw,8px);margin:clamp(8px,.694vw,10px) 0}.invite-url input{flex:1 1 auto;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(11px,.903vw,13px);padding:clamp(6px,.556vw,8px);border:1px solid var(--border-strong);border-radius:clamp(4px,.417vw,6px);background:#fff}.reverse-form{display:flex;gap:clamp(4px,.417vw,6px);margin-top:clamp(4px,.347vw,6px)}.reverse-form input{font-family:inherit;font-size:clamp(11px,.903vw,13px);padding:clamp(4px,.347vw,5px) clamp(6px,.486vw,8px);border:1px solid var(--border-strong);border-radius:clamp(4px,.417vw,6px);min-width:clamp(120px,11.111vw,160px)}.step-nav{display:flex;gap:clamp(6px,.556vw,8px);flex-wrap:wrap}.step-chip{flex:1 1 clamp(140px,13.889vw,200px);display:flex;align-items:center;gap:clamp(8px,.694vw,10px);font:inherit;font-size:clamp(14px,1.181vw,17px);padding:clamp(10px,.833vw,12px) clamp(12px,1.111vw,16px);border:1px solid var(--border);border-radius:clamp(6px,.556vw,8px);background:#fff;color:var(--muted);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.step-chip:disabled{opacity:.45;cursor:not-allowed}.step-chip .step-num{display:grid;place-items:center;width:clamp(28px,2.222vw,32px);height:clamp(28px,2.222vw,32px);border-radius:9999px;background:var(--bg);color:var(--muted);font-weight:700;flex-shrink:0}.step-chip.current{border-color:var(--navy);background:var(--navy);color:#fff;font-weight:700}.step-chip.current .step-num{background:#ffffff38;color:#fff}.step-chip.done{color:var(--text);border-color:var(--border-strong)}.step-chip.done .step-num{background:var(--ok-bg);color:var(--ok)}.step-head h2{font-size:clamp(24px,2.5vw,36px);line-height:1.4}.step-head p{margin:clamp(6px,.556vw,8px) 0 0;font-size:clamp(15px,1.25vw,18px);color:var(--muted)}.step-tools{display:flex;gap:clamp(8px,.694vw,10px);flex-wrap:wrap}.step-tools .btn{font-size:clamp(14px,1.111vw,16px);padding:clamp(8px,.694vw,10px) clamp(14px,1.181vw,17px)}.pick-group h3{font-size:clamp(15px,1.25vw,18px);color:var(--muted);letter-spacing:.04em;padding-bottom:clamp(6px,.486vw,7px);border-bottom:1px solid var(--border);margin-bottom:clamp(12px,1.111vw,16px)}.pick-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(210px,17.361vw,250px),1fr));gap:clamp(12px,1.111vw,16px)}.pick-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(4px,.347vw,5px);padding:clamp(14px,1.25vw,18px) clamp(12px,1.111vw,16px) clamp(12px,1.111vw,16px);background:var(--card);border:2px solid var(--border);border-radius:clamp(10px,.833vw,12px);transition:border-color .15s,box-shadow .15s}.pick-card.active{border-color:var(--blue);box-shadow:0 0 0 clamp(3px,.278vw,4px) var(--blue-bg)}.pick-figure{width:100%;height:clamp(78px,6.944vw,100px);display:grid;place-items:center;margin-bottom:clamp(4px,.347vw,6px)}.product-figure{width:auto;height:100%;max-width:100%}.pick-card h4{margin:0;font-size:clamp(17px,1.528vw,22px);line-height:1.4}.pick-note{margin:0;font-size:clamp(12px,1.042vw,15px);color:var(--muted);line-height:1.6;min-height:clamp(38px,3.333vw,48px)}.pick-tickets{margin:clamp(2px,.139vw,2px) 0 clamp(8px,.694vw,10px);font-size:clamp(19px,1.736vw,25px);font-weight:700;color:var(--navy)}.pick-unit{font-size:clamp(13px,1.111vw,16px);font-weight:400;color:var(--muted)}.stepper{display:flex;align-items:stretch;gap:clamp(6px,.486vw,7px);width:100%}.stepper button{flex:0 0 clamp(42px,3.472vw,50px);font:inherit;font-size:clamp(21px,1.944vw,28px);line-height:1;border:1px solid var(--border-strong);border-radius:clamp(6px,.556vw,8px);background:#fff;color:var(--navy);cursor:pointer;transition:background .15s,border-color .15s}.stepper button:hover:not(:disabled){background:var(--blue-bg);border-color:var(--blue)}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper input{flex:1 1 auto;min-width:0;font:inherit;font-size:clamp(21px,1.944vw,28px);font-weight:700;text-align:center;padding:clamp(6px,.486vw,7px) 0;border:1px solid var(--border-strong);border-radius:clamp(6px,.556vw,8px);background:#fff;color:var(--text);-moz-appearance:textfield}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input:focus{outline:2px solid var(--blue);outline-offset:-1px}.pick-subtotal{margin:clamp(6px,.486vw,8px) 0 0;font-size:clamp(14px,1.181vw,17px);font-weight:700;color:var(--blue)}.step-footer{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,1.111vw,16px);flex-wrap:wrap;padding:clamp(12px,1.111vw,16px) clamp(14px,1.389vw,20px);background:var(--card);border:1px solid var(--border);border-radius:clamp(10px,.833vw,12px);box-shadow:0 -2px 16px #0000000f}.footer-picked{flex:1 1 clamp(180px,20.833vw,300px);display:flex;flex-wrap:wrap;align-items:center;gap:clamp(5px,.417vw,6px);min-width:0;max-height:clamp(72px,6.944vw,100px);overflow-y:auto}.footer-chip{font-size:clamp(13px,1.042vw,15px);line-height:1.5;padding:clamp(3px,.278vw,4px) clamp(8px,.694vw,10px);background:var(--blue-bg);color:var(--navy);border-radius:9999px;white-space:nowrap}.footer-chip b{margin-left:clamp(4px,.347vw,5px);font-weight:700}.footer-empty{font-size:clamp(13px,1.042vw,15px);color:var(--muted)}.footer-right{flex:0 0 auto;display:flex;align-items:center;gap:clamp(14px,1.389vw,20px);flex-wrap:wrap}.footer-total{display:flex;align-items:baseline;gap:clamp(10px,.833vw,12px);font-size:clamp(15px,1.25vw,18px);color:var(--muted)}.footer-total strong{font-size:clamp(28px,2.778vw,40px);color:var(--navy)}.btn-next{font-size:clamp(17px,1.458vw,21px);padding:clamp(12px,1.111vw,16px) clamp(24px,2.222vw,32px);width:auto}.btn-back{font-size:clamp(14px,1.181vw,17px);padding:clamp(10px,.833vw,12px) clamp(16px,1.389vw,20px)}.pattern-switch{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(8px,.694vw,10px);margin-bottom:clamp(12px,1.111vw,16px);padding:clamp(10px,.833vw,12px) clamp(12px,1.111vw,16px);background:var(--navy-dark);border-radius:clamp(10px,.833vw,12px)}.pattern-switch-label{font-size:clamp(13px,1.111vw,16px);color:#fff;font-weight:700}.pattern-btn{font:inherit;font-size:clamp(13px,1.181vw,17px);font-weight:700;padding:clamp(8px,.694vw,10px) clamp(14px,1.25vw,18px);border:2px solid rgba(255,255,255,.35);border-radius:9999px;background:#ffffff14;color:#ffffffd9;cursor:pointer}.pattern-btn-a.selected{background:#7a5bd0;border-color:#b9a3f0;color:#fff;box-shadow:0 0 0 3px #7a5bd059,0 4px 14px #7a5bd073}.pattern-btn-b.selected{background:var(--ok);border-color:#8fe0b2;color:#fff;box-shadow:0 0 0 3px #1a8a4a59,0 4px 14px #1a8a4a73}.plan-hero-effective{display:block;margin-top:clamp(8px,.694vw,10px);font-size:clamp(20px,1.806vw,26px);font-weight:700;color:#cdbcf3}.plan-hero-effective-note{display:block;font-size:clamp(12px,1.042vw,15px);font-weight:400;opacity:.85;color:#fff}.term-effective{font-size:clamp(16px,1.389vw,20px);font-weight:700;color:#6d4fc4}.plan-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(260px,24.306vw,350px),1fr));gap:clamp(12px,1.111vw,16px);align-items:stretch}.plan-hero-main{display:flex;flex-direction:column;justify-content:center;padding:clamp(20px,2.083vw,30px);background:var(--navy);color:#fff;border-radius:clamp(10px,.833vw,12px)}.plan-hero-label{font-size:clamp(14px,1.181vw,17px);opacity:.85}.plan-hero-price{font-size:clamp(36px,4.167vw,60px);font-weight:700;line-height:1.15}.plan-hero-unit{font-size:clamp(14px,1.181vw,17px);opacity:.85}.plan-hero-breakdown{margin-top:clamp(14px,1.25vw,18px);padding:clamp(12px,1.111vw,16px) clamp(14px,1.25vw,18px);background:#ffffff14;border:1px solid rgba(255,255,255,.3);border-radius:clamp(8px,.694vw,10px);display:flex;flex-direction:column;gap:clamp(6px,.556vw,8px)}.phb-row{display:flex;justify-content:space-between;align-items:baseline;gap:clamp(10px,.833vw,12px);font-size:clamp(14px,1.181vw,17px)}.phb-row+.phb-row{padding-top:clamp(6px,.556vw,8px);border-top:1px dashed rgba(255,255,255,.3)}.phb-amount{font-weight:700;white-space:nowrap}.phb-badge{display:inline-block;margin-right:clamp(6px,.556vw,8px);padding:clamp(2px,.208vw,3px) clamp(8px,.694vw,10px);background:#ffd166;color:var(--navy-dark);font-size:clamp(12px,1.042vw,15px);font-weight:700;border-radius:9999px}.phb-note{margin:0;font-size:clamp(12px,1.042vw,15px);line-height:1.6;opacity:.8}.plan-hero-compare{display:flex;flex-direction:column;justify-content:center;gap:clamp(4px,.347vw,6px);padding:clamp(20px,2.083vw,30px);background:var(--card);border:1px solid var(--border);border-radius:clamp(10px,.833vw,12px)}.compare-label{font-size:clamp(14px,1.181vw,17px);color:var(--muted)}.compare-price{font-size:clamp(24px,2.222vw,32px);font-weight:700;color:var(--muted);text-decoration:line-through}.compare-savings{font-size:clamp(21px,1.944vw,28px);font-weight:700;color:var(--ok)}.breakdown h3{font-size:clamp(17px,1.389vw,20px);margin-bottom:clamp(10px,.833vw,12px)}.usage-wrap{position:relative;margin-bottom:clamp(14px,1.25vw,18px)}.usage-wrap.has-marker{padding-top:clamp(26px,2.222vw,32px)}.usage-marker{position:absolute;top:0;transform:translate(-50%);z-index:1}.usage-marker-label{display:inline-block;padding:clamp(2px,.208vw,3px) clamp(8px,.694vw,10px);background:var(--navy-dark);color:#fff;font-size:clamp(11px,.972vw,14px);font-weight:700;border-radius:9999px;white-space:nowrap}.usage-bar-box{position:relative}.usage-bar{display:flex;height:clamp(36px,3.125vw,45px);border-radius:clamp(8px,.694vw,10px);overflow:hidden}.usage-seg{display:flex;align-items:center;justify-content:center;min-width:0;color:#fff;font-weight:700;font-size:clamp(12px,1.042vw,15px);white-space:nowrap;overflow:hidden}.usage-seg-rest{background:#e2e8f0;color:var(--muted)}.usage-overage{position:absolute;top:0;bottom:0;right:0;border-left:3px dashed var(--navy-dark);background:repeating-linear-gradient(45deg,rgba(255,255,255,.45) 0,rgba(255,255,255,.45) clamp(5px,.417vw,6px),transparent clamp(5px,.417vw,6px),transparent clamp(10px,.833vw,12px));border-radius:0 clamp(8px,.694vw,10px) clamp(8px,.694vw,10px) 0;pointer-events:none}.footer-bar{width:100%}.footer-bar .usage-wrap{margin-bottom:0}.usage-compact .usage-bar{height:clamp(10px,.972vw,14px);border-radius:9999px}.usage-compact .usage-overage{border-left-width:2px;border-radius:0 9999px 9999px 0}.breakdown-chip{display:inline-block;margin-right:clamp(8px,.694vw,10px);padding:clamp(2px,.208vw,3px) clamp(8px,.694vw,10px);color:#fff;font-size:clamp(13px,1.111vw,16px);font-weight:700;border-radius:clamp(5px,.417vw,6px);white-space:nowrap}.breakdown ul{list-style:none;margin:0;padding:0}.breakdown li{display:flex;align-items:baseline;justify-content:space-between;gap:clamp(10px,.833vw,12px);padding:clamp(9px,.764vw,11px) 0;border-bottom:1px solid var(--border);font-size:clamp(16px,1.319vw,19px)}.breakdown-qty{margin-left:clamp(8px,.694vw,10px);color:var(--muted);font-size:clamp(14px,1.181vw,17px)}.breakdown-tickets{font-weight:700;white-space:nowrap}.breakdown-total{display:flex;align-items:baseline;justify-content:space-between;margin:clamp(10px,.833vw,12px) 0 0;font-size:clamp(16px,1.319vw,19px)}.breakdown-total strong{font-size:clamp(24px,2.222vw,32px);color:var(--navy)}.size-picker{border:1px solid var(--border);border-radius:clamp(8px,.694vw,10px);background:var(--card);padding:clamp(12px,1.111vw,16px)}.size-picker summary{cursor:pointer;font-size:clamp(14px,1.181vw,17px);color:var(--blue)}.size-picker .muted{margin:clamp(10px,.833vw,12px) 0 0;font-size:clamp(13px,1.042vw,15px)}.size-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(110px,9.722vw,140px),1fr));gap:clamp(8px,.694vw,10px);margin-top:clamp(12px,1.111vw,16px)}.size-btn{font:inherit;font-size:clamp(15px,1.25vw,18px);padding:clamp(10px,.903vw,13px) clamp(8px,.694vw,10px);border:1px solid var(--border-strong);border-radius:clamp(6px,.556vw,8px);background:#fff;cursor:pointer}.size-btn.selected{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:700}.size-tag{display:block;font-size:clamp(11px,.903vw,13px);color:var(--ok);font-weight:700}.size-btn.selected .size-tag{color:#9ff0c1}.term-size-picker{border:1px solid var(--border);border-radius:clamp(8px,.694vw,10px);background:var(--card);padding:clamp(12px,1.111vw,16px)}.term-size-label{display:block;font-size:clamp(13px,1.042vw,15px);color:var(--muted)}.term-chart{display:flex;align-items:stretch;gap:clamp(8px,1.111vw,16px);padding:clamp(16px,1.667vw,24px) clamp(14px,1.389vw,20px);background:var(--card);border:1px solid var(--border);border-radius:clamp(10px,.833vw,12px)}.chart-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:clamp(4px,.417vw,6px);font:inherit;text-align:center;background:none;border:none;padding:0}button.chart-col{cursor:pointer}.chart-badge{font-size:clamp(12px,1.042vw,15px);font-weight:700;color:var(--ok);background:var(--ok-bg);padding:clamp(2px,.208vw,3px) clamp(8px,.694vw,10px);border-radius:9999px;white-space:nowrap}.chart-badge.negative{color:var(--muted);background:#eef1f5}.chart-badge-empty{visibility:hidden}.chart-amount{font-size:clamp(13px,1.25vw,18px);font-weight:700;white-space:nowrap}.chart-amount-baseline{color:var(--muted)}.chart-bar-area{width:100%;height:clamp(140px,13.889vw,200px);display:flex;align-items:flex-end;justify-content:center;border-bottom:2px solid var(--border-strong)}.chart-bar{width:min(62%,clamp(48px,6.667vw,96px));border-radius:clamp(6px,.556vw,8px) clamp(6px,.556vw,8px) 0 0;transition:height .35s ease}.chart-bar-baseline{background:#b9c5d0}.chart-col.selected .chart-bar{box-shadow:0 0 0 3px var(--navy)}.chart-name{font-size:clamp(13px,1.111vw,16px);font-weight:700;color:var(--text)}.chart-name .term-tag{display:block}.term-grid{list-style:none;margin:clamp(12px,1.111vw,16px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(230px,19.444vw,280px),1fr));gap:clamp(12px,1.111vw,16px)}.term-card{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(2px,.139vw,3px);font:inherit;text-align:left;padding:clamp(18px,1.667vw,24px);background:var(--card);border:2px solid var(--border);border-radius:clamp(10px,.833vw,12px);cursor:pointer;transition:border-color .15s,box-shadow .15s}.term-card:hover{border-color:var(--blue)}.term-card.selected{border-color:var(--navy);box-shadow:0 0 0 clamp(3px,.278vw,4px) var(--blue-bg)}.term-name{font-size:clamp(17px,1.458vw,21px);font-weight:700}.term-tag{display:inline-block;margin-left:clamp(6px,.486vw,8px);font-size:clamp(11px,.903vw,13px);font-weight:700;color:var(--ok);background:var(--ok-bg);border-radius:clamp(3px,.208vw,4px);padding:0 clamp(5px,.417vw,6px);vertical-align:middle}.term-price{font-size:clamp(28px,2.639vw,38px);font-weight:700;color:var(--navy);line-height:1.2}.term-unit{font-size:clamp(13px,1.042vw,15px);color:var(--muted)}.term-discount{margin-top:clamp(8px,.694vw,10px);font-size:clamp(14px,1.181vw,17px);color:var(--muted)}.term-breakdown{margin-top:clamp(4px,.347vw,6px);font-size:clamp(12px,1.042vw,15px);color:var(--muted);line-height:1.6}.term-breakdown-badge{display:inline-block;margin-right:clamp(3px,.278vw,4px);padding:clamp(1px,.139vw,2px) clamp(6px,.556vw,8px);background:#ffd166;color:var(--navy-dark);font-size:clamp(11px,.903vw,13px);font-weight:700;border-radius:9999px}.term-carryover{margin-top:auto;padding:clamp(8px,.694vw,10px) clamp(10px,.833vw,12px);width:100%;background:#f1ecfb;color:#6d4fc4;font-size:clamp(13px,1.111vw,16px);font-weight:700;line-height:1.6;border-radius:clamp(6px,.556vw,8px)}.term-carryover-badge{display:inline-block;margin-right:clamp(6px,.556vw,8px);padding:clamp(1px,.139vw,2px) clamp(8px,.694vw,10px);background:#7a5bd0;color:#fff;font-size:clamp(11px,.903vw,13px);font-weight:700;border-radius:9999px;white-space:nowrap}.term-savings{font-size:clamp(15px,1.25vw,18px);font-weight:700;color:var(--ok)}.term-total{margin-top:clamp(8px,.694vw,10px);padding-top:clamp(8px,.694vw,10px);border-top:1px solid var(--border);width:100%;font-size:clamp(13px,1.111vw,16px);color:var(--muted)}.term-total-savings{color:var(--ok);font-weight:700}.term-savings.negative,.term-total-savings.negative,.compare-savings.negative{color:var(--muted)}.baseline-line{margin:0;padding:clamp(12px,1.111vw,16px) clamp(14px,1.181vw,17px);background:var(--bg);border-radius:clamp(8px,.694vw,10px);font-size:clamp(14px,1.181vw,17px);color:var(--muted)}.sim .notes{font-size:clamp(13px,1.042vw,15px)}@media (max-width: 600px){.step-footer{flex-direction:column;align-items:stretch}.step-footer .btn{width:100%}.footer-right{flex-direction:column;align-items:stretch;gap:clamp(8px,.694vw,10px)}.footer-total{justify-content:space-between}}
