:root{--proto-font: Inter, "Segoe UI", Roboto, system-ui, sans-serif;--proto-bg: #f3f5ff;--proto-surface: #ffffff;--proto-muted: #f8fafc;--proto-text: #111827;--proto-sub: #64748b;--proto-primary: #4f46e5;--proto-soft: #eef2ff;--proto-border: #dbe2ea;--proto-ok: #15803d;--proto-warn: #d97706;--proto-err: #dc2626;--proto-shadow-sm: 0 6px 20px rgba(15, 23, 42, .08);--proto-shadow-md: 0 14px 34px rgba(15, 23, 42, .13);--proto-sidebar-w: 248px;--proto-radius-lg: 18px;--proto-radius-md: 12px;--color-bg: var(--proto-bg);--color-surface: var(--proto-surface);--color-muted: var(--proto-muted);--color-text: var(--proto-text);--color-sub: var(--proto-sub);--color-primary: var(--proto-primary);--color-primary-soft: var(--proto-soft);--color-border: var(--proto-border);--color-ok: var(--proto-ok);--color-warn: var(--proto-warn);--color-err: var(--proto-err)}html[data-theme=energetic],body[data-theme=energetic]{--proto-bg: #f3f5ff;--proto-primary: #4f46e5;--proto-soft: #eef2ff;--proto-ok: #15803d;--proto-warn: #d97706;--proto-err: #dc2626}html[data-theme=professional],body[data-theme=professional]{--proto-bg: #f6f8fb;--proto-primary: #334155;--proto-soft: #e2e8f0;--proto-ok: #0369a1;--proto-warn: #ca8a04;--proto-err: #dc2626}html[data-theme=friendly],body[data-theme=friendly]{--proto-bg: #effcf8;--proto-primary: #0d9488;--proto-soft: #ccfbf1;--proto-ok: #15803d;--proto-warn: #ea580c;--proto-err: #dc2626}.proto-theme-float{position:fixed;top:12px;right:12px;z-index:150}.proto-theme-float-btn{width:36px;height:36px;border:2px solid rgba(255,255,255,.9);border-radius:50%;padding:0;background:var(--proto-primary);box-shadow:0 4px 14px #0f172a2e;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.proto-theme-float-btn:hover{transform:scale(1.06);box-shadow:0 6px 18px #0f172a38}.proto-theme-float .proto-theme-menu{position:absolute;right:0;top:calc(100% + 8px);width:232px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-surface);box-shadow:var(--proto-shadow-md);padding:8px;display:none}.proto-theme-float .proto-theme-menu.show{display:block}.proto-theme-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--proto-text);font-size:.82rem;font-weight:600;text-align:left;cursor:pointer;font-family:inherit}.proto-theme-option:hover,.proto-theme-option.active{border-color:var(--proto-border);background:var(--proto-muted)}.proto-swatch{width:12px;height:12px;border-radius:50%;flex-shrink:0}.proto-frame{min-height:100vh;display:block;background:var(--proto-surface);color:var(--proto-text);font-family:var(--proto-font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(min-width:1024px){.proto-frame{display:grid;grid-template-columns:var(--proto-sidebar-w) 1fr}}.proto-sidebar{display:none;flex-direction:column;background:var(--proto-surface);border-right:1px solid var(--proto-border);padding:16px 12px;overflow:hidden}@media(min-width:1024px){.proto-sidebar{display:flex;position:sticky;top:0;align-self:start;height:100vh;max-height:100vh}}.proto-brand{flex-shrink:0;padding:12px;margin-bottom:14px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-muted);font-weight:700;font-size:.88rem;line-height:1.35;color:var(--proto-text)}.proto-brand--chip{display:flex;align-items:center;gap:10px;min-height:48px;margin:0 0 4px;padding:6px 8px 12px;border:none;border-bottom:1px solid var(--proto-border);border-radius:0;background:transparent;font-weight:inherit;font-size:inherit}.proto-brand-icon{flex-shrink:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;color:var(--proto-primary);background:color-mix(in srgb,var(--proto-primary) 14%,#fff);border:1px solid color-mix(in srgb,var(--proto-primary) 22%,var(--proto-border))}.proto-brand-icon .proto-icon{width:18px;height:18px}.proto-brand-meta{min-width:0;display:flex;flex-direction:column;gap:1px}.proto-brand-name{margin:0;font-size:.85rem;font-weight:700;line-height:1.25;color:var(--proto-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-brand-sub{margin:0;font-size:.72rem;font-weight:600;color:var(--proto-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-brand:not(.proto-brand--chip) .proto-brand-sub{margin-top:2px}.proto-side-group-label{margin:12px 8px 4px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--proto-sub)}.proto-side-group:first-child>.proto-side-group-label,.proto-side-group-label:first-of-type{margin-top:4px}.proto-side-group--collapsible{margin-top:8px}.proto-side-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 4px;padding:4px 8px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;font-family:inherit}.proto-side-group-toggle:hover{background:color-mix(in srgb,var(--proto-primary) 6%,#fff)}.proto-side-group-toggle .proto-side-group-label{margin:0}.proto-side-group-chevron{display:inline-flex;color:var(--proto-sub);transition:transform .2s ease;flex-shrink:0}.proto-side-group--collapsible.expanded .proto-side-group-chevron{transform:rotate(180deg)}.proto-side-group--collapsible .proto-side-group-body{display:none}.proto-side-group--collapsible.expanded .proto-side-group-body{display:block}.proto-side-link{width:100%;display:flex;align-items:center;gap:10px;min-height:42px;margin-bottom:2px;padding:0 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--proto-sub);font-size:.86rem;font-weight:600;text-align:left;text-decoration:none;cursor:pointer;font-family:inherit;box-sizing:border-box}.proto-side-link .proto-icon{flex-shrink:0;width:18px;height:18px}.proto-side-link:hover,.proto-side-link.active{border-color:var(--proto-border);background:color-mix(in srgb,var(--proto-primary) 10%,#fff);color:var(--proto-primary)}.proto-side-link.active{font-weight:700}.proto-sidebar-nav{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}.proto-account{position:relative;flex-shrink:0;margin-top:auto;padding-top:12px;border-top:1px solid var(--proto-border);background:var(--proto-surface)}.proto-account-trigger{width:100%;display:flex;align-items:center;gap:10px;min-height:48px;padding:6px 8px;border:1px solid transparent;border-radius:12px;background:transparent;cursor:pointer;text-align:left;font-family:inherit;color:var(--proto-text)}.proto-account-trigger:hover,.proto-account-trigger[aria-expanded=true]{border-color:var(--proto-border);background:color-mix(in srgb,var(--proto-primary) 8%,#fff)}.proto-account-avatar{width:34px;height:34px;border-radius:10px;flex-shrink:0;background:var(--proto-soft);border:1px solid color-mix(in srgb,var(--proto-primary) 20%,var(--proto-border));-o-object-fit:cover;object-fit:cover;display:block}.proto-account-meta{min-width:0;flex:1;display:grid;gap:1px}.proto-account-name{font-size:.84rem;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-account-email{font-size:.68rem;font-weight:500;color:var(--proto-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-account-chevron{color:var(--proto-sub);font-size:.7rem;flex-shrink:0}.proto-account-menu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-surface);box-shadow:var(--proto-shadow-md);padding:8px;z-index:40}.proto-account-menu-head{display:flex;align-items:center;gap:10px;padding:8px;margin-bottom:4px;border-bottom:1px solid var(--proto-border)}.proto-account-menu-head-text{min-width:0;display:grid;gap:2px}.proto-account-menu-head-text strong{font-size:.86rem;font-weight:700;color:var(--proto-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proto-account-menu-head-text span{font-size:.72rem;color:var(--proto-sub);word-break:break-all}.proto-account-menu-list{display:grid;gap:2px}.proto-account-item{width:100%;display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--proto-text);font:inherit;font-size:.84rem;font-weight:600;text-align:left;text-decoration:none;cursor:pointer}.proto-account-item:hover:not(:disabled){border-color:var(--proto-border);background:var(--proto-muted)}.proto-account-item:disabled{opacity:.55;cursor:not-allowed}.proto-account-item-label{display:grid;gap:1px;min-width:0}.proto-account-item-hint{font-size:.68rem;font-weight:500;color:var(--proto-sub)}.proto-main{display:flex;flex-direction:column;min-width:0;min-height:100%}.proto-topbar-mobile{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--proto-border);background:color-mix(in srgb,var(--proto-surface) 92%,transparent);backdrop-filter:blur(8px);padding:10px 12px}@media(min-width:1024px){.proto-topbar-mobile{display:none}}.proto-topbar-mobile-brand{min-width:0}.proto-topbar-mobile .proto-brand-inline{margin:0;font-weight:700;color:var(--proto-primary);font-size:.95rem}.proto-topbar-mobile .proto-brand--inline{margin:0;padding:0;min-height:0;border:none}.proto-topbar-mobile .proto-brand-sub{margin-top:0;font-size:.72rem}.proto-topbar-mobile .proto-account{margin-top:0;padding-top:0;border-top:none;flex-shrink:0;max-width:min(58vw,220px)}.proto-topbar-mobile .proto-account-email{display:none}.proto-topbar-mobile .proto-account-menu{left:auto;right:0;bottom:auto;top:calc(100% + 8px);width:min(92vw,280px)}.proto-content{flex:1;padding:14px 14px 24px}@media(min-width:1024px){.proto-content{padding:16px 20px 24px}}.proto-content--narrow{max-width:72rem;margin-left:auto;margin-right:auto}.proto-frame--bottom-nav .proto-content{padding-bottom:88px}@media(min-width:1024px){.proto-frame--bottom-nav .proto-content{padding-bottom:24px}}.proto-bottom-nav{position:fixed;inset-inline:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--proto-border);background:color-mix(in srgb,var(--proto-surface) 95%,transparent);backdrop-filter:blur(8px)}@media(min-width:1024px){.proto-bottom-nav{display:none}}.proto-bottom-btn{display:flex;min-height:56px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0 4px;border:none;background:transparent;color:var(--proto-sub);font-size:10px;font-weight:600;text-decoration:none;font-family:inherit}.proto-bottom-btn .proto-icon{width:20px;height:20px}.proto-bottom-btn.active{color:var(--proto-primary)}.proto-page-head{margin-bottom:14px}.proto-page-head h1{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:normal;line-height:1.3;color:var(--proto-text)}.proto-page-head p{margin:4px 0 0;color:var(--proto-sub);font-size:.86rem;line-height:1.45}.proto-card{background:var(--proto-surface);border:1px solid var(--proto-border);border-radius:var(--proto-radius-lg);padding:14px;box-shadow:var(--proto-shadow-sm);margin-bottom:12px}.proto-card:last-child{margin-bottom:0}.proto-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.proto-card-header h2{margin:0;font-size:.98rem;font-weight:700;letter-spacing:normal;color:var(--proto-text)}.proto-card h2{margin:0 0 10px;font-size:.98rem;font-weight:700;letter-spacing:normal;color:var(--proto-text)}.proto-kpi{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}@media(min-width:1024px){.proto-kpi{grid-template-columns:repeat(4,minmax(0,1fr))}}.proto-kpi:last-child{margin-bottom:0}.proto-kpi-box{background:var(--proto-surface);border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);padding:12px;box-shadow:var(--proto-shadow-sm)}.proto-kpi-box .l{margin:0 0 6px;color:var(--proto-sub);font-size:.8rem}.proto-kpi-box .v{margin:0;font-size:1.08rem;font-weight:700;font-variant-numeric:tabular-nums}.proto-kpi-box .d{margin:3px 0 0;font-size:.76rem;color:var(--proto-ok)}.proto-kpi-box .d.warn{color:var(--proto-warn)}.proto-kpi-box .d.err{color:var(--proto-err)}button.proto-kpi-box.par-kpi-child{display:block;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}button.proto-kpi-box.par-kpi-child:hover{border-color:var(--proto-primary)}button.proto-kpi-box.par-kpi-child.active{border-color:var(--proto-primary);box-shadow:0 0 0 1px var(--proto-primary)}.par-kpi-child-name{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.par-kpi-child-name>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.par-kpi-child-name .proto-avatar{flex-shrink:0}a.proto-kpi-box.par-pay-child-box{display:block;text-decoration:none;color:inherit}a.proto-kpi-box.par-pay-child-box:hover{border-color:var(--proto-primary)}.par-pay-child-top{display:flex;align-items:center;gap:8px;margin-bottom:8px;min-width:0}.par-pay-child-name{margin:0;font-size:.82rem;font-weight:600;color:var(--proto-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:1024px){.proto-kpi.par-pay-child-kpi{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.proto-list{display:grid;gap:8px}.proto-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-muted);padding:10px;text-decoration:none;color:inherit;cursor:pointer}.proto-row:hover{border-color:color-mix(in srgb,var(--proto-primary) 40%,var(--proto-border))}.proto-time{font-size:.8rem;font-weight:700;color:var(--proto-primary);background:color-mix(in srgb,var(--proto-primary) 12%,#fff);border-radius:8px;padding:4px 8px;white-space:nowrap}.proto-row-title{margin:0;font-size:.9rem;font-weight:700}.proto-row-meta{margin:2px 0 0;color:var(--proto-sub);font-size:.78rem}.proto-badge{font-size:.72rem;border-radius:999px;padding:4px 8px;font-weight:700;color:#fff;white-space:nowrap}.proto-badge.ok,.proto-badge.success{background:var(--proto-ok)}.proto-badge.warn,.proto-badge.warning{background:var(--proto-warn)}.proto-badge.err,.proto-badge.error{background:var(--proto-err)}.proto-badge.neutral{background:#64748b}.proto-alert{display:flex;justify-content:space-between;gap:8px;align-items:center;border:1px solid #fed7aa;border-radius:var(--proto-radius-md);background:#fff7ed;padding:10px;font-size:.84rem}.proto-link{border:none;background:transparent;color:var(--proto-primary);font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap;padding:0;text-decoration:none;font-family:inherit}.proto-link:hover{text-decoration:underline}.proto-link:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.proto-tag{display:inline-block;font-size:.72rem;border-radius:999px;padding:3px 8px;background:var(--proto-muted);color:var(--proto-sub);font-weight:600}.proto-tag.ok,.proto-tag.success{background:#dcfce7;color:var(--proto-ok)}.proto-tag.warn,.proto-tag.warning{background:#fef3c7;color:var(--proto-warn)}.proto-tag.err,.proto-tag.error{background:#fee2e2;color:var(--proto-err)}.proto-tag.muted,.proto-tag.info{background:var(--proto-muted);color:var(--proto-sub)}.proto-note{margin:0;padding:10px;border:1px solid var(--proto-border);border-radius:10px;background:var(--proto-muted);color:var(--proto-sub);font-size:.86rem;line-height:1.45}.proto-capacity{height:6px;border-radius:999px;background:var(--proto-muted);overflow:hidden}.proto-capacity>span{display:block;height:100%;background:var(--proto-primary);border-radius:999px}.proto-bars{display:grid;gap:8px}.proto-bar-row{display:grid;grid-template-columns:74px 1fr auto;gap:10px;align-items:center}.proto-bar-row>span:first-child{font-size:.8rem;color:var(--proto-sub)}.proto-bar-row strong{font-size:.84rem;font-weight:700;font-variant-numeric:tabular-nums}.proto-muted-text{margin:0;color:var(--proto-sub);font-size:.86rem}@media(max-width:640px){.proto-kpi{grid-template-columns:1fr}.proto-bar-row{grid-template-columns:52px 1fr auto;gap:8px}}.proto-btn{min-height:44px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-surface);color:var(--proto-text);font-size:.84rem;font-weight:700;padding:0 14px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px}.proto-btn.primary{background:var(--proto-primary);border-color:var(--proto-primary);color:#fff}.proto-btn.ghost{background:var(--proto-muted);color:var(--proto-sub)}.proto-btn:disabled{opacity:.5;cursor:not-allowed}.proto-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.proto-actions--compact{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.proto-actions--compact .proto-btn{width:auto;min-width:0;padding-inline:16px}.proto-toolbar{display:grid;gap:10px;margin-bottom:12px}@media(min-width:1024px){.proto-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.proto-toolbar .proto-search-wrap{flex:1 1 220px;min-width:0}.proto-toolbar .proto-filters{flex:0 0 auto}}.proto-search-wrap{position:relative}.proto-search-wrap .proto-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--proto-sub);font-size:.85rem;pointer-events:none}.proto-search{width:100%;min-height:44px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);padding:10px 12px 10px 38px;font-size:.86rem;font-family:inherit;line-height:1.4;background:#fff;color:var(--proto-text);box-sizing:border-box}.proto-search::-moz-placeholder{font-size:.86rem;font-weight:400;color:var(--proto-sub);opacity:1}.proto-search::placeholder{font-size:.86rem;font-weight:400;color:var(--proto-sub);opacity:1}.proto-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.proto-filters select{min-height:44px;height:44px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);padding:0 28px 0 12px;background:#fff;color:var(--proto-text);font-size:.86rem;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.proto-action-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.proto-action-bar.tight{margin-top:8px;margin-bottom:0}.proto-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:12px}.proto-chip{border:1px solid var(--proto-border);border-radius:999px;padding:6px 12px;background:#fff;color:var(--proto-sub);font-size:.8rem;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}.proto-chip.active{background:var(--proto-soft);border-color:color-mix(in srgb,var(--proto-primary) 35%,var(--proto-border));color:var(--proto-primary)}.proto-cards{display:grid;gap:10px}.proto-data-card{border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-surface);padding:12px;box-shadow:var(--proto-shadow-sm);display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;cursor:pointer;margin-bottom:8px;text-align:left;width:100%;font-family:inherit;color:inherit}.proto-data-card:hover{border-color:var(--proto-primary)}.proto-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--proto-soft);color:var(--proto-primary);font-weight:700;font-size:.82rem;overflow:hidden;flex-shrink:0}.proto-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:inherit;display:block}.proto-avatar--sm{width:32px;height:32px;border-radius:8px;font-size:.7rem}.proto-inline-student{display:flex;align-items:center;gap:8px}.proto-inline-student span{font-weight:700}.proto-table-wrap{display:none;overflow-x:auto;border:1px solid var(--proto-border);border-radius:var(--proto-radius-lg);background:#fff;box-shadow:var(--proto-shadow-sm);margin-bottom:12px}@media(min-width:1024px){.proto-table-wrap{display:block}.proto-cards{display:none}}.proto-table{width:100%;border-collapse:collapse;font-size:.86rem}.proto-table th,.proto-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--proto-border);vertical-align:middle}.proto-table th{background:var(--proto-muted);color:var(--proto-sub);font-size:.78rem;font-weight:700}.proto-table tr:last-child td{border-bottom:none}.proto-table tr:hover td{background:color-mix(in srgb,var(--proto-primary) 4%,#fff)}.proto-table .proto-link{margin-right:8px}.proto-table small{color:var(--proto-sub)}.proto-data-title{margin:0;font-size:.92rem;font-weight:700}.proto-data-meta{margin:2px 0 0;color:var(--proto-sub);font-size:.78rem}.proto-linked{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.stf8-toolbar{display:grid;gap:8px;margin-bottom:10px}@media(min-width:1024px){.stf8-toolbar{grid-template-columns:1fr auto auto;align-items:center}}.stf8-cal-wrap{border:1px solid var(--proto-border);border-radius:12px;padding:8px;background:var(--proto-surface);margin-bottom:12px}.stf8-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.stf8-cal-head h2{margin:0;font-size:.9rem}.stf8-cal-nav{display:inline-flex;gap:6px}.stf8-cal-nav button{width:28px;height:28px;border:1px solid var(--proto-border);border-radius:8px;background:#fff;cursor:pointer;font-family:inherit;color:var(--proto-text)}.stf8-legend{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px;font-size:.72rem;color:var(--proto-sub)}.stf8-legend span{display:inline-flex;align-items:center;gap:4px}.stf8-dot{width:9px;height:9px;border-radius:3px;border:1px solid var(--proto-border);display:inline-block}.stf8-dot.normal{background:color-mix(in srgb,var(--proto-primary) 14%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-primary) 35%,var(--proto-border))}.stf8-dot.cancelled{background:color-mix(in srgb,var(--proto-err) 18%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-err) 35%,var(--proto-border))}.stf8-dot.rescheduled{background:color-mix(in srgb,var(--proto-warn) 20%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-warn) 35%,var(--proto-border))}.stf8-dot.holiday{background:color-mix(in srgb,var(--proto-sub) 20%,var(--proto-surface));border-color:var(--proto-border)}.stf8-dow,.stf8-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.stf8-dow span{text-align:center;font-size:.62rem;color:var(--proto-sub);font-weight:700}.stf8-cell{min-height:84px;border:1px solid var(--proto-border);border-radius:8px;padding:5px;background:var(--proto-bg);display:grid;align-content:start;gap:4px}.stf8-cell.out{opacity:.45}.stf8-cell.holiday{background:color-mix(in srgb,var(--proto-err) 10%,var(--proto-surface))}.stf8-day{font-size:.68rem;font-weight:700;color:var(--proto-sub)}.stf8-event{font-size:.65rem;line-height:1.2;border-radius:6px;padding:3px 4px;border:1px solid transparent;cursor:pointer;text-align:left;font-family:inherit;color:inherit;width:100%}.stf8-event.normal{background:color-mix(in srgb,var(--proto-primary) 12%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-primary) 35%,var(--proto-border))}.stf8-event.cancelled{background:color-mix(in srgb,var(--proto-err) 12%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-err) 35%,var(--proto-border));text-decoration:line-through}.stf8-event.cancelled small{text-decoration:line-through}.stf8-event.rescheduled{background:color-mix(in srgb,var(--proto-warn) 18%,var(--proto-surface));border-color:color-mix(in srgb,var(--proto-warn) 35%,var(--proto-border))}.stf8-event small{display:block;color:var(--proto-sub);font-size:.62rem}.stf8-side-list{margin-top:10px}.proto-field{display:grid;gap:6px;margin-bottom:10px}.proto-field label{font-size:.84rem;color:var(--proto-sub);font-weight:700}.proto-field input,.proto-field select{min-height:44px;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);padding:10px 12px;font-size:.84rem;width:100%;font-family:inherit;box-sizing:border-box;background:#fff;color:var(--proto-text)}.proto-form-grid{display:grid;gap:10px}@media(min-width:1024px){.proto-form-grid.two{grid-template-columns:1fr 1fr}}.proto-class-form-side .proto-form-grid.two{grid-template-columns:1fr 1fr}@media(max-width:420px){.proto-class-form-side .proto-form-grid.two{grid-template-columns:1fr}}.proto-modal{position:fixed;inset:0;background:#0f172a61;display:none;align-items:center;justify-content:center;z-index:200;padding:16px}.proto-modal.show{display:flex}.proto-modal-card{width:100%;max-width:520px;max-height:min(92vh,900px);overflow-y:auto;background:var(--proto-surface);border:1px solid var(--proto-border);border-radius:16px 16px 12px 12px;padding:14px;box-shadow:var(--proto-shadow-md);font-family:var(--proto-font);font-size:16px;line-height:1.5;color:var(--proto-text);letter-spacing:normal}.proto-modal-card.wide{max-width:560px}.proto-modal-card.xwide{max-width:min(92vw,820px);max-height:min(90vh,720px);overflow-y:auto;overflow-x:hidden}.proto-modal-card.xwide .proto-cal-day{min-height:24px;font-size:.66rem}.proto-modal-card.xwide .proto-weekday-btn{min-height:22px;font-size:.64rem}.proto-class-form-layout{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}@media(max-width:720px){.proto-class-form-layout{grid-template-columns:1fr}}.proto-class-form-side{display:grid;gap:6px}.proto-class-form-side .proto-field{margin-bottom:0}.proto-class-form-calendar{width:100%;justify-self:stretch}.proto-class-form-calendar label{font-size:.76rem;color:var(--proto-sub);font-weight:700;display:block;margin-bottom:3px}.proto-class-form-footer{display:flex;flex-direction:column;align-items:stretch;gap:10px;position:sticky;bottom:0;margin-top:8px;padding-top:8px;padding-bottom:2px;background:var(--proto-surface);border-top:1px solid var(--proto-border);z-index:3}.proto-modal-card.xwide .proto-class-form-layout{padding-bottom:52px}.proto-class-form-footer .proto-holiday-pill{display:block;width:100%;min-width:0}.proto-class-form-footer .proto-modal-actions{margin:0;width:100%;grid-template-columns:1fr 1fr}.proto-holiday-legend{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;font-size:.66rem;color:var(--proto-sub);line-height:1.2}.proto-holiday-legend span{display:inline-flex;align-items:center;gap:4px}.proto-holiday-legend .dot{width:8px;height:8px;border-radius:3px;background:color-mix(in srgb,var(--proto-err) 18%,var(--proto-surface));border:1px solid color-mix(in srgb,var(--proto-err) 40%,var(--proto-border))}.proto-holiday-legend .dot.removed{background:color-mix(in srgb,var(--proto-err) 35%,var(--proto-surface))}.proto-holiday-pill{font-size:.72rem;color:var(--proto-sub);line-height:1.3}.proto-schedule-picker{border:1px solid var(--proto-border);border-radius:12px;padding:4px;background:var(--proto-bg)}.proto-weekday-row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.proto-weekday-btn{min-height:24px;padding:2px 1px;border:1px solid var(--proto-border);border-radius:6px;background:var(--proto-surface);font-size:.62rem;font-weight:700;color:var(--proto-sub);cursor:pointer;font-family:inherit}.proto-weekday-btn.active{background:color-mix(in srgb,var(--proto-primary) 14%,var(--proto-surface));border-color:var(--proto-primary);color:var(--proto-primary)}.proto-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.proto-cal-head button{width:22px;height:22px;border:1px solid var(--proto-border);border-radius:6px;background:var(--proto-surface);display:grid;place-items:center;cursor:pointer;color:var(--proto-text);font-family:inherit}.proto-cal-head span{font-size:.72rem;font-weight:700}.proto-cal-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:2px}.proto-cal-dow span{text-align:center;font-size:.56rem;font-weight:700;color:var(--proto-sub)}.proto-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.proto-cal-day{position:relative;aspect-ratio:1;min-height:21px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:.6rem;font-weight:600;color:var(--proto-text);cursor:pointer;font-family:inherit}.proto-cal-day:hover:not(:disabled){background:var(--proto-muted)}.proto-cal-day.muted{color:var(--proto-sub);opacity:.45;cursor:default}.proto-cal-day.today{border-color:var(--proto-primary)}.proto-cal-day.selected{background:var(--proto-primary);color:#fff;border-color:var(--proto-primary)}.proto-cal-day.holiday{background:color-mix(in srgb,var(--proto-err) 14%,var(--proto-surface));color:var(--proto-sub);border-color:color-mix(in srgb,var(--proto-err) 35%,var(--proto-border));cursor:not-allowed;opacity:.85;font-size:.72rem}.proto-cal-day.removed{background:color-mix(in srgb,var(--proto-err) 14%,var(--proto-surface));color:var(--proto-err);border-color:color-mix(in srgb,var(--proto-err) 35%,var(--proto-border));text-decoration:line-through}.proto-cal-day:disabled{cursor:default}.proto-richtext{border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:#fff;overflow:hidden}.proto-richtext.disabled{opacity:.65;pointer-events:none}.proto-richtext-toolbar{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--proto-border);background:var(--proto-muted)}.proto-richtext-btn{min-width:32px;height:32px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--proto-text);font-size:.82rem;font-weight:700;cursor:pointer;padding:0 8px;font-family:inherit}.proto-richtext-btn:hover:not(:disabled){border-color:var(--proto-border);background:#fff;color:var(--proto-primary)}.proto-richtext-btn:disabled{opacity:.5;cursor:not-allowed}.proto-richtext-sep{width:1px;height:20px;background:var(--proto-border);margin:0 4px}.proto-richtext-body{min-height:140px;padding:8px 10px;font:inherit;font-size:.9rem;line-height:1.45;outline:none}.proto-richtext-body:empty:before{content:attr(data-placeholder);color:var(--proto-sub);pointer-events:none;font-size:.9rem}.proto-richtext-body ul,.proto-richtext-body ol{margin:.4em 0;padding-left:1.4em}.proto-richtext-body p{margin:0 0 .5em}.proto-richtext-body p:last-child{margin-bottom:0}.proto-richtext-body strong,.proto-richtext-body b,.proto-richtext-html strong,.proto-richtext-html b{font-weight:700}.proto-richtext-body em,.proto-richtext-body i,.proto-richtext-html em,.proto-richtext-html i{font-style:italic}.proto-richtext-html p{margin:0 0 .5em}.proto-richtext-html p:last-child{margin-bottom:0}.proto-richtext-html ul,.proto-richtext-html ol{margin:.4em 0;padding-left:1.4em}.proto-modal-card h3{margin:0 0 8px;font-size:1rem;font-weight:700;line-height:1.35;letter-spacing:normal;color:var(--proto-text)}.proto-modal-card>p{margin:0 0 10px;color:var(--proto-sub);font-size:.9rem;font-weight:400;line-height:1.45;letter-spacing:normal}.proto-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.proto-modal-actions button,.proto-modal-actions a.go{min-height:42px;padding:0 16px;border:1px solid var(--proto-border);border-radius:10px;font-size:.9rem;font-weight:700;line-height:1.2;letter-spacing:normal;cursor:pointer;font-family:inherit;background:var(--proto-surface);color:var(--proto-text);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.proto-modal-actions .go,.proto-modal-actions a.go{background:var(--proto-primary);border-color:var(--proto-primary);color:#fff;text-decoration:none}.proto-fee-summary{display:grid;gap:8px;margin-top:10px;padding:12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--proto-primary) 30%,var(--proto-border));background:color-mix(in srgb,var(--proto-primary) 6%,var(--proto-surface))}.proto-fee-summary.compact{margin-top:2px;padding:8px;gap:4px}.proto-fee-summary .proto-fee-row,.proto-fee-summary .row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.86rem;font-weight:400;line-height:1.4;letter-spacing:normal;color:var(--proto-sub)}.proto-fee-summary.compact .proto-fee-row,.proto-fee-summary.compact .row{font-size:.76rem}.proto-fee-summary .proto-fee-row strong,.proto-fee-summary .row strong{color:var(--proto-text);font-size:.92rem;font-weight:700;letter-spacing:normal;text-align:right}.proto-fee-summary.compact .proto-fee-row strong,.proto-fee-summary.compact .row strong{font-size:.92rem}.proto-toast-host{position:fixed;right:14px;bottom:14px;z-index:300;display:grid;gap:8px;max-width:min(92vw,360px);pointer-events:none}.proto-toast{padding:10px 12px;border-radius:10px;border:1px solid var(--proto-border);font-size:.84rem;font-weight:600;box-shadow:var(--proto-shadow-md)}.proto-toast.ok{background:#f0fdf4;color:var(--proto-ok)}.proto-toast.warn{background:#fff7ed;color:var(--proto-warn)}.proto-toast.err{background:#fef2f2;color:var(--proto-err)}.proto-tabs{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-bottom:12px}.proto-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;width:auto;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:#fff;font-weight:700;font-size:.84rem;color:var(--proto-sub);cursor:pointer;font-family:inherit}.proto-tab .proto-icon{width:14px;height:14px;flex-shrink:0}.proto-tab.active{background:var(--proto-soft);border-color:color-mix(in srgb,var(--proto-primary) 35%,var(--proto-border));color:var(--proto-primary)}.proto-pane{display:none}.proto-pane.active{display:block}.fb-layout{display:grid;grid-template-columns:280px 1fr;gap:12px;align-items:start}@media(max-width:900px){.fb-layout{grid-template-columns:1fr}}.fb-left{display:grid;gap:10px;align-content:start;min-width:0}.fb-left .proto-field{margin-bottom:0}.fb-left .proto-field select,.fb-class-select{width:100%}.fb-class-select.has-value{border-color:color-mix(in srgb,var(--proto-primary) 45%,var(--proto-border));background:var(--proto-soft);color:var(--proto-primary);font-weight:700}.fb-class-select:focus{outline:2px solid color-mix(in srgb,var(--proto-primary) 35%,transparent);outline-offset:1px}.fb-student-list{border:1px solid var(--proto-border);border-radius:12px;background:#fff;overflow:hidden}.fb-student-item{width:100%;border:0;border-bottom:1px solid var(--proto-border);background:#fff;text-align:left;padding:8px 10px;cursor:pointer;font:inherit;font-size:.86rem;line-height:1.35;color:inherit;display:flex;align-items:center;justify-content:space-between;gap:8px}.fb-student-item:last-child{border-bottom:0}.fb-student-item.active{background:var(--proto-muted);color:var(--proto-primary);font-weight:700}.fb-student-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-student-done{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--proto-ok, #15803d)}.fb-ai-config{display:grid;gap:10px;margin-bottom:10px}@media(min-width:1024px){.fb-ai-config{grid-template-columns:repeat(3,minmax(0,1fr))}}.fb-ai-config .proto-field{margin-bottom:0}.fb-keywords-wrap{flex-wrap:wrap;overflow:visible;margin-bottom:0}.fb-note{margin:8px 0 0;color:var(--proto-sub);font-size:.82rem}.fb-history-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-muted);padding:10px 12px}.fb-history-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.fb-history-name{margin:0;font-size:.9rem;font-weight:700;min-width:0}.fb-history-date{margin:0;flex-shrink:0;font-size:.78rem;color:var(--proto-sub);white-space:nowrap}.fb-history-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.fb-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--proto-sub);cursor:pointer;text-decoration:none;box-sizing:border-box}.fb-icon-btn:hover:not(:disabled){border-color:var(--proto-border);background:#fff;color:var(--proto-primary)}.fb-icon-btn.danger:hover:not(:disabled){color:var(--proto-err);border-color:color-mix(in srgb,var(--proto-err) 35%,var(--proto-border))}.fb-icon-btn.warn:hover:not(:disabled){color:var(--proto-warn);border-color:color-mix(in srgb,var(--proto-warn) 35%,var(--proto-border))}.fb-icon-btn:disabled{opacity:.45;cursor:not-allowed}.fb-icon-btn .proto-icon{width:16px;height:16px}.stf-enroll-picker{position:relative}.stf-enroll-suggestions{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:220px;overflow-y:auto;border:1px solid var(--proto-border);border-radius:var(--proto-radius-sm, 8px);background:#fff;box-shadow:var(--proto-shadow-sm)}.stf-enroll-suggestion{display:block;width:100%;text-align:left;padding:8px 10px;border:none;border-bottom:1px solid var(--proto-border);background:transparent;cursor:pointer;font-family:inherit;font-size:.86rem;color:var(--proto-text)}.stf-enroll-suggestion:last-child{border-bottom:none}.stf-enroll-suggestion:hover,.stf-enroll-suggestion.is-active{background:var(--proto-soft)}.stf-enroll-suggestion-meta{display:block;margin-top:2px;font-size:.74rem;color:var(--proto-sub);line-height:1.35}.stf-enroll-selected{margin-top:10px;padding:10px 12px;border-radius:8px;background:var(--proto-muted);font-size:.84rem;line-height:1.45}.stf-enroll-transfer-warn{margin-top:8px;padding:12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--proto-warn, #d97706) 40%,var(--proto-border));background:color-mix(in srgb,var(--proto-warn, #d97706) 10%,#fff);font-size:.88rem;line-height:1.5}.proto-row-actions{display:inline-flex;align-items:center;gap:2px;flex-wrap:nowrap}.stf12-code{font-family:ui-monospace,Menlo,monospace;font-size:.8rem;font-weight:700}.stf12-ref{display:inline-block;margin-top:4px;padding:2px 6px;border-radius:999px;border:1px solid var(--proto-border);background:var(--proto-muted);font-size:.68rem;color:var(--proto-sub)}.stf13-queue-row{grid-template-columns:minmax(100px,auto) minmax(0,1fr) auto;align-items:center;cursor:default}.stf13-queue-body{min-width:0}.stf13-queue-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.stf13-status{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;color:var(--proto-sub)}.stf13-status--warn{color:var(--proto-warn)}.stf13-status--err{color:var(--proto-err)}.stf13-status--ok{color:var(--proto-ok)}.stf13-queue-due{margin:4px 0 0;font-size:.84rem;color:var(--proto-text)}.stf13-queue-due strong{font-weight:800;color:var(--proto-err)}.stf13-queue-actions{display:flex;align-items:center;justify-content:flex-end}.stf13-confirm-btn{min-height:40px;min-width:7.5rem;padding:0 16px;white-space:nowrap}.stf12-queue-actions{gap:8px;flex-wrap:wrap}@media(max-width:720px){.stf13-queue-row{grid-template-columns:1fr;gap:10px}.stf13-queue-actions{justify-content:stretch}.stf13-confirm-btn{width:100%;min-width:0}}.par-child-grid{display:grid;gap:10px}.par-child-card{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;border:1px solid var(--proto-border);border-radius:14px;padding:12px;background:var(--proto-muted);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit}.par-child-card.active{border-color:var(--proto-primary);background:#fff;box-shadow:0 0 0 1px var(--proto-primary)}.par-child-card:hover{border-color:var(--proto-primary)}.par-child-title{margin:0;font-weight:700;font-size:.95rem}.par-child-meta{margin:2px 0 0;color:var(--proto-sub);font-size:.8rem}.par-quick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}@media(max-width:640px){.par-quick{grid-template-columns:repeat(3,minmax(0,1fr))}}.par-quick-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:88px;padding:12px 8px;border:1px solid var(--proto-border);border-radius:14px;background:var(--proto-muted);color:var(--proto-text);text-decoration:none;text-align:center;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.par-quick-card:hover{border-color:var(--proto-primary);background:#fff;transform:translateY(-1px)}.par-quick-card:focus-visible{outline:2px solid var(--proto-primary);outline-offset:2px}.par-quick-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--proto-primary) 12%,#fff);color:var(--proto-primary)}.par-quick-ico .proto-icon,.par-quick-ico svg{width:20px;height:20px}.par-quick-label{margin:0;font-size:.75rem;font-weight:700;line-height:1.25;color:var(--proto-text)}.par-fee-total{padding:14px;border-radius:14px;background:linear-gradient(135deg,var(--proto-soft),#fff);border:1px solid var(--proto-border);margin-bottom:12px}.par-fee-total .l{margin:0;color:var(--proto-sub);font-size:.85rem}.par-fee-total .v{margin:4px 0 0;font-size:1.35rem;font-weight:800;color:var(--proto-primary)}.par-pay-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.par-pay-dot.red{background:#ef4444}.par-pay-dot.yellow{background:#eab308}.par-pay-dot.green{background:#22c55e}.par-child-stack{display:flex;flex-direction:column;gap:16px}.par-fee-card{border:1px solid var(--proto-border);border-radius:16px;background:#fff;overflow:hidden}.par-child-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:var(--proto-muted);border-bottom:1px solid var(--proto-border)}.par-child-head h2{margin:0;font-size:1rem;font-weight:800;display:flex;align-items:center;gap:8px;min-width:0}.par-child-head-title{display:flex;align-items:center;gap:8px;min-width:0}.par-child-due{font-size:.95rem;font-weight:800;color:var(--proto-primary);white-space:nowrap}.par-fee-layout{display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:0;align-items:stretch}@media(max-width:1023px){.par-fee-layout{grid-template-columns:1fr}}.par-fee-qr{border-right:1px solid var(--proto-border);padding:16px 14px;display:flex;flex-direction:column;align-items:center;background:linear-gradient(180deg,#fff,var(--proto-muted))}@media(max-width:1023px){.par-fee-qr{border-right:none;border-bottom:1px solid var(--proto-border)}}.par-fee-info{padding:14px}.par-due-line{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:.85rem}.par-qr{width:100%;max-width:220px;aspect-ratio:1;margin:0 auto 12px;border-radius:12px;display:block;-o-object-fit:contain;object-fit:contain;background:#fff;border:1px solid var(--proto-border);box-shadow:var(--proto-shadow-sm)}.par-qr-fallback{width:100%;max-width:220px;aspect-ratio:1;margin:0 auto 12px;border-radius:12px;background:var(--proto-muted);display:grid;place-items:center;text-align:center;font-size:.72rem;color:var(--proto-sub);padding:8px;border:1px dashed var(--proto-border)}.par-qr-confirm{width:100%;font-size:.75rem;line-height:1.45;text-align:center;color:var(--proto-sub)}.par-qr-confirm .sep{margin:0 5px;opacity:.45}.par-qr-confirm strong{color:var(--proto-text);font-weight:700}.par-qr-confirm .amount{color:var(--proto-primary)}.par-qr-hint{margin:10px 0 0;font-size:.72rem;color:var(--proto-sub)}.stf15-fee-notice-layout{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:12px;align-items:start}@media(max-width:1023px){.stf15-fee-notice-layout{grid-template-columns:1fr}}.stf15-invoice-list{border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:var(--proto-surface);box-shadow:var(--proto-shadow-sm);overflow:hidden}.stf15-invoice-filters{padding:0;border-bottom:1px solid var(--proto-border);background:#fff}.stf15-invoice-filters select{display:block;width:100%;box-sizing:border-box;border:none;border-radius:0;padding:10px 12px;font-size:.84rem;font-family:inherit;background:#fff;color:var(--proto-text);-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.stf15-invoice-list-head{padding:10px 12px;border-bottom:1px solid var(--proto-border);background:var(--proto-muted);font-size:.78rem;font-weight:700;color:var(--proto-sub);display:flex;justify-content:space-between;gap:8px}.stf15-invoice-empty{padding:20px 12px;text-align:center;font-size:.82rem;color:var(--proto-sub)}.stf15-compact-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:none;border-bottom:1px solid var(--proto-border);background:transparent;width:100%;text-align:left;cursor:pointer;font-family:inherit;color:inherit}.stf15-compact-item:last-child{border-bottom:none}.stf15-compact-item:hover{background:var(--proto-soft)}.stf15-compact-item.is-selected{background:color-mix(in srgb,var(--proto-primary) 8%,#fff);box-shadow:inset 3px 0 0 var(--proto-primary)}.stf15-compact-title{font-weight:700;font-size:.86rem;line-height:1.3}.stf15-compact-meta{font-size:.74rem;color:var(--proto-sub);margin-top:2px;line-height:1.35}.stf15-compact-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.stf15-compact-amount{font-weight:700;font-size:.82rem;font-variant-numeric:tabular-nums;white-space:nowrap}.stf15-preview-panel{min-height:320px}.stf15-preview-body{border:1px solid var(--proto-border);border-radius:var(--proto-radius-md);background:color-mix(in srgb,var(--proto-muted) 45%,#fff);padding:16px}.stf15-preview-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:start}@media(max-width:720px){.stf15-preview-main{grid-template-columns:1fr}}.stf15-preview-qr{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.stf15-qr{width:min(100%,280px)!important;height:min(100%,280px)!important;max-width:280px;max-height:280px;border-radius:14px}.stf15-qr-bank{font-size:.78rem;color:var(--proto-sub);line-height:1.4;max-width:280px}.stf15-preview-text{font-size:.88rem;line-height:1.55}.stf15-preview-text code{font-size:.82rem;word-break:break-all}.stf15-preview-loading{display:grid;place-items:center;min-height:200px;font-size:.85rem;color:var(--proto-sub)}.stf17-billing-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:12px;align-items:start}@media(max-width:960px){.stf17-billing-layout{grid-template-columns:1fr}}.stf17-billing-left{display:grid;gap:12px}.stf17-billing-qr-panel{position:sticky;top:12px}.stf17-billing-qr-panel .proto-card,.stf17-billing-qr-panel>section{margin:0}.stf17-qr-preview{border:1px solid var(--proto-border);border-radius:var(--proto-radius, 12px);background:linear-gradient(180deg,#fff,var(--proto-muted));padding:16px 14px;display:flex;flex-direction:column;align-items:center}.stf17-qr-bank-summary{width:100%;margin:0 0 12px;text-align:center;font-size:.82rem;line-height:1.45;color:var(--proto-text)}.stf17-qr-bank-summary strong{display:block;font-size:.95rem}.stf17-qr-bank-summary span{display:block;color:var(--proto-sub);font-size:.78rem;margin-top:2px}.par-child-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.par-child-pick{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid var(--proto-border);border-radius:14px;padding:14px 10px;background:var(--proto-muted);cursor:pointer;font:inherit;color:inherit;text-align:center;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.par-child-pick:hover{border-color:var(--proto-primary)}.par-child-pick.active{border-color:var(--proto-primary);background:#fff;box-shadow:0 0 0 2px color-mix(in srgb,var(--proto-primary) 35%,transparent);transform:translateY(-1px)}.par-child-pick-name{margin:0;font-weight:700;font-size:.9rem;line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.par-att-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:14px;align-items:start}@media(max-width:720px){.par-att-layout{grid-template-columns:1fr}}.par-att-cal,.par-att-detail{border:1px solid var(--proto-border);border-radius:14px;background:#fff;padding:14px}.par-att-cal .proto-cal-head{margin-bottom:10px}.par-att-cal .proto-cal-head span{font-size:.95rem}.par-att-cal .proto-cal-head button{width:32px;height:32px;border-radius:10px}.par-att-cal .proto-cal-dow span{font-size:.72rem;padding:4px 0}.par-att-cal .proto-cal-grid{gap:4px}.par-att-cal .proto-cal-day{min-height:40px;border-radius:10px;font-size:.8rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px}.par-att-cal .proto-cal-day.has-session:not(.muted){background:var(--proto-muted)}.par-att-cal .proto-cal-day.mark-present:not(.selected){background:color-mix(in srgb,#22c55e 16%,#fff);border-color:color-mix(in srgb,#22c55e 40%,var(--proto-border));color:#15803d}.par-att-cal .proto-cal-day.mark-leave:not(.selected){background:color-mix(in srgb,#64748b 14%,#fff);border-color:color-mix(in srgb,#64748b 38%,var(--proto-border));color:#475569}.par-att-cal .proto-cal-day.mark-absent:not(.selected){background:color-mix(in srgb,#ef4444 14%,#fff);border-color:color-mix(in srgb,#ef4444 40%,var(--proto-border));color:#b91c1c}.par-att-cal .proto-cal-day.mark-late:not(.selected){background:color-mix(in srgb,#f59e0b 16%,#fff);border-color:color-mix(in srgb,#f59e0b 42%,var(--proto-border));color:#b45309}.par-att-mark{font-size:.65rem;line-height:1;font-weight:800}.par-att-legend{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:12px;padding-top:10px;border-top:1px solid var(--proto-border);font-size:.75rem;color:var(--proto-sub)}.par-att-legend span{display:inline-flex;align-items:center;gap:6px}.par-att-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.par-att-legend .lg-present{background:#22c55e}.par-att-legend .lg-leave{background:#64748b}.par-att-legend .lg-absent{background:#ef4444}.par-att-legend .lg-late{background:#f59e0b}.par-att-detail h2{margin:0 0 4px;font-size:1rem}.par-att-detail-sub{margin:0 0 12px;color:var(--proto-sub);font-size:.82rem}.par-att-day-list{display:grid;gap:10px;max-height:min(62vh,520px);overflow:auto;padding-right:2px}.par-att-day-block{border:1px solid var(--proto-border);border-radius:12px;padding:10px 12px;background:var(--proto-muted);scroll-margin-top:8px;cursor:pointer}.par-att-day-block.active{border-color:var(--proto-primary);background:#fff;box-shadow:0 0 0 1px var(--proto-primary)}.par-att-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.par-att-day-head strong{font-size:.9rem}.par-att-session{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px dashed color-mix(in srgb,var(--proto-border) 80%,transparent)}.par-att-session:first-of-type{border-top:0;padding-top:0}.par-att-session p{margin:0;font-size:.84rem}.par-att-session .meta{margin-top:2px;color:var(--proto-sub);font-size:.78rem}.par-child-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.par-child-tab{display:inline-flex;align-items:center;gap:6px;width:auto;border:1px solid var(--proto-border);border-radius:999px;padding:6px 12px;background:#fff;font:inherit;font-size:.84rem;font-weight:700;color:var(--proto-sub);cursor:pointer;white-space:nowrap}.par-child-tab.active{border-color:color-mix(in srgb,var(--proto-primary) 35%,var(--proto-border));background:var(--proto-soft);color:var(--proto-primary)}.par-child-tab-dot{width:7px;height:7px;border-radius:50%;background:var(--proto-primary);flex-shrink:0;display:none}.par-child-tab.active .par-child-tab-dot{display:block}.par-fb-list{display:grid;gap:10px}.par-fb-card{border:1px solid var(--proto-border);border-radius:12px;background:#fff;padding:12px}.par-fb-meta{margin:0 0 6px;color:var(--proto-sub);font-size:.82rem}.par-fb-content{margin:0;line-height:1.5}.par-fb-content p{margin:0 0 .5em}.par-fb-content p:last-child{margin-bottom:0}.par-fb-content ul,.par-fb-content ol{margin:.4em 0;padding-left:1.4em}.par-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--proto-border)}.par-toggle-row:last-child{border-bottom:0}.par-toggle-row p{margin:0}.par-toggle-row .sub{margin:2px 0 0;color:var(--proto-sub);font-size:.8rem}.par-switch{position:relative;width:44px;height:26px;flex-shrink:0}.par-switch input{opacity:0;width:0;height:0}.par-slider{position:absolute;cursor:pointer;inset:0;background:#cbd5e1;border-radius:999px;transition:.2s}.par-slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.par-switch input:checked+.par-slider{background:var(--proto-primary)}.par-switch input:checked+.par-slider:before{transform:translate(18px)}/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
 */body{min-height:100vh;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at top right,var(--proto-soft),transparent 32%),var(--proto-bg);font-family:var(--proto-font);font-size:16px;line-height:1.5;color:var(--proto-text);-moz-osx-font-smoothing:grayscale}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Segoe UI,Roboto,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mx-auto{margin-left:auto;margin-right:auto}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-3\.5{margin-bottom:.875rem}.mb-4{margin-bottom:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-\[14px\]{height:14px}.h-\[18px\]{height:18px}.min-h-11{min-height:2.75rem}.min-h-20{min-height:5rem}.min-h-screen{min-height:100vh}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-\[14px\]{width:14px}.w-\[18px\]{width:18px}.w-full{width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.shrink-0{flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-\[var\(--color-primary-soft\)\]{border-color:var(--color-primary-soft)}.border-t-\[var\(--color-primary\)\]{border-top-color:var(--color-primary)}.bg-\[var\(--color-err\)\]{background-color:var(--color-err)}.bg-\[var\(--color-muted\)\]{background-color:var(--color-muted)}.bg-\[var\(--color-primary\)\]{background-color:var(--color-primary)}.bg-\[var\(--color-surface\)\]{background-color:var(--color-surface)}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/70{background-color:#ffffffb3}.object-contain{-o-object-fit:contain;object-fit:contain}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-\[0\.76rem\]{font-size:.76rem}.text-\[0\.86rem\]{font-size:.86rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[1\.08rem\]{font-size:1.08rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tracking-tight{letter-spacing:-.025em}.text-\[var\(--color-err\)\]{color:var(--color-err)}.text-\[var\(--color-ok\)\]{color:var(--color-ok)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--color-sub\)\]{color:var(--color-sub)}.text-\[var\(--color-text\)\]{color:var(--color-text)}.text-\[var\(--color-warn\)\]{color:var(--color-warn)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow-\[0_6px_20px_rgba\(15\,23\,42\,0\.08\)\]{--tw-shadow: 0 6px 20px rgba(15,23,42,.08);--tw-shadow-colored: 0 6px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:border-\[var\(--color-primary\)\]:hover{border-color:var(--color-primary)}.hover\:bg-\[var\(--color-muted\)\]:hover{background-color:var(--color-muted)}.hover\:bg-\[var\(--color-primary-soft\)\]:hover{background-color:var(--color-primary-soft)}.hover\:opacity-90:hover{opacity:.9}.focus\:border-\[var\(--color-primary\)\]:focus{border-color:var(--color-primary)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[var\(--color-primary-soft\)\]:focus{--tw-ring-color: var(--color-primary-soft)}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}}@media(min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
