.login-container[data-v-dca8d402]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow-y:auto;background:radial-gradient(circle at top left,rgba(222,122,60,.1),transparent 45%),radial-gradient(circle at bottom right,rgba(23,50,74,.08),transparent 50%),var(--color-bg)}.card[data-v-dca8d402]{position:relative;width:360px;padding:28px;border-radius:20px;border:1px solid var(--color-border);box-shadow:0 20px 40px -12px #17293b2e,0 2px 8px #17293b0f;background:var(--color-surface);display:flex;flex-direction:column}.back-button[data-v-dca8d402]{position:absolute;top:14px;left:14px;width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:16px;line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease}.back-button[data-v-dca8d402]:hover{background:var(--color-bg);color:var(--color-text)}.logo[data-v-dca8d402]{text-align:center;font-weight:700;color:var(--color-primary);letter-spacing:.01em;margin-bottom:8px}h1[data-v-dca8d402]{color:var(--color-text)}.school-logo[data-v-dca8d402]{display:block;max-width:96px;max-height:96px;margin:8px auto 0;object-fit:contain;border-radius:12px}.school-context[data-v-dca8d402]{text-align:center;font-size:13px;color:var(--color-text-secondary);margin:4px 0 0}.school-context a[data-v-dca8d402]{color:var(--color-accent);cursor:pointer;margin-left:6px;font-weight:500}.label[data-v-dca8d402]{margin-top:12px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}input[data-v-dca8d402]{padding:12px;border-radius:10px;border:1px solid var(--color-border);margin-top:6px;font-size:16px;color:var(--color-text);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}input[data-v-dca8d402]:hover{border-color:var(--color-border-strong)}input[data-v-dca8d402]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #de7a3c26}.submit[data-v-dca8d402]{margin-top:16px;padding:12px;background:var(--color-primary);color:#fff;border-radius:10px;border:none;font-weight:600;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease}.submit[data-v-dca8d402]:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 4px 12px #17324a40}.submit[data-v-dca8d402]:active:not(:disabled){transform:translateY(1px)}.submit[data-v-dca8d402]:disabled{opacity:.5;cursor:not-allowed}.google[data-v-dca8d402]{margin-top:12px;padding:10px;background:var(--color-surface);color:var(--color-text);border-radius:10px;border:1px solid var(--color-border);font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.google[data-v-dca8d402]:hover{background:var(--color-bg);border-color:var(--color-border-strong)}.error[data-v-dca8d402]{margin-top:12px;color:var(--color-danger-text)}.resend[data-v-dca8d402]{margin-top:8px;text-align:center;font-size:13px}.resend a[data-v-dca8d402]{color:var(--color-accent);cursor:pointer;font-weight:500}.resend-success[data-v-dca8d402]{color:var(--color-success-text)}.signup[data-v-dca8d402]{margin-top:12px;text-align:center;color:var(--color-text-secondary)}.signup a[data-v-dca8d402]{color:var(--color-accent);cursor:pointer;font-weight:500}.login-container[data-v-b2daaf6a]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow-y:auto;background:radial-gradient(circle at top left,rgba(222,122,60,.1),transparent 45%),radial-gradient(circle at bottom right,rgba(23,50,74,.08),transparent 50%),var(--color-bg)}.card[data-v-b2daaf6a]{width:360px;padding:28px;border-radius:20px;border:1px solid var(--color-border);box-shadow:0 20px 40px -12px #17293b2e,0 2px 8px #17293b0f;background:var(--color-surface);display:flex;flex-direction:column}.logo[data-v-b2daaf6a]{text-align:center;font-weight:700;color:var(--color-primary);letter-spacing:.01em;margin-bottom:8px}h1[data-v-b2daaf6a]{color:var(--color-text)}.school-context[data-v-b2daaf6a]{text-align:center;font-size:13px;color:var(--color-text-secondary);margin:4px 0 0}.label[data-v-b2daaf6a]{margin-top:12px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}input[data-v-b2daaf6a]{padding:12px;border-radius:10px;border:1px solid var(--color-border);margin-top:6px;font-size:16px;color:var(--color-text);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}input[data-v-b2daaf6a]:hover{border-color:var(--color-border-strong)}input[data-v-b2daaf6a]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #de7a3c26}.submit[data-v-b2daaf6a]{margin-top:16px;padding:12px;background:var(--color-primary);color:#fff;border-radius:10px;border:none;font-weight:600;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease}.submit[data-v-b2daaf6a]:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 4px 12px #17324a40}.submit[data-v-b2daaf6a]:active:not(:disabled){transform:translateY(1px)}.submit[data-v-b2daaf6a]:disabled{opacity:.5;cursor:not-allowed}.error[data-v-b2daaf6a]{margin-top:12px;color:var(--color-danger-text)}.success[data-v-b2daaf6a]{margin-top:12px;color:var(--color-success-text);text-align:center}.signup[data-v-b2daaf6a]{margin-top:12px;text-align:center;color:var(--color-text-secondary)}.signup a[data-v-b2daaf6a]{color:var(--color-accent);cursor:pointer;font-weight:500}.login-container[data-v-dd46c08c]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;overflow-y:auto;background:radial-gradient(circle at top left,rgba(222,122,60,.1),transparent 45%),radial-gradient(circle at bottom right,rgba(23,50,74,.08),transparent 50%),var(--color-bg)}.card[data-v-dd46c08c]{width:360px;padding:28px;border-radius:20px;border:1px solid var(--color-border);box-shadow:0 20px 40px -12px #17293b2e,0 2px 8px #17293b0f;background:var(--color-surface);display:flex;flex-direction:column}.logo[data-v-dd46c08c]{text-align:center;font-weight:700;color:var(--color-primary);letter-spacing:.01em;margin-bottom:8px}h1[data-v-dd46c08c]{color:var(--color-text)}.subtitle[data-v-dd46c08c]{text-align:center;color:var(--color-text-secondary);font-size:13px;margin-top:4px}.label[data-v-dd46c08c]{margin-top:16px;font-size:12px;font-weight:500;color:var(--color-text-secondary)}input[data-v-dd46c08c]{padding:12px;border-radius:10px;border:1px solid var(--color-border);margin-top:6px;font-size:16px;color:var(--color-text);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}input[data-v-dd46c08c]:hover{border-color:var(--color-border-strong)}input[data-v-dd46c08c]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #de7a3c26}.submit[data-v-dd46c08c]{margin-top:16px;padding:12px;background:var(--color-primary);color:#fff;border-radius:10px;border:none;font-weight:600;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease}.submit[data-v-dd46c08c]:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 4px 12px #17324a40}.submit[data-v-dd46c08c]:active:not(:disabled){transform:translateY(1px)}.submit[data-v-dd46c08c]:disabled{opacity:.5;cursor:not-allowed}.error[data-v-dd46c08c]{margin-top:12px;color:var(--color-danger-text);font-size:13px}.side-menu[data-v-cd2b34d8]{display:flex;flex-direction:column;gap:20px;padding:16px 12px;color:var(--color-text);background:var(--color-surface);border-right:1px solid var(--color-border)}.brand-block[data-v-cd2b34d8]{display:flex;align-items:center;gap:10px;padding:4px 6px}.brand-mark[data-v-cd2b34d8]{width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em}.brand-name[data-v-cd2b34d8]{margin:0;font-size:14px;font-weight:600;color:var(--color-primary)}.menu-list[data-v-cd2b34d8]{display:grid;gap:2px;align-content:start}.menu-item[data-v-cd2b34d8]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:13px;font-weight:500;text-decoration:none;transition:background-color .15s ease,color .15s ease}.menu-item[data-v-cd2b34d8]:hover{background:var(--color-bg);color:var(--color-text)}.menu-item-active[data-v-cd2b34d8]{background:var(--color-primary);color:#fff}.menu-icon[data-v-cd2b34d8]{width:18px;flex-shrink:0;text-align:center;font-size:14px}.menu-footer[data-v-cd2b34d8]{margin-top:auto;display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.footer-label[data-v-cd2b34d8]{margin:0;padding:0 2px;font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.logout-button[data-v-cd2b34d8]{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:7px 10px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;font-weight:500;cursor:pointer;text-align:left}.logout-button[data-v-cd2b34d8]:hover{background:var(--color-bg)}@media(max-width:900px){.side-menu[data-v-cd2b34d8]{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 12px;border-right:none;border-bottom:1px solid var(--color-border)}.menu-list[data-v-cd2b34d8]{display:flex;flex-wrap:wrap;gap:4px}.menu-footer[data-v-cd2b34d8]{margin-top:0;margin-left:auto;padding-top:0;border-top:none}}.dashboard-shell[data-v-69d3af78]{min-height:100vh;display:grid;grid-template-columns:200px 1fr;background:var(--color-bg)}.dashboard-main[data-v-69d3af78]{min-width:0}.dashboard-content[data-v-69d3af78]{min-height:100vh;overflow:auto}@media(max-width:900px){.dashboard-shell[data-v-69d3af78]{grid-template-columns:1fr}.dashboard-content[data-v-69d3af78]{min-height:auto}}.home-page[data-v-864c7ff8]{padding:20px;display:grid;gap:16px}.page-header[data-v-864c7ff8]{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-header-titles[data-v-864c7ff8]{display:grid;gap:2px}.eyebrow[data-v-864c7ff8]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.page-header h1[data-v-864c7ff8]{margin:0;font-size:17px;font-weight:600;color:var(--color-text)}.school-branding[data-v-864c7ff8]{display:flex;align-items:center;gap:10px;flex-shrink:0}.school-branding-logo[data-v-864c7ff8]{width:40px;height:40px;object-fit:contain;border-radius:var(--radius-sm)}.school-branding-name[data-v-864c7ff8]{font-size:15px;font-weight:700;color:var(--color-text)}.today-bar[data-v-864c7ff8]{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);font-size:13px}.today-label[data-v-864c7ff8]{color:var(--color-text-muted);text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.06em}.today-bar strong[data-v-864c7ff8]{color:var(--color-text)}.today-copy[data-v-864c7ff8]{color:var(--color-text-secondary)}.stats-grid[data-v-864c7ff8]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat-card[data-v-864c7ff8]{padding:14px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.stat-label[data-v-864c7ff8]{margin:0;color:var(--color-text-secondary);font-size:12px}.stat-value[data-v-864c7ff8]{display:block;margin:6px 0 4px;font-size:24px;font-weight:700;color:var(--color-text)}.stat-note[data-v-864c7ff8]{color:var(--color-success-text);font-size:12px;font-weight:500}.content-grid[data-v-864c7ff8]{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;align-items:start}.panel[data-v-864c7ff8]{padding:14px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.panel h2[data-v-864c7ff8]{margin:0;font-size:15px;font-weight:600;color:var(--color-text)}.panel-copy[data-v-864c7ff8]{margin:6px 0 0;color:var(--color-text-secondary);line-height:1.5}.task-list[data-v-864c7ff8]{display:grid;gap:10px;margin-top:12px}.task-item[data-v-864c7ff8]{display:grid;grid-template-columns:8px 1fr;gap:10px;align-items:start}.task-dot[data-v-864c7ff8]{margin-top:5px;width:8px;height:8px;border-radius:999px;background:var(--color-accent)}.task-item strong[data-v-864c7ff8]{display:block;font-size:13px;color:var(--color-text)}.task-item p[data-v-864c7ff8]{margin:2px 0 0;color:var(--color-text-secondary);line-height:1.5}@media(max-width:1100px){.stats-grid[data-v-864c7ff8]{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid[data-v-864c7ff8]{grid-template-columns:1fr}}@media(max-width:700px){.home-page[data-v-864c7ff8]{padding:14px}.stats-grid[data-v-864c7ff8]{grid-template-columns:1fr}.page-header[data-v-864c7ff8]{flex-wrap:wrap}}.field[data-v-f78602b1]{display:grid;gap:6px}.field-label[data-v-f78602b1]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-f78602b1]{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface)}.field-input[data-v-f78602b1]:focus{border-color:var(--color-accent)}.field-input[data-v-f78602b1]:disabled{opacity:.6;cursor:not-allowed}.field[data-v-ad1084ed]{display:grid;gap:6px}.field-label[data-v-ad1084ed]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-ad1084ed]{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface)}.field-input[data-v-ad1084ed]:focus{border-color:var(--color-accent)}.user-form[data-v-2686b64a]{display:grid;gap:12px}.form-grid[data-v-2686b64a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field[data-v-2686b64a]{display:grid;gap:6px}.field-label[data-v-2686b64a]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-2686b64a]{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface)}.field-input[data-v-2686b64a]:focus{border-color:var(--color-accent)}.helper-text[data-v-2686b64a],.status-message[data-v-2686b64a]{margin:0;font-size:12px;color:var(--color-text-secondary)}.status-message.error[data-v-2686b64a]{color:var(--color-danger-text)}.actions[data-v-2686b64a]{display:flex;justify-content:flex-end}.primary-button[data-v-2686b64a]{min-height:34px;padding:0 16px;border:none;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.primary-button[data-v-2686b64a]:hover{background:var(--color-primary-hover)}.primary-button[data-v-2686b64a]:disabled{opacity:.6;cursor:not-allowed}@media(max-width:800px){.form-grid[data-v-2686b64a]{grid-template-columns:1fr}}.table-card[data-v-d989be20]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.table-toolbar[data-v-d989be20]{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:12px}.table-toolbar h3[data-v-d989be20]{margin:0;font-size:15px;font-weight:600;color:var(--color-text)}.table-toolbar p[data-v-d989be20]{margin:2px 0 0;font-size:12px}.table-toolbar p[data-v-d989be20],.filter-field span[data-v-d989be20]{color:var(--color-text-secondary)}.filter-field[data-v-d989be20]{display:grid;gap:4px}.filter-field span[data-v-d989be20]{font-size:12px}.filter-field select[data-v-d989be20]{min-height:32px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font:inherit;font-size:13px}.table-wrap[data-v-d989be20]{overflow-x:auto}table[data-v-d989be20]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-d989be20],td[data-v-d989be20]{padding:8px 10px;text-align:left;border-bottom:1px solid var(--color-border)}th[data-v-d989be20]{color:var(--color-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.role-pill[data-v-d989be20]{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-weight:500;font-size:12px}.status-pill[data-v-d989be20]{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);font-weight:500;font-size:12px}.status-active[data-v-d989be20]{background:var(--color-success-bg);color:var(--color-success-text)}.status-pending[data-v-d989be20]{background:var(--color-warning-bg);color:var(--color-warning-text)}.empty-cell[data-v-d989be20]{text-align:center;padding:20px 10px;color:var(--color-text-muted)}@media(max-width:800px){.table-toolbar[data-v-d989be20]{flex-direction:column;align-items:stretch}}.registry-page[data-v-9abdb87d]{padding:20px;display:grid;gap:12px;color:var(--color-text)}.page-header[data-v-9abdb87d]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-9abdb87d]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-9abdb87d]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-9abdb87d]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.header-metrics[data-v-9abdb87d]{display:flex;gap:8px;flex-wrap:wrap}.metric-pill[data-v-9abdb87d]{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);font-size:12px;color:var(--color-text-secondary);white-space:nowrap}.metric-pill strong[data-v-9abdb87d]{color:var(--color-text);font-size:14px}.panel-card[data-v-9abdb87d]{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}h2[data-v-9abdb87d]{margin:0 0 12px;font-size:15px;font-weight:600}.dashboard-grid[data-v-9abdb87d]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel-card[data-v-9abdb87d]{padding:16px}.class-form[data-v-9abdb87d]{display:grid;gap:12px}.form-row[data-v-9abdb87d]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field[data-v-9abdb87d]{display:grid;gap:6px}.field-label[data-v-9abdb87d]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-9abdb87d]{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface)}.field-input[data-v-9abdb87d]:focus{border-color:var(--color-accent)}.actions[data-v-9abdb87d]{display:flex;justify-content:flex-end;gap:8px}.primary-button[data-v-9abdb87d],.secondary-button[data-v-9abdb87d]{min-height:34px;padding:0 16px;border-radius:var(--radius-sm);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.primary-button[data-v-9abdb87d]{border:none;background:var(--color-primary);color:#fff}.primary-button[data-v-9abdb87d]:hover{background:var(--color-primary-hover)}.primary-button[data-v-9abdb87d]:disabled{opacity:.6;cursor:not-allowed}.secondary-button[data-v-9abdb87d]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-weight:500}.secondary-button[data-v-9abdb87d]:hover{background:var(--color-bg)}.classes-table-wrap[data-v-9abdb87d]{margin-top:16px;overflow-x:auto}.classes-table-wrap table[data-v-9abdb87d]{width:100%;border-collapse:collapse;font-size:13px}.classes-table-wrap th[data-v-9abdb87d],.classes-table-wrap td[data-v-9abdb87d]{padding:8px 10px;text-align:left;border-bottom:1px solid var(--color-border)}.classes-table-wrap th[data-v-9abdb87d]{color:var(--color-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.classes-table-wrap .empty-cell[data-v-9abdb87d]{text-align:center;padding:20px 10px;color:var(--color-text-muted)}.classes-table-wrap .actions-cell[data-v-9abdb87d]{text-align:right}.link-button[data-v-9abdb87d]{border:none;background:none;padding:0;color:var(--color-accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.link-button[data-v-9abdb87d]:hover{text-decoration:underline}.status-message[data-v-9abdb87d]{margin:8px 0 0;font-size:12px;font-weight:500}.status-message.error[data-v-9abdb87d]{color:var(--color-danger-text)}.status-message.success[data-v-9abdb87d]{color:var(--color-success-text)}@media(max-width:1000px){.dashboard-grid[data-v-9abdb87d]{grid-template-columns:1fr}}@media(max-width:700px){.registry-page[data-v-9abdb87d]{padding:14px}.form-row[data-v-9abdb87d]{grid-template-columns:1fr}}.pagination[data-v-87c1386d]{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 0}.page-arrow[data-v-87c1386d],.page-number[data-v-87c1386d]{min-width:32px;height:32px;padding:0 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.page-arrow[data-v-87c1386d]:hover:not(:disabled),.page-number[data-v-87c1386d]:hover:not(.page-number-active){background:var(--color-bg)}.page-arrow[data-v-87c1386d]:disabled{opacity:.4;cursor:not-allowed}.page-number-active[data-v-87c1386d]{border-color:var(--color-primary);background:var(--color-primary);color:#fff;font-weight:600}.page-ellipsis[data-v-87c1386d]{padding:0 4px;color:var(--color-text-muted);font-size:13px}.news-page[data-v-9d547747]{padding:20px;display:grid;gap:16px;color:var(--color-text)}.page-header[data-v-9d547747]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}h1[data-v-9d547747]{margin:0;font-size:17px;font-weight:600}.subtitle[data-v-9d547747]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.primary-button[data-v-9d547747],.secondary-button[data-v-9d547747],.filter-chip[data-v-9d547747],.chip-button[data-v-9d547747],.upload-button[data-v-9d547747],.modal-close-button[data-v-9d547747]{border:none;font:inherit;cursor:pointer}.primary-button[data-v-9d547747],.secondary-button[data-v-9d547747],.upload-button[data-v-9d547747]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.primary-button[data-v-9d547747]{background:var(--color-primary);color:#fff}.primary-button[data-v-9d547747]:hover{background:var(--color-primary-hover)}.secondary-button[data-v-9d547747],.upload-button[data-v-9d547747]{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);font-weight:500}.secondary-button[data-v-9d547747]:hover,.upload-button[data-v-9d547747]:hover{background:var(--color-bg)}.feed-panel[data-v-9d547747]{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.modal-overlay[data-v-9d547747]{position:fixed;inset:0;z-index:1000;display:flex;justify-content:center;align-items:flex-start;padding:48px 20px;background:#0f172a80;overflow-y:auto}.modal-panel[data-v-9d547747]{width:100%;max-width:640px;padding:20px;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 24px 60px #0f172a47}.modal-fade-enter-active .modal-panel[data-v-9d547747],.modal-fade-leave-active .modal-panel[data-v-9d547747]{transition:transform .18s ease,opacity .18s ease}.modal-fade-enter-active[data-v-9d547747]{transition:opacity .18s ease}.modal-fade-leave-active[data-v-9d547747]{transition:opacity .15s ease}.modal-fade-enter-from[data-v-9d547747],.modal-fade-leave-to[data-v-9d547747]{opacity:0}.modal-fade-enter-from .modal-panel[data-v-9d547747],.modal-fade-leave-to .modal-panel[data-v-9d547747]{transform:translateY(-8px) scale(.98);opacity:0}.composer-top[data-v-9d547747]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.composer-top h2[data-v-9d547747]{margin:0;font-size:15px;font-weight:600}.modal-close-button[data-v-9d547747]{flex-shrink:0;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-secondary);font-size:18px;line-height:1;display:grid;place-items:center}.modal-close-button[data-v-9d547747]:hover{background:var(--color-border);color:var(--color-text)}.composer-form[data-v-9d547747]{display:grid;gap:14px;margin-top:14px}.field-block[data-v-9d547747]{display:grid;gap:6px}.field-block label[data-v-9d547747],.preview-panel h4[data-v-9d547747]{color:var(--color-text-secondary);font-size:12px;font-weight:500}.field-block input[data-v-9d547747],.field-block textarea[data-v-9d547747]{width:100%;padding:0 10px;min-height:34px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;box-sizing:border-box}.field-block input[data-v-9d547747]:focus,.field-block textarea[data-v-9d547747]:focus{border-color:var(--color-accent)}.field-block textarea[data-v-9d547747]{padding:8px 10px;resize:vertical;min-height:100px}.field-block small[data-v-9d547747]{color:var(--color-text-muted);font-size:11px}.chip-row[data-v-9d547747],.filter-row[data-v-9d547747]{display:flex;flex-wrap:wrap;gap:6px}.chip-button[data-v-9d547747],.filter-chip[data-v-9d547747]{min-height:28px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px}.chip-button-active[data-v-9d547747]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-row[data-v-9d547747]{padding:0;margin-bottom:16px}.filter-chip-active[data-v-9d547747]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.image-dropzone[data-v-9d547747]{min-height:140px;display:grid;place-items:center;gap:4px;padding:12px;text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-secondary)}.image-icon[data-v-9d547747]{font-size:1.6rem;line-height:1;color:var(--color-text-muted)}.image-dropzone strong[data-v-9d547747]{font-size:13px}.image-dropzone p[data-v-9d547747]{margin:0;font-size:12px}.image-preview-wrap[data-v-9d547747],.image-preview[data-v-9d547747]{width:100%;height:100%}.image-preview[data-v-9d547747]{max-height:200px;object-fit:cover;border-radius:var(--radius-sm)}.image-actions[data-v-9d547747]{display:grid;grid-template-columns:1fr auto;gap:8px}.upload-button input[data-v-9d547747]{display:none}.pdf-input[data-v-9d547747]{width:100%;padding:0 10px;min-height:34px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;box-sizing:border-box}.attachment-chip[data-v-9d547747]{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:13px}.attachment-name[data-v-9d547747]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-button[data-v-9d547747]{border:none;background:none;padding:0;color:var(--color-danger-text);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.pdf-meta-link[data-v-9d547747]{border:none;background:none;padding:0;color:var(--color-primary);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.pdf-meta-link[data-v-9d547747]:hover{text-decoration:underline}.preview-panel[data-v-9d547747]{padding:12px;border-radius:var(--radius-md);background:var(--color-bg)}.preview-panel h4[data-v-9d547747]{margin:0 0 8px}.preview-card[data-v-9d547747],.feed-card[data-v-9d547747]{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.preview-card[data-v-9d547747]{padding:12px}.preview-card-image[data-v-9d547747]{width:100%;max-height:140px;margin:8px 0;object-fit:cover;border-radius:var(--radius-sm)}.preview-card h5[data-v-9d547747]{margin:10px 0 4px;font-size:15px;font-weight:600}.preview-card p[data-v-9d547747]{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.preview-copy[data-v-9d547747],.feed-copy[data-v-9d547747]{display:grid;gap:4px}.inline-link[data-v-9d547747]{color:var(--color-primary);font-weight:600;text-decoration:none}.category-pill[data-v-9d547747]{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-weight:500;font-size:12px}.composer-actions[data-v-9d547747]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:10px;border-top:1px solid var(--color-border)}.status-message[data-v-9d547747]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-9d547747]{color:var(--color-danger-text)}.status-message.success[data-v-9d547747]{color:var(--color-success-text)}.feed-panel[data-v-9d547747]{padding:16px}.feed-list[data-v-9d547747]{display:grid;gap:12px}.feed-card-link[data-v-9d547747]{color:inherit;text-decoration:none}.feed-card[data-v-9d547747]{display:grid;grid-template-columns:200px 1fr;transition:border-color .15s ease}.feed-card-link:hover .feed-card[data-v-9d547747]{border-color:var(--color-border-strong)}.feed-card-media[data-v-9d547747]{min-height:140px;background:var(--color-bg)}.feed-image[data-v-9d547747],.feed-image-placeholder[data-v-9d547747]{width:100%;height:100%}.feed-image[data-v-9d547747]{object-fit:cover}.feed-image-placeholder[data-v-9d547747]{display:grid;place-items:center;color:var(--color-text-secondary);font-weight:600;font-size:12px}.feed-card-body[data-v-9d547747]{padding:12px 14px}.feed-card-body h3[data-v-9d547747]{margin:8px 0 6px;font-size:15px;font-weight:600}.feed-copy[data-v-9d547747]{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.author-row[data-v-9d547747]{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--color-border)}.author-avatar[data-v-9d547747]{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--color-primary);color:#fff;font-weight:600;font-size:11px}.author-row strong[data-v-9d547747],.author-row small[data-v-9d547747],.author-row time[data-v-9d547747]{display:block;font-size:12px}.author-row strong[data-v-9d547747]{font-weight:600}.author-row small[data-v-9d547747],.author-row time[data-v-9d547747]{color:var(--color-text-muted)}.feed-meta[data-v-9d547747]{display:flex;gap:14px;padding-top:8px;color:var(--color-text-secondary);font-size:12px}.empty-state[data-v-9d547747]{padding:24px;border-radius:var(--radius-md);background:var(--color-bg);text-align:center;color:var(--color-text-muted);font-size:13px}@media(max-width:1200px){.feed-card[data-v-9d547747]{grid-template-columns:1fr}.feed-card-media[data-v-9d547747]{min-height:160px}}@media(max-width:900px){.page-header[data-v-9d547747]{flex-direction:column;align-items:stretch}.image-actions[data-v-9d547747],.composer-actions[data-v-9d547747]{grid-template-columns:1fr}.author-row[data-v-9d547747]{grid-template-columns:auto 1fr}.author-row time[data-v-9d547747]{grid-column:1 / -1}}@media(max-width:700px){.news-page[data-v-9d547747]{padding:14px}}.details-page[data-v-b5af1112]{padding:24px;background:radial-gradient(circle at top right,rgba(255,230,146,.35),transparent 26%),linear-gradient(180deg,#f6fbff,#fffef8);min-height:100%}.details-shell[data-v-b5af1112]{max-width:980px;margin:0 auto;display:grid;gap:22px}.details-header[data-v-b5af1112],.post-card[data-v-b5af1112],.comments-card[data-v-b5af1112]{border-radius:32px;background:#fffffff0;box-shadow:0 18px 48px #20314a1a}.details-header[data-v-b5af1112]{display:flex;align-items:center;gap:18px;padding:26px 28px}.back-button[data-v-b5af1112],.primary-button[data-v-b5af1112]{border:none;font:inherit;cursor:pointer}.back-button[data-v-b5af1112]{width:48px;height:48px;border-radius:50%;background:transparent;color:#1f2e44;font-size:1.8rem}.details-header h2[data-v-b5af1112],.post-body h3[data-v-b5af1112],.comments-card h4[data-v-b5af1112]{margin:0;color:#1f2e44}.details-header p[data-v-b5af1112]{margin:8px 0 0;color:#607189;font-size:1.1rem}.post-card[data-v-b5af1112]{overflow:hidden}.post-image[data-v-b5af1112]{width:100%;max-height:420px;object-fit:cover}.post-body[data-v-b5af1112]{padding:28px}.category-pill[data-v-b5af1112]{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:999px;background:#8df58d;color:#17324a;font-weight:700}.post-body h3[data-v-b5af1112]{margin-top:18px;font-size:2rem}.author-row[data-v-b5af1112]{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:20px 0 18px;border-bottom:1px solid rgba(35,50,72,.08)}.author-avatar[data-v-b5af1112]{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#8dd5ff;color:#fff;font-weight:700}.author-row strong[data-v-b5af1112],.author-row small[data-v-b5af1112],.author-row time[data-v-b5af1112]{display:block}.author-row small[data-v-b5af1112],.author-row time[data-v-b5af1112]{color:#697a90}.post-copy[data-v-b5af1112]{margin:22px 0 0;color:#425670;font-size:1.15rem;line-height:1.7}.inline-link[data-v-b5af1112]{color:#26709a;font-weight:700;text-decoration:none}.post-meta[data-v-b5af1112]{display:flex;gap:22px;padding-top:24px;margin-top:24px;border-top:1px solid rgba(35,50,72,.08);color:#4c5c72;font-size:1.1rem}.comments-card[data-v-b5af1112]{padding:28px}.comment-composer[data-v-b5af1112]{display:grid;gap:16px;padding:18px;margin-top:18px;border-radius:24px;background:#f7f9fd}.comment-composer textarea[data-v-b5af1112]{width:100%;min-height:96px;padding:18px 20px;border:1px solid rgba(35,50,72,.14);border-radius:24px;font:inherit;color:#1f2e44;box-sizing:border-box;resize:vertical}.primary-button[data-v-b5af1112]{justify-self:end;min-height:54px;padding:0 28px;border-radius:999px;background:linear-gradient(135deg,#74c7f1,#8fd4ff);color:#fff;font-weight:700;box-shadow:0 16px 34px #74c7f152}.comments-list[data-v-b5af1112]{display:grid;gap:22px;margin-top:24px}.comment-item[data-v-b5af1112]{display:grid;grid-template-columns:auto 1fr;gap:16px;padding-top:18px;border-top:1px solid rgba(35,50,72,.08)}.comment-avatar[data-v-b5af1112]{background:#8cf28d}.comment-top[data-v-b5af1112]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.comment-top strong[data-v-b5af1112],.comment-top small[data-v-b5af1112],.comment-top time[data-v-b5af1112]{display:block}.comment-top small[data-v-b5af1112],.comment-top time[data-v-b5af1112],.status-message[data-v-b5af1112]{color:#697a90}.comment-body p[data-v-b5af1112]{margin:10px 0 0;color:#425670;font-size:1.1rem;line-height:1.6}.empty-state[data-v-b5af1112]{padding:36px;border-radius:28px;background:#ffffffc7;text-align:center;color:#61738c}.comments-empty[data-v-b5af1112]{margin-top:18px}.status-message.error[data-v-b5af1112]{color:#cc4b4b}@media(max-width:700px){.details-page[data-v-b5af1112]{padding:16px}.details-header[data-v-b5af1112],.comments-card[data-v-b5af1112],.post-body[data-v-b5af1112]{padding:20px}.author-row[data-v-b5af1112],.comment-item[data-v-b5af1112]{grid-template-columns:auto 1fr}.author-row time[data-v-b5af1112],.comment-top[data-v-b5af1112]{grid-column:1 / -1}.comment-top[data-v-b5af1112]{flex-direction:column}}.event-page[data-v-243d4159]{padding:20px;display:grid;gap:12px;color:var(--color-text)}.page-header[data-v-243d4159]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-243d4159]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-243d4159]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-243d4159]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.header-metrics[data-v-243d4159]{display:flex;gap:8px;flex-wrap:wrap}.metric-pill[data-v-243d4159]{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);font-size:12px;color:var(--color-text-secondary);white-space:nowrap}.metric-pill strong[data-v-243d4159]{color:var(--color-text);font-size:14px}.panel-card[data-v-243d4159]{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.layout-grid[data-v-243d4159]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:12px}.panel-card[data-v-243d4159]{padding:16px}.section-head[data-v-243d4159]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}h2[data-v-243d4159]{margin:0;font-size:15px;font-weight:600}.event-form[data-v-243d4159],.event-list[data-v-243d4159]{display:grid;gap:12px}.field[data-v-243d4159],.field-grid[data-v-243d4159]{display:grid;gap:6px}.field-grid[data-v-243d4159]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field-label[data-v-243d4159]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-243d4159]{width:100%;padding:0 10px;min-height:34px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;box-sizing:border-box}.field-input[data-v-243d4159]:focus{border-color:var(--color-accent)}.field-textarea[data-v-243d4159]{min-height:90px;padding:8px 10px;resize:vertical}.attachment-chip[data-v-243d4159]{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:13px}.attachment-thumb[data-v-243d4159]{width:28px;height:28px;border-radius:var(--radius-sm);object-fit:cover}.attachment-name[data-v-243d4159]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-button[data-v-243d4159]{border:none;background:none;padding:0;color:var(--color-danger-text);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.pdf-link[data-v-243d4159]{display:inline-flex;align-items:center;gap:4px;margin-top:10px;color:var(--color-primary);font-size:12px;font-weight:500;text-decoration:none}.pdf-link[data-v-243d4159]:hover{text-decoration:underline}.primary-button[data-v-243d4159],.secondary-button[data-v-243d4159]{border:none;font:inherit;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 16px;border-radius:var(--radius-sm)}.primary-button[data-v-243d4159]{background:var(--color-primary);color:#fff}.primary-button[data-v-243d4159]:hover{background:var(--color-primary-hover)}.primary-button[data-v-243d4159]:disabled{opacity:.6;cursor:not-allowed}.secondary-button[data-v-243d4159]{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);font-weight:500}.secondary-button[data-v-243d4159]:hover{background:var(--color-bg)}.small-button[data-v-243d4159]{min-height:28px;padding:0 10px;font-size:12px}.actions[data-v-243d4159]{display:flex;justify-content:flex-end}.status-message[data-v-243d4159]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-243d4159]{color:var(--color-danger-text)}.status-message.success[data-v-243d4159]{color:var(--color-success-text)}.empty-state[data-v-243d4159]{padding:24px;border-radius:var(--radius-md);text-align:center;background:var(--color-bg);color:var(--color-text-muted);font-size:13px}.event-card[data-v-243d4159]{padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.event-card-active[data-v-243d4159]{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.event-card-top[data-v-243d4159]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.event-card-top h4[data-v-243d4159]{margin:8px 0 0;font-size:14px;font-weight:600}.category-pill[data-v-243d4159]{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-weight:500;font-size:12px}.event-meta-grid[data-v-243d4159]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-top:10px;color:var(--color-text-secondary);font-size:12px}.event-description[data-v-243d4159]{margin:10px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}@media(max-width:980px){.section-head[data-v-243d4159]{flex-direction:column;align-items:stretch}.layout-grid[data-v-243d4159],.field-grid[data-v-243d4159]{grid-template-columns:1fr}}.attendance-page[data-v-ea220afd]{padding:20px;display:grid;gap:16px;color:var(--color-text)}.page-header[data-v-ea220afd]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-ea220afd]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-ea220afd]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-ea220afd]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.stats-grid[data-v-ea220afd]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat-card[data-v-ea220afd]{padding:14px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.stat-label[data-v-ea220afd]{margin:0;color:var(--color-text-secondary);font-size:12px}.stat-value[data-v-ea220afd]{display:block;margin:6px 0 0;font-size:24px;font-weight:700;color:var(--color-text)}.panel-card[data-v-ea220afd]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.filters-row[data-v-ea220afd]{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.field[data-v-ea220afd]{display:grid;gap:6px;min-width:200px}.field-label[data-v-ea220afd]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-ea220afd]{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface)}.field-input[data-v-ea220afd]:focus{border-color:var(--color-accent)}.empty-state[data-v-ea220afd]{padding:24px;text-align:center;color:var(--color-text-muted);font-size:13px}.table-wrap[data-v-ea220afd]{overflow-x:auto}table[data-v-ea220afd]{width:100%;border-collapse:collapse;font-size:13px}th[data-v-ea220afd],td[data-v-ea220afd]{padding:8px 10px;text-align:left;border-bottom:1px solid var(--color-border)}th[data-v-ea220afd]{color:var(--color-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.status-pill[data-v-ea220afd]{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);font-weight:500;font-size:12px}.status-present[data-v-ea220afd]{background:var(--color-success-bg);color:var(--color-success-text)}.status-late[data-v-ea220afd]{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-absent[data-v-ea220afd]{background:var(--color-danger-bg);color:var(--color-danger-text)}.status-excused[data-v-ea220afd]{background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.status-unmarked[data-v-ea220afd]{background:var(--color-bg);color:var(--color-text-muted)}.reporter-pill[data-v-ea220afd]{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-sm);font-weight:500;font-size:12px}.reporter-parent[data-v-ea220afd]{background:var(--color-warning-bg);color:var(--color-warning-text)}.reporter-teacher[data-v-ea220afd]{background:var(--color-success-bg);color:var(--color-success-text)}.reporter-muted[data-v-ea220afd]{color:var(--color-text-muted)}.status-message[data-v-ea220afd]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-ea220afd]{color:var(--color-danger-text)}@media(max-width:1000px){.stats-grid[data-v-ea220afd]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.attendance-page[data-v-ea220afd]{padding:14px}.stats-grid[data-v-ea220afd]{grid-template-columns:1fr}}.survey-page[data-v-0fc2a1e8]{padding:20px;display:grid;gap:16px;color:var(--color-text)}.page-header[data-v-0fc2a1e8]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-0fc2a1e8]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-0fc2a1e8]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-0fc2a1e8]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.primary-button[data-v-0fc2a1e8]{min-height:34px;padding:0 16px;border:none;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.primary-button[data-v-0fc2a1e8]:hover{background:var(--color-primary-hover)}.empty-state[data-v-0fc2a1e8]{padding:36px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-text-muted)}.survey-grid[data-v-0fc2a1e8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.survey-card[data-v-0fc2a1e8]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:grid;gap:10px;align-content:start}.survey-card-header[data-v-0fc2a1e8]{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.survey-card-header strong[data-v-0fc2a1e8]{font-size:14px}.audience-badge[data-v-0fc2a1e8]{flex-shrink:0;padding:3px 8px;border-radius:999px;background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:11px;font-weight:600;white-space:nowrap}.muted[data-v-0fc2a1e8]{margin:0;color:var(--color-text-secondary);font-size:12px}.survey-meta[data-v-0fc2a1e8]{display:flex;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:11px}.survey-actions[data-v-0fc2a1e8]{display:flex;gap:14px}.link-button[data-v-0fc2a1e8]{border:none;background:none;padding:0;color:var(--color-accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.link-button[data-v-0fc2a1e8]:hover{text-decoration:underline}.link-button.danger[data-v-0fc2a1e8]{color:var(--color-danger-text)}.status-message[data-v-0fc2a1e8]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-0fc2a1e8]{color:var(--color-danger-text)}@media(max-width:700px){.survey-page[data-v-0fc2a1e8]{padding:14px}.survey-grid[data-v-0fc2a1e8]{grid-template-columns:1fr}}.builder-page[data-v-1efab38e]{padding:20px;display:grid;gap:16px;color:var(--color-text);max-width:760px}.page-header[data-v-1efab38e]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-1efab38e]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-1efab38e]{margin:2px 0 0;font-size:17px;font-weight:600}.toolbar[data-v-1efab38e]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mode-toggle[data-v-1efab38e]{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.mode-button[data-v-1efab38e]{border:none;background:var(--color-surface);color:var(--color-text-secondary);font:inherit;font-size:12px;font-weight:600;padding:7px 12px;cursor:pointer}.mode-button.active[data-v-1efab38e]{background:var(--color-primary);color:#fff}.primary-button[data-v-1efab38e],.secondary-button[data-v-1efab38e]{min-height:34px;padding:0 16px;border-radius:var(--radius-sm);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.primary-button[data-v-1efab38e]{border:none;background:var(--color-primary);color:#fff}.primary-button[data-v-1efab38e]:hover{background:var(--color-primary-hover)}.primary-button[data-v-1efab38e]:disabled{opacity:.6;cursor:not-allowed}.secondary-button[data-v-1efab38e]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-weight:500}.secondary-button[data-v-1efab38e]:hover{background:var(--color-bg)}.empty-state[data-v-1efab38e]{padding:36px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-text-muted)}.panel-card[data-v-1efab38e]{padding:18px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.meta-card[data-v-1efab38e]{display:grid;gap:14px;border-top:4px solid var(--color-primary)}.field[data-v-1efab38e]{display:grid;gap:6px}.field-label[data-v-1efab38e]{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.field-input[data-v-1efab38e]{min-height:34px;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-size:13px;color:var(--color-text);background:var(--color-surface);width:100%;box-sizing:border-box}.field-input[data-v-1efab38e]:focus{border-color:var(--color-accent)}.field-input[data-v-1efab38e]:disabled{color:var(--color-text-muted);background:var(--color-bg)}.title-input[data-v-1efab38e]{font-size:18px;font-weight:700;min-height:42px}textarea.field-input[data-v-1efab38e]{resize:vertical;font-family:inherit}.questions-list[data-v-1efab38e],.question-card[data-v-1efab38e]{display:grid;gap:12px}.question-row[data-v-1efab38e]{display:flex;gap:10px}.question-text-input[data-v-1efab38e]{flex:1;font-weight:600}.type-select[data-v-1efab38e]{flex:0 0 180px}.options-list[data-v-1efab38e]{display:grid;gap:8px}.option-row[data-v-1efab38e]{display:flex;align-items:center;gap:8px}.option-icon[data-v-1efab38e]{flex-shrink:0;width:16px;text-align:center;color:var(--color-text-muted)}.icon-button[data-v-1efab38e]{border:none;background:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);line-height:1}.icon-button[data-v-1efab38e]:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.icon-button[data-v-1efab38e]:disabled{opacity:.35;cursor:not-allowed}.link-button[data-v-1efab38e]{border:none;background:none;padding:0;color:var(--color-accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer;justify-self:start}.link-button[data-v-1efab38e]:hover{text-decoration:underline}.preview-placeholder[data-v-1efab38e]{padding:8px 0;border-bottom:1px dashed var(--color-border);color:var(--color-text-muted);font-size:13px;max-width:50%}.preview-placeholder.paragraph[data-v-1efab38e]{max-width:100%}.scale-editor[data-v-1efab38e]{display:grid;gap:10px}.scale-range-row[data-v-1efab38e]{display:flex;align-items:center;gap:8px}.scale-select[data-v-1efab38e]{width:70px}.scale-labels-row[data-v-1efab38e]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.question-footer[data-v-1efab38e]{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--color-border)}.required-toggle[data-v-1efab38e]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);cursor:pointer}.question-tools[data-v-1efab38e]{display:flex;gap:2px}.add-question-button[data-v-1efab38e]{justify-self:start}.preview-card[data-v-1efab38e]{display:grid;gap:18px;border-top:4px solid var(--color-primary)}.preview-card h2[data-v-1efab38e]{margin:0;font-size:18px}.muted[data-v-1efab38e]{margin:0;color:var(--color-text-secondary);font-size:13px}.preview-question[data-v-1efab38e]{display:grid;gap:8px}.preview-question-text[data-v-1efab38e]{margin:0;font-size:13px;font-weight:600}.required-mark[data-v-1efab38e]{color:var(--color-danger-text)}.preview-options[data-v-1efab38e]{display:grid;gap:6px}.preview-option[data-v-1efab38e]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary)}.preview-scale[data-v-1efab38e]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.scale-dot[data-v-1efab38e]{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--color-border);font-size:12px;color:var(--color-text-secondary)}.scale-label[data-v-1efab38e]{font-size:11px;color:var(--color-text-muted)}.status-message[data-v-1efab38e]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-1efab38e]{color:var(--color-danger-text)}@media(max-width:700px){.builder-page[data-v-1efab38e]{padding:14px}.question-row[data-v-1efab38e]{flex-direction:column}.type-select[data-v-1efab38e]{flex:1}}.responses-page[data-v-681d8037]{padding:20px;display:grid;gap:16px;color:var(--color-text);max-width:760px}.page-header[data-v-681d8037]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-681d8037]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-681d8037]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-681d8037]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.secondary-button[data-v-681d8037]{min-height:34px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.secondary-button[data-v-681d8037]:hover{background:var(--color-bg)}.empty-state[data-v-681d8037]{padding:36px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-text-muted)}.results-list[data-v-681d8037]{display:grid;gap:12px}.panel-card[data-v-681d8037]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.result-card[data-v-681d8037]{display:grid;gap:12px}.question-text[data-v-681d8037]{margin:0;font-size:14px;font-weight:600}.option-counts[data-v-681d8037]{display:grid;gap:8px}.option-count-row[data-v-681d8037]{display:grid;grid-template-columns:120px 1fr 30px;align-items:center;gap:10px;font-size:12px}.option-label[data-v-681d8037]{color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-bar-track[data-v-681d8037]{height:8px;border-radius:999px;background:var(--color-bg);overflow:hidden}.option-bar-fill[data-v-681d8037]{height:100%;border-radius:999px;background:var(--color-primary)}.option-value[data-v-681d8037]{text-align:right;color:var(--color-text-muted)}.text-answers[data-v-681d8037]{display:grid;gap:8px;max-height:260px;overflow-y:auto}.text-answer[data-v-681d8037]{margin:0;padding:8px 10px;border-radius:var(--radius-sm);background:var(--color-bg);font-size:13px}.respondents-list[data-v-681d8037]{display:grid;gap:6px;max-height:260px;overflow-y:auto}.respondent-row[data-v-681d8037]{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;border-bottom:1px solid var(--color-border)}.muted[data-v-681d8037]{margin:0;color:var(--color-text-secondary);font-size:12px}.status-message[data-v-681d8037]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-681d8037]{color:var(--color-danger-text)}@media(max-width:700px){.responses-page[data-v-681d8037]{padding:14px}.option-count-row[data-v-681d8037]{grid-template-columns:90px 1fr 26px}}.parents-page[data-v-16ee3787]{padding:20px;display:grid;gap:16px;color:var(--color-text)}.page-header[data-v-16ee3787]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.eyebrow[data-v-16ee3787]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-16ee3787]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-16ee3787]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.empty-state[data-v-16ee3787]{padding:36px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-text-muted)}.family-grid[data-v-16ee3787]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.family-card[data-v-16ee3787]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:grid;gap:14px;align-content:start}.family-header[data-v-16ee3787]{display:flex;gap:12px;align-items:center}.avatar[data-v-16ee3787]{width:48px;height:48px;flex-shrink:0;border-radius:50%;object-fit:cover}.avatar-placeholder[data-v-16ee3787]{display:grid;place-items:center;background:var(--color-primary);color:#fff;font-weight:700;font-size:14px}.family-header strong[data-v-16ee3787]{display:block;font-size:14px}.muted[data-v-16ee3787]{margin:2px 0 0;color:var(--color-text-secondary);font-size:12px}.muted.small[data-v-16ee3787]{font-size:11px}.family-names[data-v-16ee3787]{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;border-top:1px solid var(--color-border)}.name-field[data-v-16ee3787]{display:grid;gap:2px;font-size:13px}.field-label[data-v-16ee3787]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.children-section[data-v-16ee3787]{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.child-row[data-v-16ee3787]{display:flex;align-items:center;gap:10px}.child-avatar[data-v-16ee3787]{width:32px;height:32px;flex-shrink:0;border-radius:50%;object-fit:cover;font-size:12px}.child-row strong[data-v-16ee3787]{display:block;font-size:13px}.status-message[data-v-16ee3787]{margin:0;font-size:12px;font-weight:500}.status-message.error[data-v-16ee3787]{color:var(--color-danger-text)}@media(max-width:700px){.parents-page[data-v-16ee3787]{padding:14px}.family-grid[data-v-16ee3787]{grid-template-columns:1fr}}.settings-page[data-v-1ebf600a]{padding:20px;display:grid;gap:12px;color:var(--color-text)}.page-header[data-v-1ebf600a]{display:grid;gap:2px}.eyebrow[data-v-1ebf600a]{margin:0;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}h1[data-v-1ebf600a]{margin:2px 0 0;font-size:17px;font-weight:600}.subtitle[data-v-1ebf600a]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.panel-card[data-v-1ebf600a]{padding:16px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}h2[data-v-1ebf600a]{margin:0;font-size:15px;font-weight:600}.helper-copy[data-v-1ebf600a]{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.language-grid[data-v-1ebf600a]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.language-card[data-v-1ebf600a]{display:grid;gap:4px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-align:left;font:inherit;cursor:pointer}.language-card[data-v-1ebf600a]:hover{border-color:var(--color-border-strong)}.language-card strong[data-v-1ebf600a]{font-size:14px}.language-card span[data-v-1ebf600a]{font-size:12px;color:var(--color-text-secondary)}.language-card-active[data-v-1ebf600a]{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.status-message[data-v-1ebf600a]{margin:12px 0 0;font-size:12px;font-weight:500}.status-message.success[data-v-1ebf600a]{color:var(--color-success-text)}.status-message.error[data-v-1ebf600a]{color:var(--color-danger-text)}.logo-row[data-v-1ebf600a]{display:flex;align-items:center;gap:16px;margin-top:14px}.logo-preview[data-v-1ebf600a]{width:72px;height:72px;flex-shrink:0;display:grid;place-items:center;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);overflow:hidden}.logo-preview img[data-v-1ebf600a]{width:100%;height:100%;object-fit:contain}.logo-placeholder[data-v-1ebf600a]{font-size:10px;text-align:center;color:var(--color-text-muted);padding:4px}@media(max-width:700px){.settings-page[data-v-1ebf600a]{padding:14px}.language-grid[data-v-1ebf600a]{grid-template-columns:1fr}}:root{--color-bg: #f4f5f7;--color-surface: #ffffff;--color-border: #e2e5ea;--color-border-strong: #ccd2db;--color-text: #17293b;--color-text-secondary: #5b6b7c;--color-text-muted: #8b97a6;--color-primary: #17324a;--color-primary-hover: #0f2436;--color-accent: #de7a3c;--color-success-bg: #e6f6ec;--color-success-text: #1a7f37;--color-danger-bg: #fdeceb;--color-danger-text: #c1392b;--color-warning-bg: #fff4df;--color-warning-text: #9a6117;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(23, 41, 59, .06);--shadow-md: 0 2px 10px rgba(23, 41, 59, .08);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;height:100%}body{font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
