@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css";:root{--color-canvas:#eef1f0;--color-surface:#fff;--color-surface-sunken:#e4e9e7;--color-ink:#1c2430;--color-body:#3d4750;--color-muted:#5a6370;--color-hairline:#d7dedb;--color-hairline-strong:#b9c3bf;--color-primary:#2f6f5e;--color-primary-hover:#24564a;--color-primary-tint:#e2ede9;--color-on-primary:#fff;--color-warning:#ad7621;--color-warning-tint:#f7ecd9;--color-danger:#b23a24;--color-danger-tint:#f7e2dc;--font-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Malgun Gothic", system-ui, sans-serif;--color-shade-present:#d4f0e0;--color-shade-absent:#fde0e0;--color-shade-deferred:#fde8c8;--color-shade-makeup:#d4e8f8;--radius-sm:4px;--radius-md:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-canvas);color:var(--color-body);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.6}h1,h2,h3{color:var(--color-ink);margin:0;font-weight:600}button,input,select{font-family:inherit;font-size:inherit}input:focus-visible,button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tabular-nums{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{[data-print-hide]{display:none!important}body{background:#fff}.att-wrap{overflow:visible}.att-table{font-size:9px}.att-table th,.att-table td{padding:2px 4px}}.card{background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:var(--radius-md)}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;font-weight:500;transition:background-color .12s;display:inline-flex}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-sm{height:28px;padding:0 var(--space-3);font-size:13px}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);border-color:var(--color-hairline-strong);color:var(--color-ink)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-sunken)}.btn-danger-text{color:var(--color-danger);padding:0 var(--space-2);background:0 0;height:auto}.btn.btn-danger-text{height:28px;padding:0 var(--space-3);background:var(--color-danger-tint);border-color:var(--color-danger);font-weight:600}.btn.btn-danger-text:hover:not(:disabled){background:var(--color-danger);color:#fff}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{color:var(--color-muted);font-size:13px}.input{height:36px;padding:0 var(--space-3);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}.input:focus{border-color:var(--color-primary)}.error-text{color:var(--color-danger);margin:0;font-size:13px}.badge{height:22px;padding:0 var(--space-2);border-radius:999px;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.badge-active{background:var(--color-primary-tint);color:var(--color-primary-hover)}.badge-withdrawn{background:var(--color-surface-sunken);color:var(--color-muted)}.badge-neutral{background:var(--color-canvas);color:var(--color-body);border:1px solid var(--color-hairline-strong)}.badge-excluded{background:var(--color-warning-tint);color:var(--color-warning)}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--color-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-hairline);font-size:12px;font-weight:600}.table td{padding:var(--space-3);border-bottom:1px solid var(--color-hairline);color:var(--color-body)}.table tbody tr:hover{background:var(--color-surface-sunken)}.tab-bar{gap:var(--space-1);border-bottom:1px solid var(--color-hairline);background:var(--color-surface);padding:0 var(--space-5);display:flex}.tab{padding:var(--space-3) var(--space-4);color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;font-weight:500}.tab:hover{color:var(--color-ink)}.tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.profile-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(320px,1fr);display:grid}@media (width<=760px){.profile-grid{grid-template-columns:1fr}}.att-wrap{overflow-x:auto}.att-table{border-collapse:collapse;white-space:nowrap;font-size:13px}.att-table th,.att-table td{padding:var(--space-1) var(--space-2);border:1px solid var(--color-hairline);vertical-align:middle}.att-table th{background:var(--color-surface-sunken);color:var(--color-muted);text-align:center;font-size:11px;font-weight:600}.att-row-header{white-space:normal;word-break:keep-all;min-width:180px;max-width:220px;text-align:left!important}.att-cell{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;min-width:74px;transition:filter 80ms;position:relative}.att-cell:hover{filter:brightness(.9)}.att-cell-interactive{box-shadow:inset 0 0 0 2px var(--color-hairline-strong)}.att-cell-interactive:hover,.att-cell-interactive:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary);filter:brightness(.96);outline:none}.att-cell-unavailable{cursor:not-allowed;background-color:#cbd2cf;background-image:repeating-linear-gradient(-45deg,#0000,#0000 5px,#1c24301a 5px 10px)}.att-cell-unavailable:hover{filter:none}.att-cell-holiday{background-color:#f3dfdc;background-image:repeating-linear-gradient(-45deg,#0000,#0000 5px,#91332b29 5px 10px)}.att-holiday-header{min-width:86px;color:#7f302a!important;background:#f8e9e6!important}.att-holiday-name{color:#9a3b32;font-weight:600}.att-cell-readonly{cursor:default}.att-cell-shifted{background:#f8e9e6}.att-cell-shifted .att-cell-label{color:#9a3b32;font-weight:600}.att-cell-holiday-note{color:#9a3b32;font-size:10px;line-height:1.2;display:block}.att-cell-present{background:var(--color-shade-present)}.att-cell-absent{background:var(--color-shade-absent)}.att-cell-deferred{background:var(--color-shade-deferred)}.att-cell-makeup{background:var(--color-shade-makeup)}.att-editor{border:0;min-width:0;margin:0}.att-progress{align-items:center;gap:8px;display:flex}.att-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;margin-left:4px;animation:.8s linear infinite att-spin;display:inline-block}@keyframes att-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.att-spinner{animation:none}}.legal-page{padding:var(--space-5);max-width:900px}.legal-editor{margin-bottom:var(--space-5)}.legal-editor h3{margin:var(--space-5) 0 var(--space-3)}.legal-help{color:var(--color-muted);font-size:13px}.legal-field-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.legal-field-grid label,.legal-policy-fields label{gap:var(--space-1);font-size:13px;font-weight:600;display:grid}.legal-field-wide{grid-column:1/-1}.legal-policy-fields{gap:var(--space-3);display:grid}.legal-policy-fields textarea{height:auto;padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.5}.legal-save-message{color:var(--color-primary);font-size:13px}.legal-preview{color:var(--color-body);font-size:14px;line-height:1.8}.legal-preview h2{margin:var(--space-5) 0 var(--space-2)}.legal-preview .info-dl{margin-top:var(--space-4)}@media (width<=700px){.legal-field-grid{grid-template-columns:1fr}.legal-field-wide{grid-column:auto}}.att-cell-out-month{opacity:.45}.att-cell-label{color:var(--color-muted);font-size:10px;line-height:1.2;display:block}.att-cell-status{font-size:12px;font-weight:600;line-height:1.4;display:block}.att-help-btn{width:36px;color:var(--color-muted);border-radius:50%;padding:0;font-weight:700}.att-help-btn-on{background:var(--color-primary-tint);border-color:var(--color-primary);color:var(--color-primary-hover)}.att-grid-guide{align-items:center;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-body);flex-wrap:wrap;font-size:12px;display:flex}.att-grid-guide>span{align-items:center;gap:var(--space-1);display:inline-flex}.att-guide-swatch{background-color:var(--color-surface);border-radius:2px;flex:0 0 18px;width:18px;height:18px;display:inline-block}.att-guide-clickable{box-shadow:inset 0 0 0 2px var(--color-primary)}.att-holiday-result{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);background:var(--color-surface-sunken);font-size:13px;display:flex}.att-popover-item.att-popover-holiday{color:#9a3b32;border-top:1px solid var(--color-hairline)}.att-makeup-header,.att-makeup-action{min-width:110px}.att-makeup-action .att-cell-status{color:var(--color-primary-hover)}.att-makeup-dates{flex-wrap:wrap;justify-content:center;gap:2px;margin-top:2px;display:flex}.att-makeup-date-chip{color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-hairline);white-space:nowrap;border-radius:2px;padding:0 3px;font-size:10px}.att-makeup-warning{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-shade-absent);color:var(--color-body);font-size:13px;line-height:1.5}.att-popover{z-index:200;background:var(--color-surface);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-md);padding:var(--space-1);min-width:120px;position:fixed;box-shadow:0 4px 16px #00000024}.att-popover-item{text-align:left;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm);color:var(--color-body);background:0 0;border:none;font-size:13px;display:block}.att-popover-item:hover{background:var(--color-surface-sunken)}.att-popover-item.att-danger{color:var(--color-danger)}.month-nav{align-items:center;gap:var(--space-2);display:flex}.month-nav input[type=month]{height:36px;padding:0 var(--space-3);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}.att-overlay-backdrop{z-index:300;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.att-overlay-panel{background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:var(--radius-md);padding:var(--space-5);min-width:340px;max-width:480px;box-shadow:0 8px 24px #00000029}.att-overlay-panel h3{margin-bottom:var(--space-4)}.att-bulk-panel{width:min(380px,100vw - 32px)}.att-bulk-mode{gap:var(--space-2);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.att-bulk-date-nav{gap:var(--space-2);grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.att-bulk-date-nav .input{text-align:center;width:100%}.att-bulk-question{margin:var(--space-4) 0 var(--space-2);color:var(--color-ink);font-weight:600;line-height:1.5}.att-bulk-count{margin:0 0 var(--space-4);color:var(--color-muted);font-size:13px}.att-bulk-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.att-select{width:100%;height:36px;padding:0 var(--space-3);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}.att-subrow-info{color:var(--color-muted);white-space:normal;font-size:12px;line-height:1.5}.billing-page{padding:var(--space-5)}.bil-sheet-table{table-layout:fixed;width:100%;min-width:1184px}.bil-sheet-table col.bil-col-select{width:36px}.bil-sheet-table col.bil-col-student{width:160px}.bil-sheet-table col.bil-col-weekdays{width:64px}.bil-sheet-table col.bil-col-session{width:42px}.bil-sheet-table col.bil-col-attendance{width:88px}.bil-sheet-table col.bil-col-price{width:100px}.bil-sheet-table col.bil-col-discount{width:70px}.bil-sheet-table col.bil-col-final{width:88px}.bil-sheet-table col.bil-col-status{width:76px}.bil-sheet-table th,.bil-sheet-table td{text-overflow:ellipsis;padding-left:5px;padding-right:5px;overflow:hidden}.bil-sheet-table .att-row-header{min-width:0;max-width:none}.bil-sheet-table .att-cell{min-width:0;padding-left:2px;padding-right:2px}.bil-attendance-summary{color:var(--color-muted);text-align:center;white-space:normal;font-size:11px;line-height:1.4}.bil-attendance-summary>span{width:50%;display:inline-block}.bil-price-cell>span{display:block}@media (width<=1400px){.billing-page{padding-left:var(--space-4);padding-right:var(--space-4)}}.att-table th.bil-amount-col,.bil-amount-col{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.bil-row-hold{box-shadow:inset 3px 0 0 var(--color-warning)}.bil-row-selected{background:var(--color-primary-tint)}.bil-warning-banner{background:var(--color-warning-tint);color:var(--color-warning);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);border:1px solid;font-size:13px}.bil-msg-panel{min-width:620px;max-width:840px;max-height:80vh;overflow-y:auto}.bil-msg-table td{vertical-align:top}.bil-msg-textarea{width:100%;min-height:72px;padding:var(--space-2);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);resize:vertical;background:var(--color-surface);color:var(--color-body);font-family:inherit;font-size:12px}.pay-summary-banner{background:var(--color-surface-sunken);border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);color:var(--color-ink);font-size:13px}.pay-inline-confirm{align-items:center;gap:var(--space-1);font-size:12px;display:inline-flex}.badge-sent{background:var(--color-primary-tint);color:var(--color-primary-hover)}.badge-failed{background:var(--color-danger-tint);color:var(--color-danger)}.badge-draft{background:var(--color-surface-sunken);color:var(--color-muted)}.msg-copy-btn{height:28px;padding:0 var(--space-2);white-space:nowrap;font-size:12px}.dash-tile-grid{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.dash-tile{padding:var(--space-4) var(--space-5);gap:var(--space-1);flex-direction:column;display:flex}.dash-tile-label{color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.dash-tile-value{color:var(--color-ink);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.2}.dash-tile-value-primary{color:var(--color-primary)}.dash-tile-value-danger{color:var(--color-danger)}.dash-tile-unit{color:var(--color-muted);margin-left:2px;font-size:16px;font-weight:500}.dash-tile-sub{color:var(--color-muted);font-size:13px}.dash-boards{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.dash-board{padding:var(--space-5)}.dash-board-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.dash-board-count{color:var(--color-primary);background:var(--color-primary-tint);padding:2px var(--space-2);border-radius:999px;font-size:12px;font-weight:600}.dash-quick-nav{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.sch-drag-handle{cursor:grab;color:var(--color-muted);text-align:center;-webkit-user-select:none;user-select:none;font-size:18px;padding:var(--space-2) var(--space-2)!important}.sch-drag-handle:active{cursor:grabbing}.sch-editor-panel{min-width:500px;max-width:640px;max-height:80vh;overflow-y:auto}.sch-editor-row{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);margin-bottom:var(--space-3);flex-direction:column;display:flex}.sch-editor-days{gap:var(--space-3);flex-wrap:wrap;display:flex}.sch-day-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:13px;display:flex}.badge-danger{background:var(--color-danger-tint);color:var(--color-danger)}.badge-warn{background:var(--color-warning-tint);color:var(--color-warning)}.detail-panel{background:var(--color-surface);border-left:1px solid var(--color-hairline);z-index:200;width:560px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-4px 0 24px #0000001f}.detail-panel-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-hairline);background:var(--color-surface);z-index:1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.detail-section{padding-bottom:var(--space-5);border-bottom:1px solid var(--color-hairline)}.detail-section:last-child{border-bottom:none}.detail-section-title{color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:14px;font-weight:600}.info-dl{gap:var(--space-2) var(--space-3);grid-template-columns:80px 1fr;margin:0;font-size:14px;display:grid}.info-dl dt{color:var(--color-muted);font-size:13px}.info-dl dd{color:var(--color-body);margin:0}.enr-card{background:var(--color-surface-sunken);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);padding:var(--space-3);margin-bottom:var(--space-3)}.enr-card:last-child{margin-bottom:0}.usage-strip{margin-top:var(--space-1);flex-wrap:wrap;gap:2px;display:flex}.usage-cell{border:1px solid var(--color-hairline);background:var(--color-surface);cursor:default;border-radius:3px;justify-content:center;align-items:center;width:36px;height:28px;display:flex}.usage-cell-label{color:var(--color-muted);font-size:10px;line-height:1}.att-cell-present .usage-cell-label,.att-cell-absent .usage-cell-label,.att-cell-deferred .usage-cell-label,.att-cell-makeup .usage-cell-label{color:var(--color-ink)}.roster-usage{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.roster-usage-cells{grid-template-columns:repeat(8,22px);gap:2px;display:grid}.roster-usage-cell{border:1px solid var(--color-hairline-strong);background:var(--color-surface-sunken);width:22px;height:22px;color:var(--color-ink);border-radius:3px;justify-content:center;align-items:center;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.roster-usage-cell.att-cell-present{background:var(--color-shade-present)}.roster-usage-cell.att-cell-absent{background:var(--color-shade-absent)}.roster-usage-cell.att-cell-deferred{background:var(--color-shade-deferred)}.roster-usage-cell.att-cell-makeup{background:var(--color-shade-makeup)}.roster-usage-count{min-width:25px;color:var(--color-muted);font-variant-numeric:tabular-nums;font-size:11px}.side-panel{width:min(420px,100vw);padding:var(--space-5);gap:var(--space-4);z-index:200;border-top:none;border-bottom:none;border-right:none;border-radius:0;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.household-parent-group{gap:var(--space-2);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);padding:var(--space-3);display:grid}.household-parent-group legend{padding:0 var(--space-1);font-size:13px;font-weight:600}.link-button{color:var(--color-primary);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.book-student-checklist{border:1px solid var(--color-hairline);border-radius:var(--radius-sm);max-height:220px;padding:var(--space-1) var(--space-3);overflow-y:auto}.book-student-checklist label{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;cursor:pointer;display:flex}.book-student-checklist p{margin:var(--space-2) 0;color:var(--color-muted);font-size:13px}.sibling-search-results{border:1px solid var(--color-hairline-strong);border-radius:var(--radius-sm);background:var(--color-surface);max-height:180px;overflow-y:auto}.sibling-search-item{text-align:left;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;color:var(--color-body);background:0 0;border:none;font-size:13px;display:block}.sibling-search-item:hover{background:var(--color-surface-sunken)}.message-env-row{align-items:end;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-hairline);border-radius:var(--radius-sm);background:var(--color-surface-sunken);flex-wrap:wrap;display:flex}.message-env-mode{width:130px}.message-test-phone{width:min(360px,100%)}.message-test-phone .input{flex:1;min-width:0}.message-prod-confirm{gap:var(--space-1);align-self:center;align-items:center;font-size:12px;display:inline-flex}.message-template-table{border:1px solid var(--color-hairline);border-radius:var(--radius-sm);overflow:hidden}.message-template-header,.message-template-row{gap:var(--space-3);grid-template-columns:110px minmax(0,1fr) 100px;align-items:center;display:grid}.message-template-header{padding:var(--space-2) var(--space-3);background:var(--color-surface-sunken);color:var(--color-muted);font-size:12px;font-weight:600}.message-template-row{padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-hairline)}.message-template-type{font-size:14px;font-weight:600}.message-template-body{resize:vertical;width:100%;min-height:58px}.message-template-save{justify-items:start;gap:4px;display:grid}@media (width<=680px){.message-env-mode,.message-test-phone{width:100%}.message-template-header{display:none}.message-template-row{grid-template-columns:1fr auto}.message-template-body{grid-area:2/1/auto/-1}.message-template-save{grid-area:1/2}}@media (width<=768px){html{-webkit-text-size-adjust:100%}body{overflow-x:hidden}input,select,textarea{font-size:16px}.input,.month-nav input[type=month]{max-width:100%;height:40px}.btn{height:40px}.btn-sm{height:32px}.btn.btn-danger-text{height:36px}.card{max-width:100%}.app-tab-bar{z-index:100;padding:0 var(--space-2);padding-top:env(safe-area-inset-top);position:sticky;top:0}.app-tabs-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:auto;min-width:0;overflow-x:auto}.app-tabs-scroll::-webkit-scrollbar{display:none}.app-user-menu{flex:none}.app-tab-bar .tab{white-space:nowrap;padding:var(--space-3);flex:none}.tab-bar:not(.app-tab-bar){padding:0 var(--space-2);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tab-bar:not(.app-tab-bar)::-webkit-scrollbar{display:none}.tab-bar:not(.app-tab-bar) .tab{white-space:nowrap;flex:none}.app-content [style*="padding: var(--space-5)"]{padding:var(--space-3)!important}.app-content+footer{padding:var(--space-3)!important;padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom))!important}.app-content>div>div[style*="justify-content: space-between"],.app-content>div>div[style*="display: flex"]{gap:var(--space-2);flex-wrap:wrap}.table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.table th{white-space:nowrap}.table th,.table td{padding:var(--space-2);min-width:4.5em}.att-table .att-row-header{z-index:2;background:var(--color-surface);min-width:108px;max-width:128px;box-shadow:1px 0 0 var(--color-hairline-strong);position:sticky;left:0}.att-table thead .att-row-header{z-index:3;background:var(--color-surface-sunken)}.att-overlay-backdrop{padding:var(--space-3)}.att-overlay-panel,.att-bulk-panel,.bil-msg-panel,.sch-editor-panel{max-height:calc(100dvh - 24px);padding:var(--space-4);overflow-y:auto;width:100%!important;min-width:0!important;max-width:100%!important}.att-overlay-panel>div[style*=grid-template-columns]{grid-template-columns:1fr!important}.detail-panel,.side-panel,.card[style*="position: fixed"]{border-left:none;width:100vw!important;max-width:100vw!important}.card[style*="position: fixed"]{padding:var(--space-4)!important}.detail-panel-header{padding:var(--space-3) var(--space-4);padding-top:calc(var(--space-3) + env(safe-area-inset-top))}.dash-tile-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.dash-tile{padding:var(--space-3)}.dash-tile-value{font-size:22px}.dash-boards{grid-template-columns:1fr}.dash-board{padding:var(--space-4)}.att-grid-guide{display:block}.att-grid-guide>span{margin-bottom:var(--space-1);display:block}.att-grid-guide>span:last-child{margin-bottom:0}.att-guide-swatch{vertical-align:middle;margin-right:var(--space-1)}.att-popover{max-width:calc(100vw - 16px)}.info-dl{grid-template-columns:72px 1fr}}@media (width<=480px){.app-brand{display:none}.dash-tile-grid{gap:var(--space-2)}}
