:root{color-scheme:light;--color-bg: #f7f8f5;--color-surface: #ffffff;--color-text: #1e2a38;--color-text-muted: #5c6b7a;--color-border: #d8dce0;--color-accent: #c68a3d;--color-accent-hover: #a9722f;--color-accent-soft: #f6ead7;--color-danger: #9a4a3a;--color-danger-bg: #f5e9e4;--font-heading: "Noto Serif JP", "Hiragino Mincho ProN", serif;--font-body: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--radius-md: 8px;--radius-sm: 6px}*{box-sizing:border-box}html{background:var(--color-bg)}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.7}.page{max-width:640px;margin:0 auto;padding:48px 24px}.page-wide{max-width:960px}h1,h2,h3{font-family:var(--font-heading);font-weight:600;letter-spacing:.01em}h1{font-size:1.6rem;margin-bottom:8px}h2{font-size:1.2rem;margin:28px 0 12px}.company-name{color:var(--color-text-muted);margin-top:0}.auth-form,.card-form{display:flex;flex-direction:column;gap:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px;margin-top:16px}label{font-size:.9rem;color:var(--color-text-muted);margin-top:8px}input{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;color:var(--color-text);background:var(--color-surface)}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button{margin-top:12px;padding:10px 16px;border:none;border-radius:var(--radius-sm);background:var(--color-accent);color:#fff;font-size:1rem;font-family:inherit;cursor:pointer;transition:background-color .15s ease}button:hover:not(:disabled){background:var(--color-accent-hover)}button:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.error-text{color:var(--color-danger);background:var(--color-danger-bg);padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem}.banner{border-radius:var(--radius-md);padding:16px;margin:16px 0}.banner-warning{background:var(--color-accent-soft);border:1px solid var(--color-accent)}.banner-warning a{color:var(--color-accent-hover);font-weight:500}.banner-info{background:var(--color-surface);border:1px solid var(--color-border)}.onboarding-next{display:flex;flex-direction:column;gap:8px}.onboarding-next a{font-weight:500}.auth-page{--bg: #f7f8f5;--navy: #1e2a38;--amber: #c68a3d;--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);max-width:640px;padding-top:64px;padding-bottom:64px}.auth-wordmark{text-align:center;font-family:"Noto Serif JP",serif;font-style:italic;font-size:22px;font-weight:500;letter-spacing:.02em;color:var(--navy);margin:0 0 40px}.auth-card{max-width:520px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:var(--card-shadow);padding:48px 44px}.auth-card h1{font-family:"Noto Serif JP",serif;font-weight:700;font-size:30px;letter-spacing:normal;text-align:center;margin:0 0 12px;color:var(--navy)}.auth-subtitle{text-align:center;font-size:14px;color:var(--text-secondary);margin:0 0 28px}.field-group{margin:0 0 20px}.auth-card .auth-form{border:1px solid var(--border);border-radius:12px;padding:24px;gap:0}.auth-page.is-signup .auth-card .auth-form{margin-top:24px}.auth-page.is-signup .auth-form input{margin-bottom:8px}.auth-card form{display:flex;flex-direction:column}.auth-card label{display:block;font-size:13px;color:var(--text-secondary);margin:0 0 8px}.auth-card input{width:100%;height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:14px;font-family:Noto Sans JP,sans-serif;margin:0 0 16px}.auth-card input:focus{border-color:var(--amber)}.auth-card button,.auth-signup-cta{width:100%;height:48px;margin-top:0;border-radius:8px;font-family:Noto Sans JP,sans-serif;font-size:15px;font-weight:500}.auth-card button:disabled{opacity:.45;cursor:not-allowed}.auth-card .btn-primary{background:var(--amber);color:#fff}.auth-card .btn-primary:hover:not(:disabled){background:var(--amber-hover)}.auth-card .btn-primary:disabled{background:var(--amber);color:#fff}.auth-signup-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--amber);color:#fff;text-decoration:none}.auth-signup-cta:hover{background:var(--amber-hover)}.auth-dev-magic-link{margin:8px 0 0;font-size:.85rem;color:var(--text-secondary)}.email-note{font-size:12px;color:var(--text-secondary);margin:0 0 16px;line-height:1.6}.auth-divider{display:flex;align-items:center;gap:12px;margin:28px 0 16px;color:var(--text-secondary);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-secondary{text-align:center}.auth-secondary-label{color:var(--text-secondary);font-size:13px;margin:0 0 16px}.google-signin-button{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:28px;background:#fff;color:var(--navy);border:1px solid var(--border)}.google-signin-button:hover:not(:disabled){background:#fafaf8}.google-signin-button:disabled{background:#fff;color:var(--navy)}.auth-switch-link{text-align:center;margin:0}.auth-switch-link a{font-size:13px;color:var(--text-secondary);text-decoration:underline}.auth-switch-link a:hover{color:var(--navy)}.notification-matrix-na{font-size:.8rem;color:var(--color-text-muted)}.rooms-table-wrapper{overflow-x:auto;margin-top:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.rooms-table{width:100%;border-collapse:collapse;font-size:.9rem}.rooms-table th,.rooms-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap}.rooms-table th{color:var(--color-text-muted);font-weight:500;font-size:.85rem}select{padding:6px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;background:var(--color-surface);color:var(--color-text)}.date-chip-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0}.date-chip{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;font-size:.85rem}.date-chip button{margin:0;padding:0 4px;background:transparent;color:var(--color-text-muted);font-size:1rem;line-height:1}.date-chip button:hover:not(:disabled){color:var(--color-danger);background:transparent}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-top:12px}.plan-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;text-align:center}.plan-price{font-size:1.1rem;font-weight:600;margin:8px 0 4px}.plan-cap{color:var(--color-text-muted);font-size:.9rem}.page-dashboard{--amber: #c68a3d;--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--warning-bg: #fbeae9;--warning-text: #b3453f;--ball-own-bg: #dce3ea;--ball-own-text: #1e2a38;--ball-client-bg: #eff3f8;--ball-client-text: #3a5a80;--ball-ended-bg: #efefef;--ball-ended-text: #6b7280;max-width:680px;padding:48px 24px 80px}.page-dashboard.is-active{max-width:880px}.page-dashboard h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 24px}.page-dashboard.is-active h1{margin:0 0 28px}.page-dashboard .empty-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:40px 32px;text-align:center}.page-dashboard .empty-card p{font-size:14px;color:var(--text-secondary);line-height:1.8;margin:0 0 24px}.page-dashboard .empty-card a{display:inline-flex;align-items:center;height:44px;padding:0 28px;background:var(--color-accent);color:#fff;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none}.page-dashboard .empty-card a:hover{background:var(--amber-hover)}.page-dashboard section{margin-bottom:40px}.page-dashboard h2{font-size:18px;font-weight:700;letter-spacing:normal;margin:0 0 12px}.page-dashboard.is-active h2{font-size:17px}.page-dashboard .plan-change-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 20px;border-radius:8px;background:var(--amber);color:#fff;text-decoration:none}.page-dashboard .plan-change-btn:hover{background:var(--amber-hover);color:#fff}.page-dashboard .capacity-warning{background:var(--warning-bg);color:var(--warning-text);border-radius:12px;padding:18px 20px;margin:-16px 0 24px;font-size:13.5px;line-height:1.8}.page-dashboard .report-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:32px}.page-dashboard .report-stats{display:flex;align-items:center;gap:20px}.page-dashboard .report-stat{display:flex;align-items:baseline;gap:6px}.page-dashboard .report-stat .value{font-size:22px;font-weight:700;color:var(--color-text)}.page-dashboard .report-stat .label{font-size:13px;color:var(--text-secondary)}.page-dashboard .report-stat.highlight{display:flex;align-items:baseline;gap:6px;background:var(--warning-bg);border-radius:30px;padding:10px 22px}.page-dashboard .report-stat.highlight .value{font-size:26px;font-weight:700;color:var(--warning-text)}.page-dashboard .report-stat.highlight .label{font-size:13px;color:var(--warning-text);margin-left:2px}.page-dashboard .report-divider{width:1px;height:32px;background:var(--border)}.page-dashboard .filter-tabs{display:flex;gap:8px;margin-bottom:16px}.page-dashboard .filter-tab{height:34px;padding:0 18px;border-radius:20px;border:1px solid var(--border);background:#fff;color:var(--text-secondary);font-size:13px;font-family:var(--font-body);cursor:pointer}.page-dashboard .filter-tab.active.own{background:var(--ball-own-bg);color:var(--ball-own-text);border-color:transparent}.page-dashboard .filter-tab.active.client{background:var(--ball-client-bg);color:var(--ball-client-text);border-color:transparent}.page-dashboard .filter-tab.active.ended{background:var(--ball-ended-bg);color:var(--ball-ended-text);border-color:transparent}.page-dashboard .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);overflow:hidden;margin-bottom:32px}.page-dashboard .room-table{width:100%;border-collapse:collapse}.page-dashboard .room-table th{text-align:left;font-size:12px;color:var(--text-secondary);font-weight:500;padding:14px 20px;border-bottom:1px solid var(--border);background:#fafaf8}.page-dashboard .room-table td{font-size:14px;padding:14px 20px;border-bottom:1px solid var(--border);vertical-align:middle}.page-dashboard .room-table tr:last-child td{border-bottom:none}.page-dashboard .room-name a{color:var(--color-text);text-decoration:none;font-weight:500}.page-dashboard .room-name a:hover{color:var(--amber-hover);text-decoration:underline}.page-dashboard .elapsed-days{color:var(--text-secondary)}.page-dashboard .elapsed-days.overdue{color:var(--warning-text);font-weight:700}.page-dashboard .empty-state{padding:32px 20px;text-align:center;color:var(--text-secondary);font-size:13.5px}.page-dashboard .plan-summary-card{display:flex;align-items:center;gap:20px;padding:24px}.page-dashboard .plan-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--color-accent);color:#fff;font-family:var(--font-heading);font-size:16px;font-weight:700;padding:10px 22px;border-radius:30px;flex-shrink:0}.page-dashboard .plan-usage{display:flex;align-items:baseline;gap:6px;flex:1}.page-dashboard .plan-usage .value{font-size:30px;font-weight:700;color:var(--color-text)}.page-dashboard .plan-usage .of{font-size:16px;font-weight:500;color:var(--text-secondary)}.page-dashboard .plan-usage .label{font-size:13px;color:var(--text-secondary);margin-left:6px}.card-element-wrapper{padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}a{color:var(--color-accent-hover)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:.85rem;font-weight:500;white-space:nowrap}.status-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.status-badge-neutral{background:#eceff1;color:var(--color-text-muted)}.status-badge-active{background:#e5eaf0;color:var(--color-text)}.status-badge-attention{background:var(--color-accent-soft);color:var(--color-accent-hover)}.status-badge-success{background:#eaf3ec;color:#2f6b45;padding:6px 14px;border-radius:20px;font-size:13px}.status-badge-success:before{background:#3e9160}.room-watch{margin:20px 0 8px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.room-watch-caption{margin:0 0 14px;font-size:.85rem;color:var(--color-text-muted)}.room-watch-grid{display:flex;flex-wrap:wrap;gap:10px}.room-watch-dot{width:10px;height:10px;border-radius:50%;background:var(--color-text);opacity:.35;flex-shrink:0}.room-watch-dot-alert{background:var(--color-accent);opacity:1;box-shadow:0 0 0 4px var(--color-accent-soft);animation:room-watch-pulse 2.6s ease-in-out infinite}@keyframes room-watch-pulse{0%,to{box-shadow:0 0 0 4px var(--color-accent-soft)}50%{box-shadow:0 0 0 8px var(--color-accent-soft)}}@media (prefers-reduced-motion: reduce){.room-watch-dot-alert{animation:none}}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:#fff;border-bottom:1px solid #e3e1d8}.wordmark{font-family:var(--font-heading);font-style:italic;font-size:18px;font-weight:500;letter-spacing:.02em;color:var(--color-text)}.app-nav{display:flex;gap:28px}.app-nav-link{font-size:13px;color:#6b7280;text-decoration:none}.app-nav-link.active{color:var(--color-text);font-weight:500;border-bottom:2px solid var(--color-accent);padding-bottom:4px}.account-menu{position:relative}.account-trigger{display:flex;align-items:center;gap:6px;margin:0;background:none;border:none;font-size:13.5px;color:var(--color-text);cursor:pointer;padding:8px 4px}.account-trigger:hover:not(:disabled){background:none}.account-trigger .caret{font-size:10px;color:#6b7280}.account-dropdown{position:absolute;top:100%;right:0;margin-top:6px;background:#fff;border:1px solid #e3e1d8;border-radius:10px;box-shadow:0 4px 24px #1e2a3814;min-width:180px;overflow:hidden;z-index:10}.account-dropdown-item{display:block;width:100%;margin:0;padding:12px 16px;border:none;border-radius:0;background:transparent;color:var(--color-text);font-size:13.5px;text-align:left;text-decoration:none;cursor:pointer}.account-dropdown-item:hover:not(:disabled){background:#fafaf8}.account-dropdown-item+.account-dropdown-item{border-top:1px solid #e3e1d8}.app-shell-content{flex:1;min-width:0}.trial-banner{padding:10px 16px;background:#efeae0;color:var(--color-text);font-size:13px;text-align:center;border-bottom:1px solid #e3e1d8}.trial-banner strong{color:#b37a30;font-weight:700}.trial-banner.past-due-banner{background:#fbeae9;color:#b3453f}.trial-banner.past-due-banner strong{color:#b3453f}.trial-banner.past-due-banner a{color:#b3453f;text-decoration:underline}@media (max-width: 768px){.app-header{flex-wrap:wrap;padding:16px 20px}.app-nav{gap:16px 20px;order:3;width:100%}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e2a3866;display:flex;align-items:center;justify-content:center;padding:16px;z-index:30}.modal-content{background:var(--color-surface);border-radius:var(--radius-md);padding:24px;width:100%;max-width:480px;max-height:calc(100vh - 32px);overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-header h2{margin:0}.modal-close{background:transparent;color:var(--color-text-muted);font-size:1.3rem;line-height:1;padding:0 4px;margin:0}.modal-close:hover:not(:disabled){background:transparent;color:var(--color-text)}.modal-footer{margin-top:20px;display:flex;justify-content:flex-end}.modal-box{background:var(--color-surface);border-radius:16px;box-shadow:0 4px 24px #1e2a3814;padding:32px;width:100%;max-width:400px}.modal-box h3{font-size:18px;font-weight:700;margin:0 0 12px}.modal-box p{font-size:14px;color:var(--color-text-muted);line-height:1.7;margin:0 0 24px}.modal-actions{display:flex;gap:12px}.modal-actions button{height:44px;border-radius:8px;font-size:14px;font-weight:500}.modal-btn-cancel{flex:1;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}.modal-btn-cancel:hover:not(:disabled){background:#fafaf8}.modal-btn-confirm{flex:1;background:var(--color-accent);border:none;color:#fff}.modal-btn-confirm:hover:not(:disabled){background:var(--color-accent-hover)}.room-edit-modal{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);border-radius:16px;box-shadow:var(--card-shadow);padding:32px;max-height:90vh}.room-edit-modal .modal-header{margin-bottom:20px}.room-edit-modal .modal-header h2{font-size:19px;font-weight:700;letter-spacing:normal;margin:0}.room-edit-modal .modal-close{width:28px;height:28px;padding:0;font-size:18px;color:var(--text-secondary)}.room-edit-modal .modal-close:hover:not(:disabled){background:transparent;color:var(--color-text)}.room-edit-modal input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.room-edit-modal .notify-line{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border)}.room-edit-modal .notify-line label{margin:0}.room-edit-modal .field-block{margin-bottom:20px}.room-edit-modal .field-block label{display:block;font-size:13.5px;font-weight:500;margin:0 0 4px}.room-edit-modal .field-hint{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.6}.room-edit-modal input[type=number]{width:100px;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;font-size:14px;text-align:right}.room-edit-modal .unit{font-size:13px;color:var(--text-secondary);margin-left:8px}.room-edit-modal .chip-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.room-edit-modal .chip{display:inline-flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--border);border-radius:20px;padding:6px 8px 6px 14px;font-size:13px}.room-edit-modal .chip button{width:18px;height:18px;margin:0;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;line-height:1}.room-edit-modal .chip button:hover:not(:disabled){background:var(--border);color:var(--color-text)}.room-edit-modal .add-row{display:flex;gap:8px}.room-edit-modal .add-row input[type=text]{flex:1;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;font-size:13.5px;margin:0}.room-edit-modal .add-btn{height:40px;padding:0 16px;margin:0;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.room-edit-modal .add-btn:hover:not(:disabled){background:var(--amber-hover)}.room-edit-modal .delete-hint{font-size:12px;color:var(--text-secondary);line-height:1.6;margin:-8px 0 20px}.room-edit-modal .modal-footer{margin-top:28px}.room-edit-modal .modal-footer.has-delete{justify-content:space-between}.room-edit-modal .close-btn{height:44px;padding:0 28px;margin:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:14px;font-family:inherit;cursor:pointer}.room-edit-modal .close-btn:hover:not(:disabled){background:#fafaf8}.room-edit-modal .delete-room-btn{height:44px;padding:0 20px;margin:0;border:1px solid #b3453f;border-radius:8px;background:#fff;color:#b3453f;font-size:14px;font-family:inherit;cursor:pointer}.room-edit-modal .delete-room-btn:hover:not(:disabled){background:#fbeae9}.room-bulk-modal{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--warning-bg: #fbeae9;--warning-text: #b3453f;border-radius:16px;box-shadow:var(--card-shadow);padding:32px;max-height:90vh}.room-bulk-modal .modal-header{margin-bottom:8px}.room-bulk-modal .modal-header h2{font-size:19px;font-weight:700;letter-spacing:normal;margin:0}.room-bulk-modal .modal-close{width:28px;height:28px;padding:0;font-size:18px;color:var(--text-secondary)}.room-bulk-modal .modal-close:hover:not(:disabled){background:transparent;color:var(--color-text)}.room-bulk-modal .modal-desc{font-size:13px;color:var(--text-secondary);margin:0 0 24px;line-height:1.7}.room-bulk-modal .warning-note{background:var(--warning-bg);color:var(--warning-text);font-size:12.5px;border-radius:8px;padding:10px 12px;margin-bottom:20px;line-height:1.6}.room-bulk-modal input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.room-bulk-modal .notify-line{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border)}.room-bulk-modal .notify-line label{margin:0}.room-bulk-modal .field-block{margin-bottom:20px}.room-bulk-modal .field-block label{display:block;font-size:13.5px;font-weight:500;margin:0 0 4px}.room-bulk-modal .field-hint{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.6}.room-bulk-modal input[type=number]{width:100px;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;font-size:14px;text-align:right}.room-bulk-modal .unit{font-size:13px;color:var(--text-secondary);margin-left:8px}.room-bulk-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.room-bulk-modal .btn-cancel{height:44px;padding:0 24px;margin:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:14px;font-family:inherit;cursor:pointer}.room-bulk-modal .btn-cancel:hover:not(:disabled){background:#fafaf8}.room-bulk-modal .btn-apply{height:44px;padding:0 28px;margin:0;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer}.room-bulk-modal .btn-apply:hover:not(:disabled){background:var(--amber-hover)}.room-bulk-modal .btn-apply:disabled{background:#d9d5c8;color:#9a968a;cursor:not-allowed}.account-settings-modal{--amber: #c68a3d;--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);border-radius:16px;box-shadow:var(--card-shadow);padding:32px;max-height:90vh}.account-settings-modal .modal-desc{font-size:13px;color:var(--text-secondary);margin:0 0 24px;line-height:1.7}.account-settings-modal .field-block{margin-bottom:18px}.account-settings-modal .field-block label{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text)}.account-settings-modal .field-optional{font-size:11.5px;color:var(--text-secondary);font-weight:400;margin-left:6px}.account-settings-modal input[type=text],.account-settings-modal input[type=tel]{width:100%;height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:14px;font-family:inherit}.account-settings-modal .section-divider{border:none;border-top:1px solid var(--border);margin:24px 0 20px}.account-settings-modal .section-label{font-size:12px;color:var(--text-secondary);margin:0 0 4px;font-weight:500}.account-settings-modal .section-hint{font-size:12px;color:var(--text-secondary);margin:0 0 16px;line-height:1.6}.account-settings-modal .modal-footer{gap:12px}.account-settings-modal .btn-cancel{height:44px;padding:0 24px;margin:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:14px;font-family:inherit;cursor:pointer}.account-settings-modal .btn-cancel:hover:not(:disabled){background:#fafaf8}.account-settings-modal .btn-save{height:44px;padding:0 28px;margin:0;border:none;border-radius:8px;background:var(--amber);color:#fff;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer}.account-settings-modal .btn-save:hover:not(:disabled){background:var(--amber-hover)}.holiday-calendar-hint{margin:16px 0 8px;font-size:.85rem;color:var(--color-text-muted)}.holiday-calendar{max-width:480px}.holiday-calendar-nav{display:flex;justify-content:space-between;margin-bottom:8px}.holiday-calendar-months{display:flex;flex-wrap:wrap;gap:16px}.holiday-calendar-month{flex:1 1 200px}.holiday-calendar-month-label{margin:0 0 8px;font-weight:500;text-align:center}.holiday-calendar-weekdays,.holiday-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.holiday-calendar-weekdays span{font-size:.8rem;color:var(--color-text-muted);padding:4px 0}.holiday-calendar-day{display:flex;flex-direction:column;align-items:center;gap:1px;font-size:.85rem;padding:4px 0 6px}.holiday-calendar-day-number{line-height:1.4}.holiday-calendar-day-holiday{color:var(--color-accent-hover);font-weight:700;background:var(--color-accent-soft);border-radius:var(--radius-sm)}.page-rooms-pre-launch{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--warning-bg: #fbeae9;--warning-text: #b3453f;max-width:880px;padding:48px 24px 80px}.page-rooms-pre-launch h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 4px}.page-rooms-pre-launch .page-desc{font-size:13.5px;color:var(--text-secondary);line-height:1.8;margin:0 0 28px}.page-rooms-pre-launch h2{font-size:17px;font-weight:700;letter-spacing:normal;margin:0 0 12px}.page-rooms-pre-launch .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);overflow:hidden;margin-bottom:32px}.page-rooms-pre-launch .room-list-scroll{max-height:280px;overflow-y:auto}.page-rooms-pre-launch .empty-rooms-warning{padding:24px;text-align:center;background:var(--warning-bg);color:var(--warning-text);font-size:13.5px;line-height:1.8;border-radius:12px}.page-rooms-pre-launch table{width:100%;border-collapse:collapse}.page-rooms-pre-launch th{text-align:left;font-size:12px;color:var(--text-secondary);font-weight:500;padding:14px 20px;border-bottom:1px solid var(--border);background:#fafaf8}.page-rooms-pre-launch td{font-size:14px;padding:14px 20px;border-bottom:1px solid var(--border)}.page-rooms-pre-launch tr:last-child td{border-bottom:none}.page-rooms-pre-launch .plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.page-rooms-pre-launch .plan-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:28px 20px;text-align:center}.page-rooms-pre-launch .plan-card.selected{border-color:var(--color-accent);border-width:2px}.page-rooms-pre-launch .plan-name{font-family:var(--font-heading);font-size:17px;font-weight:700;letter-spacing:normal;margin:0 0 8px}.page-rooms-pre-launch .plan-price{font-size:22px;font-weight:700;margin:0 0 4px}.page-rooms-pre-launch .plan-price span{font-size:13px;font-weight:400;color:var(--text-secondary)}.page-rooms-pre-launch .plan-limit{font-size:13px;color:var(--text-secondary);margin-bottom:20px}.page-rooms-pre-launch .warning-note{background:var(--warning-bg);color:var(--warning-text);font-size:12.5px;border-radius:8px;padding:10px 12px;margin-bottom:16px;line-height:1.6}.page-rooms-pre-launch .plan-btn{width:100%;height:44px;border:none;border-radius:8px;font-size:14px;font-weight:500;margin-top:0;cursor:pointer;background:var(--color-accent);color:#fff}.page-rooms-pre-launch .plan-btn:hover:not(:disabled){background:var(--amber-hover)}.page-rooms-pre-launch .plan-btn:disabled{background:#d9d5c8;color:#9a968a;cursor:not-allowed}.page-rooms-pre-launch .plan-btn.selected-label{background:#eaf3ec;color:#2f6b45;cursor:default}.page-rooms-pre-launch .start-bar{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:20px 24px}.page-rooms-pre-launch .start-bar p{font-size:14px;margin:0}.page-rooms-pre-launch .start-btn{height:46px;padding:0 32px;margin:0;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;background:var(--color-accent);color:#fff}.page-rooms-pre-launch .start-btn:hover:not(:disabled){background:var(--amber-hover)}.page-rooms-pre-launch .start-btn:disabled{background:#d9d5c8;color:#9a968a;cursor:not-allowed}.page-rooms{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--chip-bg: #f7f8f5;--status-active-bg: #eaf3ec;--status-active-text: #2f6b45;--status-idle-bg: #efefef;--status-idle-text: #6b7280;--ball-own-bg: #dce3ea;--ball-own-text: #1e2a38;--ball-client-bg: #eff3f8;--ball-client-text: #3a5a80;--ball-ended-bg: #efefef;--ball-ended-text: #6b7280;padding:48px 24px 80px}.page-rooms h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 24px}.page-rooms .action-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-rooms .action-bar-left{display:flex;align-items:center;gap:16px}.page-rooms .monitor-badge{display:inline-flex;align-items:center;gap:8px;background:var(--status-active-bg);color:var(--status-active-text);font-size:13.5px;font-weight:500;padding:10px 20px;border-radius:30px}.page-rooms .add-room-btn{height:40px;padding:0 18px;margin-top:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:13px}.page-rooms .add-room-btn:hover:not(:disabled){background:#fafaf8;border-color:var(--color-accent)}.page-rooms .add-room-form{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:20px 24px;margin-bottom:20px}.page-rooms .add-room-form .field-label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:6px}.page-rooms .add-room-form .add-row{display:flex;gap:10px;margin-bottom:10px}.page-rooms .add-room-form input[type=text]{flex:1;height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:14px;margin:0}.page-rooms .add-room-form .add-btn{height:44px;padding:0 22px;margin:0;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.page-rooms .add-room-form .add-btn:hover:not(:disabled){background:var(--amber-hover)}.page-rooms .add-room-hint{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.6}.page-rooms .pill-group{display:flex;align-items:center;gap:10px}.page-rooms .pill-link{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 18px;border:1px solid var(--border);border-radius:20px;background:#fff;color:var(--color-text);font-size:13px;text-decoration:none;cursor:pointer}.page-rooms .pill-link:hover{background:#fafaf8;border-color:var(--color-accent)}.page-rooms button.primary{height:46px;padding:0 28px;margin-top:0;border:none;border-radius:8px;font-size:14px;font-weight:500;background:var(--color-accent);color:#fff}.page-rooms button.primary:hover:not(:disabled){background:var(--amber-hover)}.page-rooms button.primary:disabled{background:#d9d5c8;color:#9a968a}.page-rooms .selection-bar{display:flex;align-items:center;justify-content:space-between;background:var(--chip-bg);border:1px solid var(--border);border-radius:10px;padding:12px 20px;margin-bottom:16px;font-size:13.5px}.page-rooms .selection-bar-actions{display:flex;align-items:center;gap:16px}.page-rooms .bulk-btn{height:36px;padding:0 20px;margin-top:0;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer}.page-rooms .bulk-btn:hover:not(:disabled){background:var(--amber-hover)}.page-rooms .clear-selection-link{font-size:13px;color:var(--text-secondary);text-decoration:underline}.page-rooms .clear-selection-link:hover{color:var(--color-text)}.page-rooms .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);overflow:hidden}.page-rooms table{width:100%;border-collapse:collapse;table-layout:fixed}.page-rooms .checkbox-col{width:36px}.page-rooms .checkbox-col input{width:16px;height:16px;accent-color:var(--color-accent)}.page-rooms th:nth-child(2),.page-rooms td:nth-child(2){width:36%}.page-rooms th:nth-child(3),.page-rooms td:nth-child(3){width:12%}.page-rooms th:nth-child(4),.page-rooms td:nth-child(4){width:12%}.page-rooms th:nth-child(5),.page-rooms td:nth-child(5){width:18%}.page-rooms th:nth-child(6),.page-rooms td:nth-child(6){width:18%;text-align:right}.page-rooms th{text-align:left;font-size:12px;color:var(--text-secondary);font-weight:500;padding:14px 20px;border-bottom:1px solid var(--border);background:#fafaf8}.page-rooms td{font-size:14px;padding:14px 20px;border-bottom:1px solid var(--border);vertical-align:middle;white-space:normal}.page-rooms tr:last-child td{border-bottom:none}.page-rooms .room-name a{color:var(--color-text);text-decoration:none;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-rooms .room-name a:hover{color:var(--amber-hover);text-decoration:underline}.page-rooms .status-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding:4px 12px;border-radius:20px}.page-rooms .status-badge:before{content:none}.page-rooms .status-badge.own{background:var(--ball-own-bg);color:var(--ball-own-text)}.page-rooms .status-badge.client{background:var(--ball-client-bg);color:var(--ball-client-text)}.page-rooms .status-badge.ended{background:var(--ball-ended-bg);color:var(--ball-ended-text)}.page-rooms .type-badge{display:inline-flex;align-items:center;font-size:11.5px;font-weight:500;padding:3px 10px;border-radius:12px}.page-rooms .type-badge.group{background:var(--status-idle-bg);color:var(--text-secondary)}.page-rooms .type-badge.direct{background:var(--holiday-bg, #f7e7cf);color:var(--holiday-text, #9a6a26)}.page-rooms .sync-time{color:var(--text-secondary);font-size:13px}.page-rooms .edit-btn{height:32px;padding:0 16px;margin-top:0;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--color-text);font-size:12.5px}.page-rooms .edit-btn:hover:not(:disabled){background:#fafaf8}.page-rooms .detect-count{font-size:13px;color:var(--text-secondary);margin:4px 0 20px}.page-rooms .search-wrap{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.page-rooms .search-box{display:flex;align-items:center;gap:8px;margin-bottom:0;height:42px;padding:0 16px;border:1px solid var(--border);border-radius:8px;background:#fff;max-width:320px}.page-rooms .search-box input{border:none;outline:none;font-size:14px;flex:1;color:var(--color-text)}.page-rooms .search-box .icon{color:var(--text-secondary);font-size:14px}.page-rooms .show-all-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;white-space:nowrap}.page-rooms .show-all-toggle input{width:16px;height:16px;accent-color:var(--color-accent)}.page-rooms .pagination{display:flex;align-items:center;justify-content:space-between;margin-top:16px;font-size:13px;color:var(--text-secondary)}.page-rooms .pagination-controls{display:flex;align-items:center;gap:8px}.page-rooms .pagination-controls button{width:32px;height:32px;margin-top:0;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--color-text)}.page-rooms .pagination-controls button:hover:not(:disabled){background:#fafaf8}.page-rooms .pagination-controls button:disabled{color:var(--text-secondary);opacity:.5;cursor:not-allowed}.page-notifications{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--status-active-text: #2f6b45;max-width:880px;padding:48px 24px 80px}.page-notifications h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 24px}.page-notifications .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:24px}.page-notifications .card h2{font-size:17px;font-weight:700;margin:0 0 8px}.page-notifications .section-desc{font-size:13px;color:var(--text-secondary);margin:0 0 16px}.page-notifications .registered-note{font-size:12.5px;color:var(--status-active-text);margin:10px 0 0}.page-notifications .chip-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.page-notifications .chip{display:inline-flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--border);border-radius:20px;padding:6px 8px 6px 16px;font-size:13.5px}.page-notifications .chip button{width:20px;height:20px;margin:0;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1}.page-notifications .chip button:hover:not(:disabled){background:var(--border);color:var(--color-text)}.page-notifications .field-label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:6px}.page-notifications .add-row{display:flex;gap:10px;align-items:flex-end}.page-notifications .field-wrap{flex:1}.page-notifications input[type=text],.page-notifications input[type=email]{width:100%;height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:14px;margin:0}.page-notifications button.add-btn{height:44px;padding:0 22px;margin:0;border:none;border-radius:8px;font-size:14px;font-weight:500;background:var(--color-accent);color:#fff;white-space:nowrap}.page-notifications button.add-btn:hover:not(:disabled){background:var(--amber-hover)}.page-notifications table{width:100%;border-collapse:collapse}.page-notifications th{text-align:center;font-size:12px;color:var(--text-secondary);font-weight:500;padding:0 0 12px}.page-notifications th:first-child{text-align:left}.page-notifications td{font-size:14px;padding:12px 0;border-top:1px solid var(--border);text-align:center}.page-notifications td:first-child{text-align:left}.page-notifications input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.page-notifications .notification-matrix-na{font-size:.8rem;color:var(--text-secondary)}.page-notifications .time-options{display:flex;gap:10px}.page-notifications .time-option{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:20px;padding:10px 18px;cursor:pointer;font-size:14px}.page-notifications .time-option:has(input:checked){border-color:var(--color-accent);background:var(--color-bg)}.page-notifications .time-option input[type=radio]{width:16px;height:16px;margin:0;accent-color:var(--color-accent)}.page-business-days{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--holiday-bg: #f7e7cf;--holiday-text: #9a6a26;--warning-text: #b3453f;max-width:880px;padding:48px 24px 80px}.page-business-days h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 4px}.page-business-days .page-desc{font-size:13px;color:var(--text-secondary);margin:0 0 24px}.page-business-days .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:24px}.page-business-days .card h2{font-size:17px;font-weight:700;margin:0 0 16px}.page-business-days .weekday-list{display:flex;gap:20px;flex-wrap:wrap}.page-business-days .weekday-list label{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text);margin:0}.page-business-days input[type=checkbox]{width:17px;height:17px;accent-color:var(--color-accent)}.page-business-days .checkbox-line{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:20px;color:var(--color-text)}.page-business-days .holiday-calendar{max-width:none}.page-business-days .holiday-calendar-nav{align-items:center;margin-bottom:12px}.page-business-days .holiday-calendar-nav button{width:32px;height:32px;padding:0;margin:0;border-radius:8px;background:var(--color-accent);color:#fff}.page-business-days .holiday-calendar-nav button:hover:not(:disabled){background:var(--amber-hover)}.page-business-days .holiday-calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:24px}.page-business-days .holiday-calendar-month-label{font-size:14px;font-weight:500;text-align:center;margin:0 0 10px}.page-business-days .holiday-calendar-weekdays span{font-size:11px;color:var(--text-secondary);padding:4px 0}.page-business-days .holiday-calendar-day{font-size:13px;padding:6px 0}.page-business-days .holiday-calendar-day-holiday{color:var(--holiday-text);font-weight:500;background:var(--holiday-bg);border-radius:50%}.page-business-days .adjust-row{display:flex;gap:12px;align-items:center;margin-bottom:12px}.page-business-days .adjust-row input[type=date]{height:40px;border:1px solid var(--border);border-radius:8px;padding:0 10px}.page-business-days .adjust-row button{height:40px;padding:0 20px;margin:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:13px}.page-business-days .adjust-row button:hover:not(:disabled){background:#fafaf8}.page-business-days .adjust-empty{font-size:13px;color:var(--text-secondary);margin:0 0 12px}.page-business-days .adjust-error{font-size:12.5px;color:var(--warning-text);margin:8px 0 0}.page-secrets{--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--success-bg: #efeae0;--status-active-bg: #eaf3ec;--status-active-text: #2f6b45;max-width:680px;padding:48px 24px 80px}.page-secrets h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 12px}.page-secrets .page-desc{font-size:13.5px;color:var(--text-secondary);line-height:1.8;margin:0 0 8px}.page-secrets .help-link-row{text-align:right;margin:0 0 28px}.page-secrets .help-link-row a{font-size:13px;color:var(--color-accent);text-decoration:underline}.page-secrets .help-link-row a:hover{color:var(--amber-hover)}.page-secrets .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:24px}.page-secrets .card h2{font-size:16px;font-weight:700;letter-spacing:normal;margin:0 0 16px}.page-secrets .token-register-card h2{margin:0 0 12px}.page-secrets .field-label{display:block;font-size:12px;color:var(--text-secondary);margin:0 0 6px}.page-secrets .add-row{display:flex;gap:10px}.page-secrets .add-row input{flex:1;height:44px;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:14px;margin:0}.page-secrets .save-btn{height:44px;padding:0 22px;margin:0;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;background:var(--color-accent);color:#fff;white-space:nowrap}.page-secrets .save-btn:hover:not(:disabled){background:var(--amber-hover)}.page-secrets .success-banner{background:var(--success-bg);border-radius:12px;padding:24px;text-align:center}.page-secrets .success-banner h2{margin:0 0 4px}.page-secrets .success-banner p{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.page-secrets .success-banner a{display:inline-flex;align-items:center;height:44px;padding:0 24px;background:var(--color-accent);color:#fff;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none}.page-secrets .success-banner a:hover{background:var(--amber-hover)}.page-secrets .token-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.page-secrets .token-value{font-family:monospace;font-size:14px;color:var(--color-text);background:var(--color-bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px;flex:1;letter-spacing:1px}.page-secrets .edit-toggle-btn{height:40px;padding:0 20px;margin:0;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--color-text);font-size:13.5px;font-family:inherit;cursor:pointer;white-space:nowrap}.page-secrets .edit-toggle-btn:hover:not(:disabled){background:#fafaf8;border-color:var(--color-accent)}.page-secrets .token-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-secondary)}.page-secrets .token-status-badge{font-size:11.5px;font-weight:500;padding:3px 10px;border-radius:12px;background:var(--status-active-bg);color:var(--status-active-text)}.page-secrets .edit-form{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.page-billing{--amber: #c68a3d;--amber-hover: #b37a30;--text-secondary: #6b7280;--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--schedule-bg: #eff3f8;--schedule-text: #3a5a80;--warning-bg: #fbeae9;--warning-text: #b3453f;max-width:880px;padding:48px 24px 80px}.page-billing h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 4px}.page-billing .card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:24px;margin-bottom:24px}.page-billing h2{font-size:17px;font-weight:700;margin:0 0 12px}.page-billing-pre-launch{--border: #e3e1d8;--card-shadow: 0 4px 24px rgba(30, 42, 56, .08);--text-secondary: #6b7280;--amber-hover: #b37a30;max-width:680px;padding:48px 24px 80px}.page-billing-pre-launch h1{font-weight:700;font-size:26px;letter-spacing:normal;margin:0 0 24px}.page-billing-pre-launch .empty-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);padding:40px 32px;text-align:center}.page-billing-pre-launch .empty-card p{font-size:14px;color:var(--text-secondary);line-height:1.8;margin:0 0 24px}.page-billing-pre-launch .empty-card a{display:inline-flex;align-items:center;height:44px;padding:0 28px;background:var(--color-accent);color:#fff;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none}.page-billing-pre-launch .empty-card a:hover{background:var(--amber-hover)}.page-billing .history-card{padding:0;overflow:hidden}.page-billing .history-card .section-desc{padding:24px;margin:0}.page-billing .history-table{width:100%;border-collapse:collapse}.page-billing .history-table th{text-align:left;font-size:12px;color:var(--text-secondary);font-weight:500;padding:14px 24px;border-bottom:1px solid var(--border);background:#fafaf8}.page-billing .history-table td{font-size:14px;padding:14px 24px;border-bottom:1px solid var(--border);vertical-align:middle}.page-billing .history-table tr:last-child td{border-bottom:none}.page-billing .paid-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding:4px 12px;border-radius:20px;background:#eaf3ec;color:#2f6b45}.page-billing .invoice-link{color:var(--text-secondary);text-decoration:underline;font-size:13px}.page-billing .invoice-link:hover{color:var(--color-text)}.page-billing .info-line{font-size:14px;margin:0 0 8px}.page-billing .info-line strong{font-weight:700}.page-billing .schedule-banner{background:var(--schedule-bg);color:var(--schedule-text);font-size:13px;border-radius:8px;padding:12px 16px;margin:12px 0 0}.page-billing .section-desc{font-size:13px;color:var(--text-secondary);margin:0 0 20px}.page-billing .plan-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:0}.page-billing .plan-card{border:1px solid var(--border);border-radius:12px;padding:24px 18px;text-align:center;box-shadow:none}.page-billing .plan-card.current{border-color:var(--color-accent)}.page-billing .plan-name{font-family:var(--font-heading);font-size:16px;font-weight:700;margin:0 0 6px}.page-billing .plan-price{font-size:20px;font-weight:700;margin:0 0 2px}.page-billing .plan-price span{font-size:12px;font-weight:400;color:var(--text-secondary)}.page-billing .plan-limit{font-size:12px;color:var(--text-secondary);margin-bottom:16px}.page-billing .current-label{font-size:12px;color:var(--amber-hover);font-weight:500;padding:10px 0}.page-billing .plan-card button{width:100%;height:40px;margin:0;border-radius:8px;font-size:13px;font-weight:500}.page-billing .cancel-link{text-align:right}.page-billing .cancel-link button.link-button{display:inline-flex;align-items:center;height:40px;padding:0 20px;border:1px solid var(--border);border-radius:20px;color:var(--color-text);font-size:13px;font-weight:400;text-decoration:none;background:transparent;width:auto;margin:0}.page-billing .cancel-link button.link-button:hover:not(:disabled){background:#fafaf8;border-color:var(--amber);color:var(--color-text)}.page-billing .cancel-link button.link-button:disabled{background:transparent;color:var(--text-secondary);opacity:.6}.page-billing .payment-method-link-row{text-align:right;margin-top:16px}.page-billing .payment-method-link-row .error-text{display:block;margin:0 0 8px;text-align:left}.page-billing .payment-method-link{display:inline-flex;align-items:center;height:40px;padding:0 20px;border:1px solid var(--border);border-radius:20px;width:auto;margin:0;color:var(--color-text);font-size:13px;font-weight:400;text-decoration:none;background:#fff}.page-billing .payment-method-link:hover:not(:disabled){background:#fafaf8;border-color:var(--amber)}.page-billing .payment-method-link:disabled{color:var(--text-secondary);opacity:.6}.page-billing .warning-card{background:var(--warning-bg);border:1px solid var(--warning-text);border-radius:12px;padding:24px;margin-bottom:24px}.page-billing .warning-card h2{color:var(--warning-text)}.page-billing .warning-card p{font-size:14px;line-height:1.7;margin:0 0 16px}.page-billing .warning-card .btn-row{text-align:right;margin:0}.page-billing .warning-card .payment-method-btn{width:auto;display:inline-flex;align-items:center;height:44px;padding:0 28px;margin:0;border:none;border-radius:8px;background:var(--warning-text);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.page-billing .warning-card .payment-method-btn:hover:not(:disabled){background:#9a3a34}.page-billing .warning-card .payment-method-btn:disabled{opacity:.6}
