:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#101820;background-color:#f5f7fb}*{box-sizing:border-box}body{margin:0;min-height:100vh}.app-shell{max-width:920px;margin:0 auto;min-height:100dvh;display:grid;align-content:start;gap:12px;padding:24px}h1,p{margin:0}h2{margin:0;font-size:1.1rem}.menu-row{display:flex;gap:8px;flex-wrap:wrap}.panel{background:#fff;border:1px solid #dde3ee;border-radius:12px;padding:12px;display:grid;gap:10px}.panel.muted{background:#fafcff}.stack{display:grid;gap:8px}.settings-stack{gap:12px}.countdown-text{font-weight:600}.availability-picker{gap:8px}.availability-day-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}.availability-day-tab{min-width:64px;padding:10px 12px;border-radius:999px;white-space:nowrap;text-align:center}.availability-day-tab.active{background:#eaf2ff;border-color:#8fb2ef}.availability-metrics{gap:6px}.availability-status{border-radius:10px;border:1px solid #dce5f4;padding:8px 10px;font-size:.92rem}.availability-status.success{background:#eff9f1;border-color:#cde5d2;color:#245534}.availability-status.warning{background:#fff4ef;border-color:#f5cfbf;color:#8c3a18}.availability-quick-actions{margin-top:2px}.availability-error-box{border:1px solid #f2cbc5;border-radius:10px;background:#fff6f4;padding:10px}.availability-copy-panel{border:1px solid #dce5f4;border-radius:10px;background:#fbfdff;padding:10px;display:grid;gap:10px}.availability-copy-targets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.availability-copy-target{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #dce5f4;border-radius:8px;background:#fff;font-size:.9rem}.availability-copy-target.disabled{opacity:.55}.availability-copy-target input[type=checkbox]{margin:0;width:18px;height:18px}.availability-warning{color:#8c3a18;background:#fff4ef;border:1px solid #f5cfbf;border-radius:10px;padding:8px 10px;font-size:.9rem}.availability-slot-list{border:1px solid #dce5f4;border-radius:12px;overflow:hidden}.availability-slot-button{width:100%;border:0;border-radius:0;border-bottom:1px solid #e8edf7;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:14px 12px}.availability-slot-button:last-child{border-bottom:0}.availability-slot-button.hour-divider{border-top:1px solid #d4deee}.availability-slot-button.selected{background:#eef5ff}.availability-slot-button.singleton{box-shadow:inset 3px 0 #f0a66a}.availability-slot-button:active{background:#e6f0ff}.availability-slot-time{font-weight:600}.availability-slot-check{width:18px;text-align:center;color:#2f5ea8;font-weight:700;font-size:1rem}.availability-save-row{position:sticky;bottom:0;background:#fff;border-top:1px solid #e8edf7;padding-top:8px;margin-top:2px;align-items:center;justify-content:space-between}.availability-save-row .subtle-text{margin-right:auto}button{border:1px solid #cad5e8;border-radius:10px;background:#fff;color:inherit;padding:8px 12px;cursor:pointer}button:hover{background:#f1f5ff}.button-danger{border-color:#e5b7ac;background:#fff4ef;color:#8c3a18}.button-danger:hover{background:#ffe9e1}.button-subtle{border:0;background:transparent;color:#50627f;padding:0;text-decoration:underline;border-radius:0}.button-subtle:hover{background:transparent;color:#2f4668}.subtle-text{color:#50627f;font-size:.88rem}.session-header-row{justify-content:space-between;align-items:center}.admin-subtabs{gap:6px}.admin-subtabs button.active{background:#eaf2ff;border-color:#8fb2ef}.sessions-summary,.session-card{gap:6px}.session-card-head{justify-content:space-between;align-items:flex-start}.session-partner{font-size:.92rem}.session-status-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #dce5f4;padding:2px 10px;font-size:.8rem;white-space:nowrap}.session-status-badge.scheduled{background:#eef5ff;border-color:#c9ddfb;color:#244f8f}.session-status-badge.confirmed{background:#eff9f1;border-color:#cde5d2;color:#245534}.session-status-badge.cancelled{background:#fff4ef;border-color:#f5cfbf;color:#8c3a18}.session-status-badge.completed{background:#edf8f8;border-color:#cce8e8;color:#27545a}.session-status-badge.no-show{background:#f8f0ff;border-color:#dec9f4;color:#5d3a83}input[type=text]{flex:1 1 280px;border:1px solid #cad5e8;border-radius:10px;padding:8px 10px;min-width:0}input[type=datetime-local],select{border:1px solid #cad5e8;border-radius:10px;padding:8px 10px;min-width:0;background:#fff;color:inherit}.timezone-search-block{display:grid;gap:8px}.timezone-dropdown{border:1px solid #cad5e8;border-radius:10px;background:#fff;max-height:240px;overflow-y:auto}.timezone-option-button{width:100%;border:0;border-radius:0;border-bottom:1px solid #e8edf7;background:#fff;padding:12px 10px;display:flex;justify-content:space-between;gap:10px;align-items:center;text-align:left}.timezone-option-button:last-child{border-bottom:0}.timezone-option-button:hover{background:#f6f9ff}.timezone-option-button.selected{background:#eaf2ff}.timezone-option-offset{color:#4f607f;white-space:nowrap;font-size:.85rem}.timezone-empty-state{padding:12px 10px;color:#4f607f}.admin-session-search-results{border:1px solid #dce5f4;border-radius:10px;overflow:hidden}.admin-session-search-row{display:grid;gap:8px;padding:10px;border-bottom:1px solid #e8edf7}.admin-session-search-row:last-child{border-bottom:0}.admin-session-field{gap:6px}.admin-matching-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-matching-kpi{border:1px solid #dce5f4;border-radius:10px;padding:8px;display:grid;gap:4px}.admin-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182059;display:grid;place-items:center;padding:16px;z-index:1200}.admin-confirm-modal{width:min(460px,100%);background:#fff;border:1px solid #dde3ee;border-radius:12px;padding:14px}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{border-bottom:1px solid #e8edf7;text-align:left;padding:8px 6px;vertical-align:top}.row-clickable{cursor:pointer}.row-clickable:hover{background:#f8fbff}.row-clickable:active{background:#eef5ff}.toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%);background:#101820;color:#fff;padding:8px 14px;border-radius:999px;font-size:.85rem;z-index:1000}@media (max-width: 680px){.app-shell{padding:16px}.availability-copy-targets{grid-template-columns:repeat(3,minmax(0,1fr))}.availability-copy-target{padding:10px 8px}.availability-slot-button{padding:16px 12px}.availability-save-row{padding-top:10px}.timezone-option-button{padding:14px 10px}.admin-matching-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{font-size:.8rem;padding:6px 4px}}
