/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-space-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-slate-500:oklch(55.4% .046 257.417);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-7xl:80rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-medium:500;--font-weight-bold:700;--font-weight-black:900;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.mx-auto{margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.\!mb-0{margin-bottom:0!important}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.cursor-pointer{cursor:pointer}.list-decimal{list-style-type:decimal}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.p-5{padding:calc(var(--spacing) * 5)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pr-6{padding-right:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.text-slate-500{color:var(--color-slate-500)}.text-white{color:var(--color-white)}.underline{text-decoration-line:underline}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}}@media (min-width:64rem){.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}}:root{color-scheme:light;--color-action-primary:#287ba1;--color-action-primary-hover:#236f91;--color-action-primary-pressed:#1e627f;--color-action-primary-subtle:#e5f2f6;--color-text-on-primary:#fff;--color-text-brand:#163f57;--color-focus-ring:#287ba1;--color-surface-canvas:#faf8f2;--color-surface-default:#fff;--color-surface-subtle:#f5f9fa;--color-surface-raised:#fff;--color-text-primary:#252c32;--color-text-secondary:#69757b;--color-text-disabled:#879398;--color-border-default:#e3e7e6;--color-border-strong:#c8d3d5;--color-status-success:#2b8f86;--color-status-success-surface:#dcf8ee;--color-status-success-text:#14715e;--color-status-danger:#b9413d;--color-status-danger-surface:#ffe5e1;--color-status-danger-text:#9d3024;--color-status-warning:#d7a940;--color-status-warning-surface:#fff4d9;--color-status-warning-text:#76570a;--color-status-info:#287ba1;--color-status-info-surface:#e5f2f6;--color-status-info-text:#163f57;--color-status-neutral-surface:#edf1f2;--color-status-neutral-text:#526168;--font-family-arabic:var(--font-alexandria),"Tahoma","Arial",sans-serif;--font-size-caption:.75rem;--font-size-label:.8125rem;--font-size-body-sm:.875rem;--font-size-body:1rem;--font-size-body-emphasis:1rem;--font-size-card-title:1.0625rem;--font-size-section-title:clamp(1.25rem,1.15rem + .4vw,1.375rem);--font-size-operational-title:clamp(1.1875rem,1.0625rem + .65vw,1.625rem);--font-size-page-title:clamp(1.375rem,1.2rem + .75vw,1.625rem);--font-size-hero-title:clamp(1.625rem,1.4rem + 1vw,1.875rem);--font-size-statistic:1.125rem;--font-size-button:.9375rem;--font-size-navigation:.75rem;--font-size-title-sm:var(--font-size-card-title);--font-size-title:var(--font-size-section-title);--font-size-heading:var(--font-size-page-title);--line-height-caption:1.5;--line-height-label:1.45;--line-height-compact:1.4;--line-height-body:1.65;--line-height-heading:1.4;--line-height-operational-title:1.65;--line-height-hero:1.4;--line-height-relaxed:1.75;--font-weight-regular:400;--font-weight-medium:500;--font-weight-emphasis:600;--font-weight-strong:600;--font-weight-heading:700;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-pill:999px;--elevation-none:none;--elevation-raised:0 8px 24px #183f5214;--elevation-overlay:0 20px 60px #0000003d;--control-min-height:3rem;--touch-target-min:3rem;--content-max-width:75rem;--motion-instant:.1s;--motion-short:.18s;--motion-medium:.28s;--motion-ease-out:cubic-bezier(.16,1,.3,1);--layer-content:0;--layer-sticky:20;--layer-overlay:50;--layer-toast:70;--member-bottom-nav-height:4.5rem;--member-floating-qr-size:3.5rem;--member-fixed-ui-gap:var(--space-3);--member-page-bottom-clearance:calc(var(--member-bottom-nav-height) + var(--member-floating-qr-size) + (2 * var(--member-fixed-ui-gap)) + env(safe-area-inset-bottom))}::selection{background:var(--color-action-primary-subtle);color:var(--color-text-brand)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ui-button{min-height:var(--control-min-height);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font:inherit;font-size:var(--font-size-button);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-compact);cursor:pointer;transition:background-color var(--motion-short) var(--motion-ease-out),border-color var(--motion-short) var(--motion-ease-out),color var(--motion-short) var(--motion-ease-out),box-shadow var(--motion-short) var(--motion-ease-out);border:1px solid #0000;display:inline-flex}.ui-button--primary{background:var(--color-action-primary);color:var(--color-text-on-primary)}.ui-button--primary:hover{background:var(--color-action-primary-hover)}.ui-button--primary:active{background:var(--color-action-primary-pressed)}.ui-button--secondary{background:var(--color-action-primary-subtle);color:var(--color-text-brand)}.ui-button--quiet{border-color:var(--color-border-default);color:var(--color-text-primary);background:0 0}.ui-button--danger{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}.ui-button:disabled,.ui-button[aria-disabled=true]{opacity:.5;cursor:not-allowed}.ui-field{gap:var(--space-2);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-strong);display:grid}.ui-field,.ui-input{color:var(--color-text-primary)}.ui-input{width:100%;min-height:var(--control-min-height);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-default);font:inherit}.ui-input[aria-invalid=true]{border-color:var(--color-status-danger)}.ui-field__hint{color:var(--color-text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.ui-card{padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default)}.ui-card--raised{box-shadow:var(--elevation-raised);border-color:#0000}.ui-list-row{min-height:var(--touch-target-min);align-items:center;gap:var(--space-3);padding-block:var(--space-3);border-bottom:1px solid var(--color-border-default);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.ui-list-row:last-child{border-bottom:0}.ui-status-chip{align-items:center;gap:var(--space-1);width:max-content;max-width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--status-surface,var(--color-status-neutral-surface));color:var(--status-text,var(--color-status-neutral-text));font-size:var(--font-size-label);font-weight:var(--font-weight-strong);line-height:var(--line-height-compact);border:1px solid;display:inline-flex}.ui-status-chip--confirmed,.ui-status-chip--paid,.ui-status-chip--present,.ui-status-chip--synced{--status-surface:var(--color-status-success-surface);--status-text:var(--color-status-success-text)}.ui-status-chip--late,.ui-status-chip--partial,.ui-status-chip--pending,.ui-status-chip--syncing,.ui-status-chip--waiting{--status-surface:var(--color-status-warning-surface);--status-text:var(--color-status-warning-text)}.ui-status-chip--absent,.ui-status-chip--cancelled,.ui-status-chip--error,.ui-status-chip--unpaid{--status-surface:var(--color-status-danger-surface);--status-text:var(--color-status-danger-text)}.ui-status-chip--offline{--status-surface:var(--color-status-neutral-surface);--status-text:var(--color-status-neutral-text)}.ui-alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--alert-surface,var(--color-status-info-surface));color:var(--alert-text,var(--color-status-info-text));line-height:var(--line-height-body);border:1px solid;grid-template-columns:auto minmax(0,1fr);display:grid}.ui-alert--success{--alert-surface:var(--color-status-success-surface);--alert-text:var(--color-status-success-text)}.ui-alert--warning{--alert-surface:var(--color-status-warning-surface);--alert-text:var(--color-status-warning-text)}.ui-alert--error{--alert-surface:var(--color-status-danger-surface);--alert-text:var(--color-status-danger-text)}.ui-state{justify-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-4);color:var(--color-text-secondary);text-align:center;display:grid}.ui-state__title{color:var(--color-text-primary);font-size:var(--font-size-title-sm);font-weight:var(--font-weight-heading);margin:0}.ui-loading{min-height:var(--touch-target-min);color:var(--color-text-secondary);place-items:center;display:grid}.ui-dialog-backdrop,.ui-sheet-backdrop{z-index:var(--layer-overlay);background:#14232a85;display:grid;position:fixed;inset:0}.ui-dialog-backdrop{padding:var(--space-4);place-items:center}.ui-dialog{width:min(32rem,100%);max-height:calc(100dvh - 2 * var(--space-4));padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--elevation-overlay);overflow:auto}.ui-sheet-backdrop{align-items:end}.ui-bottom-sheet{width:100%;max-height:88dvh;padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface-raised);box-shadow:var(--elevation-overlay);overflow:auto}.ui-section-header{justify-content:space-between;align-items:end;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.ui-section-header__title{color:var(--color-text-primary);font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);margin:0}.ui-avatar{inline-size:var(--avatar-size,3rem);block-size:var(--avatar-size,3rem);border-radius:var(--radius-lg);background:var(--color-action-primary-subtle);color:var(--color-text-brand);flex:none;overflow:hidden}.ui-avatar>img{object-fit:cover;width:100%;height:100%}.ui-nav-item{min-height:var(--touch-target-min);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-navigation);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);display:inline-flex}.ui-nav-item[aria-current=page]{background:var(--color-action-primary);color:var(--color-text-on-primary)}@media (max-width:374px){.ui-section-header{flex-direction:column;align-items:stretch}.ui-button{width:100%}}@media (min-width:600px){.ui-bottom-sheet{width:min(40rem,calc(100% - 2 * var(--space-4)));border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-inline:auto}}:root{--brand:var(--color-action-primary);--brand-dark:var(--color-text-brand);--mint:var(--color-status-success);--coral:var(--color-status-danger);--gold:var(--color-status-warning);--cream:var(--color-surface-canvas);--ink:var(--color-text-primary);--muted:var(--color-text-secondary);--line:var(--color-border-default)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 90% 0,#e4f3f8 0,transparent 30rem),var(--cream);color:var(--ink);font-family:var(--font-family-arabic);font-variant-numeric:tabular-nums;min-height:100vh;margin:0}a{text-decoration:none}label{gap:.5rem;font-size:.9rem;font-weight:800;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--color-surface-default);width:100%;min-height:48px;font:inherit;color:var(--ink);border-radius:14px;outline:none;padding:.8rem 1rem;transition:all .18s}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 4px #287ba11c}.button,button{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:.45rem;min-height:46px;padding:.75rem 1.1rem;font-weight:900;transition:transform .15s,box-shadow .15s;display:inline-flex}.button:active,button:active{transform:scale(.98)}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:linear-gradient(135deg,var(--brand),#3f95b7);color:#fff;box-shadow:0 8px 20px #287ba126}.secondary{background:var(--color-action-primary-subtle);color:var(--brand-dark)}.danger{color:#a83c2c;background:#ffe7e3}.card{background:#ffffffeb;border:1px solid #fff;border-radius:22px;padding:1.35rem;box-shadow:0 12px 38px #183f5210}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.filter-grid{grid-template-columns:2fr 1fr 1fr auto;gap:.75rem;margin-bottom:1.25rem;display:grid}.alert{border-radius:14px;padding:1rem;font-weight:700}.error{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}.success{background:var(--color-status-success-surface);color:var(--color-status-success-text)}.eyebrow{color:var(--brand);margin-bottom:.3rem;font-size:.82rem;font-weight:900;display:block}.page-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.page-heading h1{margin:0;font-size:2rem;font-weight:950;line-height:1.25}.page-heading p{color:var(--muted);margin:.35rem 0 0}.heading-actions{flex-wrap:wrap;gap:.6rem;display:flex}.section-title{margin-bottom:1rem;font-size:1.2rem;font-weight:950}.badge{background:var(--color-status-info-surface);color:var(--brand-dark);border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:900;display:inline-flex}.student-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.student-card{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:1rem;display:grid}.avatar{width:48px;height:48px;color:var(--brand-dark);background:linear-gradient(135deg,#dceff5,#f5e5cf);border-radius:16px;place-items:center;font-size:1.25rem;font-weight:950;display:grid}.student-info{min-width:0;display:grid}.student-info a{color:var(--ink);font-weight:950}.student-info small,.student-info span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.manual-action{grid-column:1/-1;align-items:center;gap:.5rem;display:flex}.manual-action button{width:100%}.inline-result{font-size:.8rem}.profile-grid{grid-template-columns:300px 1fr;gap:1.25rem;display:grid}.qr-panel{flex-direction:column;align-self:start;gap:.7rem;display:flex}.qr-panel img{width:100%;height:auto}.stat-row{grid-template-columns:repeat(3,1fr);gap:.7rem;margin-bottom:1rem;display:grid}.stat-row div{text-align:center;background:#f8f5fb;border-radius:16px;padding:1rem;display:grid}.stat-row strong{color:var(--brand);font-size:1.7rem}.stat-row span{color:var(--muted);font-size:.85rem}.stack-list{gap:.55rem;display:grid}.stack-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.9rem 0;display:flex}.empty-state,.stack-list span{color:var(--muted)}.empty-state{text-align:center;padding:2.5rem}.promotion-card{justify-content:space-between;align-items:center;gap:1rem;display:flex}.promotion-card p{color:var(--muted);font-size:.85rem}.confirm-box{background:#fff7e6;border-radius:16px;padding:1rem}.scanner-shell{gap:.8rem;display:grid}.scanner-stage{background:#17141d;border-radius:28px;width:100%;min-height:min(68vh,620px);position:relative;overflow:hidden;box-shadow:0 20px 50px #21142d33}.scanner-stage #reader{width:100%;height:100%}.scanner-stage video{object-fit:cover;width:100%!important;height:min(68vh,620px)!important}.scanner-stage #reader__dashboard,.scanner-stage #reader__scan_region img{display:none!important}.scan-frame{aspect-ratio:1;pointer-events:none;border:3px solid #fff;border-radius:28px;width:min(70vw,310px);position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 999px #120e193e}.scan-frame:after,.scan-frame:before{content:"";border:4px solid #0000;border-top-color:#9df1dc;border-radius:30px;position:absolute;inset:-4px}.scan-frame:after{transform:rotate(180deg)}.scanner-overlay{text-align:center;color:#fff;background:#17141d;place-content:center;gap:.8rem;display:grid;position:absolute;inset:0}.spinner{border:3px solid #fff4;border-top-color:#fff;border-radius:50%;width:36px;height:36px;margin:auto;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.scanner-help{color:var(--muted);justify-content:center;align-items:center;gap:.5rem;font-weight:700;display:flex}.status-dot{background:#20b792;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #20b7921e}.status-dot.off{background:#ef6553;box-shadow:0 0 0 5px #ef65531e}.scan-result{z-index:50;text-align:center;color:#fff;border-radius:24px;padding:1.5rem;display:grid;position:fixed;inset:auto 1rem 1.2rem;box-shadow:0 20px 60px #0005}.scan-result.success{background:linear-gradient(135deg,#159e7f,#25be98)}.scan-result.duplicate{color:#3f2700;background:linear-gradient(135deg,#e39a25,#f1b449)}.scan-result.error{background:#db5444}.scan-result strong{font-size:1.2rem}.scan-result b{margin-top:.45rem;font-size:1.8rem}.scan-result span{margin-top:.25rem}.table-wrap{overflow:auto}.table{border-collapse:collapse;background:#fff;width:100%}.table td,.table th{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:.85rem}.table th{color:var(--muted);font-size:.8rem}label:has(input[required],select[required],textarea[required])>span:first-child:after{content:" *";color:#dc2626;font-weight:950}@media (max-width:767px){body{padding-bottom:76px}.desktop-nav{display:none!important}.admin-header{z-index:30;position:sticky;top:0}.admin-header-inner{padding:.8rem 1rem!important}.admin-main{padding:1rem!important}.mobile-nav{display:grid!important}.page-heading{flex-direction:column;align-items:stretch}.page-heading h1{font-size:1.65rem}.heading-actions{grid-template-columns:1fr 1fr;display:grid}.filter-grid,.form-grid,.profile-grid,.student-grid{grid-template-columns:1fr}.form-grid>*{grid-column:auto!important}.student-card{grid-template-columns:auto 1fr}.student-card>.badge{grid-area:1/1}.promotion-card{flex-direction:column;align-items:stretch}.stack-list>div{display:grid}.table-wrap{box-shadow:none;background:0 0;border:0;padding:0;overflow:visible}.table thead{display:none}.table,.table tbody{background:0 0;display:block}.table tr{background:#fff;border-radius:17px;margin-bottom:.7rem;padding:.6rem;display:grid;box-shadow:0 7px 22px #183f520d}.table td{white-space:normal;border:0;padding:.45rem .6rem}.scanner-stage,.scanner-stage video{height:55vh!important;min-height:55vh!important}.scan-result{bottom:84px}.card{border-radius:18px;padding:1rem}}@media (min-width:768px){.mobile-nav{display:none!important}}.nav-dropdown{display:flex;position:relative}.nav-dropdown-trigger{cursor:pointer;color:inherit;font:inherit;box-shadow:none;background:0 0;border:0;align-items:center;gap:.3rem;display:flex}.nav-dropdown-menu{z-index:60;color:#244858;background:#fff;border:1px solid #d9e6eb;border-radius:14px;min-width:220px;margin-top:0;padding:.45rem;display:none;position:absolute;top:100%;right:0;box-shadow:0 14px 35px #173f5350}.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown:hover .nav-dropdown-menu{display:grid}.nav-dropdown-menu:before{content:"";height:10px;position:absolute;top:-10px;left:0;right:0}.nav-dropdown-menu a{white-space:nowrap;border-radius:10px;padding:.7rem .85rem;font-weight:800}.nav-dropdown-menu a:hover{color:#14739a;background:#eef8fb}.nav-dropdown-menu-grouped{min-width:245px}.nav-dropdown-group-title{color:#287ba1;border-bottom:1px solid #e3ecef;margin:.35rem .4rem .15rem;padding:.45rem .45rem .3rem;font-size:.72rem;font-weight:950}.nav-dropdown-group-title:first-child{margin-top:0}.meetings-create,.meetings-heading{margin-bottom:1rem}.meetings-create{grid-template-columns:minmax(220px,2fr) minmax(165px,1fr) auto;align-items:end;gap:.65rem;padding:1rem;display:grid}.meetings-create input{min-height:42px;padding:.6rem .8rem}.meetings-create button{min-height:42px;padding:.55rem .9rem}.meetings-list{gap:.6rem;display:grid}.meeting-list-item{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:.75rem .9rem;display:grid;position:relative;box-shadow:0 5px 18px #183f5209}.meeting-list-info{gap:.15rem;min-width:0;display:grid}.meeting-list-info a{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:950;overflow:hidden}.meeting-list-info span{color:var(--muted);font-size:.78rem}.meeting-attendance-count{color:var(--brand-dark);white-space:nowrap;background:#eaf5f8;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:900}.meeting-list-actions{align-items:center;gap:.35rem;display:flex}.meeting-list-actions form{display:flex}.compact-button{min-height:34px!important;box-shadow:none!important;border-radius:10px!important;padding:.38rem .7rem!important;font-size:.76rem!important}.meeting-edit-panel{position:relative}.meeting-edit-panel summary{cursor:pointer;list-style:none}.meeting-edit-panel summary::-webkit-details-marker{display:none}.meeting-edit-compact{z-index:20;border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:1.4fr 1fr auto;gap:.45rem;width:min(520px,75vw);padding:.65rem;display:grid;position:absolute;top:calc(100% + .45rem);left:0;box-shadow:0 14px 35px #173f5330}.meeting-edit-compact input{border-radius:9px;min-height:38px;padding:.5rem .65rem;font-size:.82rem}@media (max-width:767px){.meetings-create{grid-template-columns:1fr}.meeting-list-item{grid-template-columns:1fr auto;gap:.65rem}.meeting-list-actions,.meeting-list-info{grid-column:1/-1}.meeting-list-actions>*{flex:1}.meeting-list-actions .compact-button{width:100%}.meeting-edit-panel{display:block}.meeting-edit-compact{grid-template-columns:1fr;width:auto;padding:.8rem;position:fixed;inset:auto 1rem 82px}.meeting-attendance-count{grid-row:2;align-self:center}}.meeting-control-panel{margin-bottom:1rem}.meeting-control-panel .meeting-filters{margin-bottom:.75rem;padding:0}.meeting-control-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:.45rem;padding-top:.75rem;display:flex}.meeting-control-actions .button{min-height:38px;box-shadow:none;border-radius:11px;padding:.5rem .75rem;font-size:.8rem}.manual-search-results{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.manual-search-results .section-title{margin-bottom:.7rem;font-size:1rem}.meeting-control-results{border-top:1px solid var(--line);gap:.85rem;margin-top:1rem;padding-top:1rem;display:grid}.meeting-control-results .meetings-pagination{margin:0}.meeting-control-results .empty-state{background:#f8fbfb;border:1px dashed #d8e5e8;border-radius:14px;padding:1.35rem 1rem}.meeting-control-panel+.meeting-reviews-admin{margin-top:.25rem}.attendance-quick-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.attendance-quick-heading h2{font-size:1.15rem;font-weight:950}.attendance-quick-heading p{color:var(--muted);font-size:.82rem}.attendance-quick-heading>div:last-child{gap:.45rem;display:flex}.attendance-quick-heading .button{border-radius:11px;min-height:40px;padding:.5rem .8rem;font-size:.82rem}.meeting-simple-filters{gap:.6rem;display:grid}.meeting-simple-filters>input{min-height:50px;font-size:1rem}.meeting-filter-line{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.meeting-filter-line select{border-radius:10px;width:auto;min-height:36px;padding:.4rem 1.8rem .4rem .65rem;font-size:.78rem}.meeting-filter-line a{min-height:34px;color:var(--brand-dark);background:#edf5f7;border-radius:9px;align-items:center;padding:.35rem .65rem;font-size:.76rem;font-weight:900;display:inline-flex}.meeting-people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.meeting-person-card{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.6rem;display:grid}.meeting-person-link{min-width:0;color:var(--ink);align-items:center;gap:.6rem;display:flex}.meeting-person-link .avatar{border-radius:12px;flex:none;width:42px;height:42px;overflow:hidden}.meeting-person-link .avatar img{object-fit:cover;width:100%;height:100%}.meeting-person-link>span{min-width:0;display:grid}.meeting-person-link b{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.meeting-person-link small{color:var(--muted);font-size:.72rem}.meeting-person-card time{color:var(--brand-dark);white-space:nowrap;font-size:.76rem;font-weight:900}.meeting-person-card .manual-action{grid-column:1/-1}.meeting-person-card .manual-action button{min-height:34px;box-shadow:none;border-radius:9px;padding:.4rem;font-size:.76rem}.meeting-person-card form{display:flex}.meeting-cancel-attendance{color:#a83c2c;background:#fff0ed;border-radius:8px!important;min-height:30px!important;padding:.3rem .5rem!important;font-size:.68rem!important}@media (max-width:900px){.meeting-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.attendance-quick-heading{flex-direction:column;align-items:stretch}.attendance-quick-heading>div:last-child{grid-template-columns:1fr 1fr;display:grid}.meeting-filter-line select{flex:1}.meeting-people-grid{grid-template-columns:1fr}}.meeting-person-card{grid-template-columns:minmax(0,1fr) auto auto}.meetings-period-filter{align-items:center;gap:.45rem;margin-bottom:.8rem;display:flex}.meetings-period-filter select{border-radius:10px;width:auto;min-width:145px;min-height:38px;padding:.45rem .75rem;font-size:.8rem}.meetings-period-filter>a{color:var(--brand);padding:.4rem;font-size:.78rem;font-weight:900}.meetings-period-filter .compact-button{white-space:nowrap}@media (max-width:600px){.meetings-period-filter{grid-template-columns:1fr 1fr;display:grid}.meetings-period-filter select{width:100%;min-width:0}.meetings-period-filter .compact-button,.meetings-period-filter>a{text-align:center;grid-column:1/-1}}.meetings-pagination{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.meetings-pagination a{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--brand-dark);background:#fff;border-radius:10px;place-items:center;padding:.35rem .65rem;font-size:.8rem;font-weight:900;display:grid}.meetings-pagination a.active{background:var(--brand);border-color:var(--brand);color:#fff}.meetings-create-disclosure{margin-bottom:1rem}.meetings-create-disclosure>summary{width:max-content;list-style:none}.meetings-create-disclosure>summary::-webkit-details-marker{display:none}.meetings-create-disclosure[open]>summary{margin-bottom:.65rem}.meetings-create-disclosure .meetings-create{margin-bottom:0}.brand-header .nav-dropdown-menu a:hover{color:#14739a!important;background:#e5f3f7!important}@media (max-width:767px){.meeting-detail-edit form,.meetings-create{grid-template-columns:1fr}}.meeting-summary-badges{align-items:center;gap:.4rem;display:flex}.meeting-attendance-rate{color:#176b58;white-space:nowrap;background:#dcf5eb;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:900}.meeting-detail-edit form{grid-template-columns:minmax(220px,2fr) minmax(155px,1fr) minmax(180px,1fr) auto!important}.meeting-detail-save{white-space:nowrap;align-self:end;min-height:48px}@media (max-width:800px){.meeting-detail-edit form{grid-template-columns:1fr!important}.meeting-detail-save{width:100%}}.student-filter-grid{grid-template-columns:2fr 1fr 1fr 1fr auto}@media (max-width:767px){.student-filter-grid{grid-template-columns:1fr}}.student-grid .student-card>.avatar{border-radius:22px;width:100px;height:100px;overflow:hidden}.student-grid .student-card>.avatar img{object-fit:cover;width:100%;height:100%}.button,a,button,select,summary{transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s,transform .16s,filter .16s}.button:focus-visible,a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #59b4d266}@media (hover:hover){.button:hover,button:not(:disabled):hover{filter:brightness(.96);transform:translateY(-2px);box-shadow:0 9px 22px #183f5225}.primary:hover{filter:brightness(1.08);box-shadow:0 10px 25px #287ba145}.secondary:hover{color:#155d7c;background:#cfe8ef}.danger:hover,.meeting-cancel-attendance:hover{color:#842d21;background:#f8cfc8}a:not(.button):hover{color:#187da4}.brand-header a:not(.button):hover{color:#fff;background:#ffffff18}.nav-dropdown-menu a:hover{color:#14739a;background:#e5f3f7;transform:translate(-2px)}input:hover,select:hover,textarea:hover{border-color:#7db9ce}.meeting-list-info>a:hover,.meeting-person-link:hover b,.student-info>a:hover{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.meeting-person-card:has(.meeting-person-link:hover),.student-card:has(.student-info>a:hover){background:#f7fcfd;border-color:#8cc5d8;box-shadow:0 8px 22px #287ba117}.member-shortcuts>a:hover,.quick-filters a:hover,.stack-list>a:hover,.trip-card:hover{color:var(--brand-dark);background:#edf7fa;transform:translateY(-2px);box-shadow:0 8px 20px #183f5215}.meetings-pagination a:hover{border-color:var(--brand);background:#e7f4f8}.member-nav a:hover,.mobile-nav a:hover{color:var(--brand-dark);background:#eaf5f8}}.meeting-detail-edit{padding:1rem}.meeting-detail-edit>summary{cursor:pointer;color:var(--brand-dark);font-weight:950;list-style:none}.meeting-detail-edit>summary::-webkit-details-marker{display:none}.meeting-detail-edit>summary:after{content:"＋";float:left}.meeting-detail-edit[open]>summary:after{content:"−"}.meeting-detail-edit form{grid-template-columns:2fr 1fr auto;align-items:end;gap:.65rem;margin-top:1rem;display:grid}.meeting-detail-edit button{white-space:nowrap}@media (max-width:700px){.meeting-detail-edit form{grid-template-columns:1fr}}.site-confirm-backdrop{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#102c3c99;place-items:center;padding:1rem;animation:confirm-fade .16s ease-out;position:fixed;inset:0;display:grid!important}.site-confirm-modal{text-align:center;background:#fff;border:1px solid #dce9ed;border-radius:24px;justify-items:center;gap:.75rem;width:min(430px,100%);padding:1.6rem;animation:confirm-pop .2s ease-out;display:grid;box-shadow:0 28px 80px #102c3c55}.site-confirm-mark{color:#a83c2c;background:#fff0ed;border-radius:18px;place-items:center;width:54px;height:54px;font-size:1.65rem;font-weight:950;display:grid}.site-confirm-modal h2{color:var(--ink);margin:0;font-size:1.3rem;font-weight:950}.site-confirm-modal p{color:var(--muted);margin:0;font-weight:700;line-height:1.8}.site-confirm-actions{grid-template-columns:1fr 1fr;gap:.65rem;width:100%;margin-top:.35rem;display:grid!important}.site-confirm-actions button{width:100%;min-height:46px}@keyframes confirm-fade{0%{opacity:0}}@keyframes confirm-pop{0%{opacity:0;transform:translateY(12px)scale(.97)}}@media (max-width:480px){.site-confirm-modal{border-radius:20px;padding:1.25rem}.site-confirm-actions{grid-template-columns:1fr}}.meeting-row{grid-template-columns:1fr auto;align-items:center;gap:1rem;display:grid}.meeting-edit{grid-column:1/-1;grid-template-columns:2fr 1fr auto auto;gap:.6rem;display:grid}.meeting-actions{grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:1.25rem;display:grid}.meeting-stat{gap:.2rem;display:grid}.meeting-stat span{color:var(--muted);font-size:.85rem}.meeting-stat strong{color:var(--brand);font-size:2rem}.meeting-filters{grid-template-columns:2fr repeat(4,1fr) auto;gap:.65rem;margin-bottom:1rem;display:grid}.attendee-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.attendee-card{border:1px solid var(--line);background:#fff;border-radius:18px;gap:.45rem;padding:1rem;display:grid}.attendee-card>div:first-child{justify-content:space-between;gap:.5rem;display:flex}.attendee-card span{color:var(--muted);font-size:.86rem}@media (max-width:767px){.attendee-grid,.meeting-actions,.meeting-edit,.meeting-filters,.meeting-row{grid-template-columns:1fr}.meeting-row>.button{width:100%}.attendee-card>div:first-child{display:grid}}.meeting-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.meeting-choice{color:inherit;justify-content:space-between;align-items:center;display:flex}.meeting-choice div{display:grid}.meeting-choice span{color:var(--muted);font-size:.85rem}.meeting-choice b{color:var(--brand)}.report-types{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.report-filters{grid-template-columns:2fr repeat(4,1fr) auto;gap:.65rem;margin-bottom:1rem;display:grid}.student-summary{align-items:center;gap:1rem;display:flex}.student-summary h2{font-size:1.4rem;font-weight:950}.stack-list a{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;gap:1rem;padding:.9rem 0;display:flex}.trip-report-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.trip-report-filters>button{align-self:end}@media (min-width:768px) and (max-width:1100px){.trip-report-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:767px){.meeting-picker,.report-filters,.report-types{grid-template-columns:1fr}.meeting-choice{flex-direction:column}.meeting-choice,.student-summary{align-items:flex-start}}.brand-header{background:linear-gradient(110deg,#153f57,#287ba1 72%,#a93f3b)}.brand-link{color:#fff;white-space:nowrap;align-items:center;gap:.65rem;font-size:1.05rem;font-weight:950;display:flex}.brand-logo{object-fit:contain;background:#fff;border-radius:50%;flex:none;box-shadow:0 4px 14px #152f3b28}.branded-title{align-items:center;gap:1rem;display:flex}.branded-title h1{font-size:2rem;font-weight:950}.branded-title p,.report-brand p{color:var(--muted)}.login-brand{text-align:center;margin-bottom:1.5rem}.login-brand .brand-logo{margin:0 auto .8rem}.login-brand h1{font-size:1.6rem;font-weight:950}.login-brand p{color:var(--muted)}.report-brand{align-items:center;gap:.8rem;margin-bottom:1.2rem;display:flex}.date-filter{grid-template-columns:1fr 1fr auto;align-items:end;gap:.7rem;display:grid}.quick-filters{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.quick-filters a{background:var(--color-action-primary-subtle);color:var(--brand-dark);border-radius:999px;padding:.5rem .8rem;font-size:.82rem;font-weight:900}.stat-row{grid-template-columns:repeat(4,1fr)}@media (max-width:767px){.brand-link span{font-size:.9rem}.branded-title{align-items:flex-start}.branded-title h1{font-size:1.55rem}.date-filter{grid-template-columns:1fr}.stat-row{grid-template-columns:repeat(2,1fr)}}.student-actions{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:.45rem;padding-top:.75rem;display:grid;position:relative}.student-actions>.edit,.student-actions>button{text-align:center;border-radius:11px;min-height:40px;padding:.55rem;font-size:.8rem;font-weight:900}.student-actions .quick{background:var(--color-action-primary-subtle);color:var(--brand-dark)}.student-actions .edit{color:#765714;background:#fff4d8;place-items:center;display:grid}.student-actions .remove{color:#a23e34;background:#ffe8e4}.quick-student-data{border:1px solid var(--line);background:#f8faf9;border-radius:15px;grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:.7rem;padding:.9rem;display:grid}.quick-student-data>div{display:grid}.quick-student-data span{color:var(--muted);font-size:.75rem}.quick-student-data b{overflow-wrap:anywhere;font-size:.88rem}.delete-confirm{background:#fff4f1;border:1px solid #f4c8c1;border-radius:15px;grid-column:1/-1;padding:1rem}.delete-confirm p{color:#7c5752;margin:.35rem 0 .8rem;font-size:.84rem}.delete-confirm>div{gap:.5rem;display:flex}.delete-confirm form{display:flex}@media (max-width:767px){.student-actions{grid-template-columns:1fr 1fr}.student-actions .remove{grid-column:1/-1}.quick-student-data{grid-template-columns:1fr}.delete-confirm>div{display:grid}.delete-confirm button,.delete-confirm form{width:100%}}.current-photo img,.profile-photo{aspect-ratio:1;object-fit:cover;border:4px solid #fff;border-radius:50%;box-shadow:0 8px 24px #173d5026}.profile-photo{margin:0 auto;width:150px!important;height:150px!important}.current-photo{place-items:center;margin-bottom:1rem;display:grid}.privacy-note{color:#27576b;background:#e9f5f8;border-radius:13px;margin-bottom:1rem;padding:.8rem;font-size:.84rem}input[type=file]{background:#f8faf9;padding:.55rem}label small{color:var(--muted);font-size:.75rem;font-weight:400}.profile-photo-error{background:#ffe7e3;border-radius:10px;padding:.65rem .75rem;line-height:1.6;color:#a83c2c!important;font-weight:800!important;display:block!important}.birth-date-field{border:0;min-width:0;margin:0;padding:0}.birth-date-field legend{margin-bottom:.45rem;font-weight:800}.birth-date-field>div{grid-template-columns:.8fr 1.2fr 1fr;gap:.45rem;display:grid}.birth-date-field label{min-width:0}.birth-date-field label span{font-size:.72rem}.birth-date-field select{min-width:0;padding-inline:.55rem}.trip-card,.trip-list{gap:1rem;display:grid}.trip-card{color:inherit;text-decoration:none}.trip-card h2{margin:.25rem 0;font-size:1.35rem;font-weight:900}.trip-card-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.trip-card-stats span{background:#f3f7f8;border-radius:12px;justify-content:space-between;padding:.7rem;display:flex}.trip-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.trip-scan-button{min-height:54px;font-size:1.1rem}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.payment-form{gap:1rem;display:grid}.payment-remaining{background:#edf8f4;border-radius:14px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.payment-remaining strong{color:#126d58;font-size:1.35rem}.payment-form fieldset{border:0;grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.payment-form legend{margin-bottom:.5rem;font-weight:800}.method-choice{border:2px solid #d8e4e8;border-radius:14px;align-items:center;gap:.5rem;padding:.8rem;display:flex!important}.method-choice input{width:auto}.payment-form .alert{gap:.25rem;display:grid}.payment-history{gap:.6rem;display:grid}.payment-history>div{background:#f6f8f9;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:.75rem;padding:.85rem;display:grid}.payment-history.report>div{grid-template-columns:1.4fr 1fr 1.3fr .8fr .8fr 1fr}.payment-history.balances>div{grid-template-columns:1.5fr repeat(4,1fr)}.scan-member-result{text-align:center}.scan-member-result h2{font-size:1.5rem;font-weight:900}.scan-money{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0;display:grid}.scan-money div{background:#f3f7f8;border-radius:12px;padding:.7rem}.scan-money b,.scan-money span{display:block}.badge.waiting_list{color:#7a5700;background:#fff3cd}.badge.cancelled{color:#991b1b;background:#fee2e2}@media (min-width:768px){.trip-card-stats,.trip-list{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-dashboard{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:700px){.payment-history.balances>div,.payment-history.report>div,.payment-history>div{grid-template-columns:1fr 1fr}.trip-card-stats{font-size:.9rem}.scan-money{grid-template-columns:1fr}.payment-form input[type=number]{min-height:58px;font-size:1.4rem}.trip-scan-button{justify-content:center;width:100%}}.member-portal{background:linear-gradient(#eef7f9,#f8faf9 32%);min-height:100vh;padding-bottom:82px}.member-header{color:#fff;z-index:20;background:linear-gradient(110deg,#153f57,#287ba1);justify-content:space-between;height:62px;padding:0 1rem;display:flex;position:sticky;top:0}.member-header>a{font-size:1.15rem;font-weight:950}.member-header button{color:#fff;background:#ffffff1f;padding:.55rem .85rem}.member-main{max-width:900px;margin:auto;padding:1.25rem}.member-nav{z-index:30;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #173d5012}.member-nav a{color:#287ba1;align-content:center;place-items:center;min-height:64px;font-size:1.25rem;font-weight:900;display:grid}.member-nav span{color:#58636a;font-size:.67rem;display:block}.member-welcome{padding:1rem 0 1.3rem}.member-page-title h1,.member-welcome h1{font-size:1.8rem;font-weight:950}.member-page-title p,.member-welcome p{color:var(--muted)}.member-page-title{margin-bottom:1.2rem}.member-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.member-summary .card{gap:.25rem;padding:1rem;display:grid}.member-data-grid span,.member-summary span{color:var(--muted);font-size:.78rem}.member-summary strong{font-size:1.15rem}.member-qr-cta{color:#fff;background:linear-gradient(110deg,#287ba1,#176c65);border-radius:18px;justify-content:center;align-items:center;margin:1rem 0;padding:1.1rem;font-size:1.12rem;font-weight:950;display:flex}.member-shortcuts{gap:.7rem;display:grid}.member-shortcuts a{justify-content:space-between;align-items:center;display:flex}.member-shortcuts span{color:var(--muted);font-size:.82rem}.member-contact{background:#fff6dd;border:1px solid #efdca8;border-radius:18px;gap:.7rem;margin-top:1.25rem;padding:1rem;display:grid}.member-contact>div{gap:.6rem;display:flex}.member-contact>span{font-weight:900}.member-data-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1.2rem;display:grid}.member-data-grid .card{gap:.25rem;padding:1rem;display:grid}.member-data-grid strong{overflow-wrap:anywhere}.member-records,.member-trip-list{gap:.8rem;display:grid}.member-records article>div{justify-content:space-between;gap:1rem;display:flex}.member-records article>span{color:var(--muted);margin-top:.35rem;display:block}.member-trip h2{font-size:1.18rem;font-weight:950}.trip-payment-summary{grid-template-columns:repeat(2,1fr);gap:.6rem;display:grid}.trip-payment-summary div{background:#f2f7f8;border-radius:12px;padding:.75rem;display:grid}.trip-payment-summary span{color:var(--muted);font-size:.75rem}.member-payment-history{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.member-payment-history h3{margin-bottom:.5rem;font-weight:900}.member-payment-history>div{border-bottom:1px solid var(--line);grid-template-columns:1.5fr 1fr 1fr;gap:.5rem;padding:.6rem 0;display:grid}.waiting-notice{color:#795500;background:#fff5d8;border-radius:14px;gap:.35rem;padding:1rem;display:grid}.cancelled-notice{color:#8f3830;background:#feeceb;border-radius:14px;padding:1rem}.member-qr-page{text-align:center;max-width:520px;margin:auto}.member-qr-page>.brand-logo{margin:0 auto .75rem}.member-qr-page h1{margin:.35rem;font-size:1.5rem;font-weight:950}.member-qr-page p{color:var(--muted);margin:1rem 0}.member-qr-image{background:#fff;border-radius:24px;margin-top:1rem;padding:.75rem;box-shadow:0 12px 36px #173d5020}.member-qr-image img{width:100%;height:auto}@media (min-width:700px){.member-summary{grid-template-columns:repeat(4,1fr)}.member-data-grid,.member-shortcuts{grid-template-columns:repeat(3,1fr)}.member-nav{border-radius:20px 20px 0 0;max-width:620px;left:50%;transform:translate(-50%)}}@media (max-width:520px){.member-main{padding:1rem}.member-data-grid{grid-template-columns:1fr}.member-contact>div{grid-template-columns:1fr 1fr;display:grid}.section-heading{align-items:flex-start}.member-trip .section-heading{display:grid}.member-payment-history>div{grid-template-columns:1fr 1fr}.member-payment-history>div span:last-child{grid-column:1/-1}}.registration-page{width:min(920px,100%);margin:auto;padding:2.5rem 1.25rem 4rem}.registration-card{background:#ffffffed;border:1px solid #fff;border-radius:30px;margin-top:1.75rem;padding:1.5rem;box-shadow:0 24px 70px #173d5017}.registration-form{gap:1.15rem;display:grid}.registration-section{background:linear-gradient(145deg,#fff,#f8fbfb);border:1px solid #e4ecee;border-radius:22px;padding:1.25rem}.registration-section-heading{align-items:center;gap:.75rem;margin-bottom:1.1rem;display:flex}.registration-section-heading>span{background:linear-gradient(135deg,var(--brand),#3f95b7);color:#fff;border-radius:13px;place-items:center;width:38px;height:38px;font-weight:950;display:grid;box-shadow:0 7px 16px #287ba127}.registration-section-heading h2{margin:0;font-size:1.08rem;font-weight:950}.registration-section-heading p{color:var(--muted);margin:.15rem 0 0;font-size:.78rem}.registration-photo-field{gap:.65rem;display:grid}.default-avatar-note{background:#edf7f8;border-radius:16px;align-items:center;gap:.7rem;padding:.65rem;display:flex}.default-avatar-note p{color:#48646f;margin:0;font-size:.76rem;line-height:1.6}.avatar-pair{direction:ltr;flex:none;display:flex}.avatar-pair img{object-fit:cover;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #173d5025}.avatar-pair img+img{margin-left:-13px}.registration-submit{border-radius:17px;width:100%;min-height:56px;font-size:1rem}.registration-section .form-grid{align-items:start}@media (max-width:767px){.registration-page{padding:1.5rem .85rem 3rem}.registration-card{border-radius:22px;margin-top:1.25rem;padding:.8rem}.registration-section{padding:1rem}.default-avatar-note{align-items:flex-start}.registration-page .branded-title{align-items:center}.registration-form .form-grid>label{min-width:0;overflow:hidden}.registration-form input[type=date]{width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;display:block}.admin-main .form-grid>label:has(input[type=date]){min-width:0;max-width:100%;overflow:hidden}.admin-main input[type=date]{appearance:none;box-sizing:border-box;width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;max-inline-size:100%;display:block}}.member-photo-editor{grid-template-columns:auto 1fr;align-items:center;gap:1.25rem;margin-bottom:1.2rem;display:grid}.member-photo-editor .profile-photo{margin:0!important}.member-photo-editor form{grid-template-columns:1fr auto;align-items:end;gap:.75rem;display:grid}.member-photo-editor button{white-space:nowrap}@media (max-width:620px){.member-photo-editor,.member-photo-editor form{grid-template-columns:1fr}.member-photo-editor .profile-photo{margin:auto!important}.member-photo-editor button{width:100%}}.avatar{overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.badge.present{color:#166534;background:#dcfce7}.badge.absent{color:#991b1b;background:#fee2e2}.profile-photo img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.badge.late{color:#9a5a08;background:#fff0d5}.meeting-late-count,.meeting-late-rate{color:#915808;white-space:nowrap;background:#fff0d5;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:900}.meeting-detail-edit form,.meetings-create{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto!important}@media (max-width:1050px){.meeting-detail-edit form,.meetings-create{grid-template-columns:repeat(2,minmax(0,1fr))!important}.meeting-detail-save,.meetings-create button{grid-column:1/-1}}@media (max-width:600px){.meeting-detail-edit form,.meetings-create{grid-template-columns:1fr!important}}.scan-result.late{background:linear-gradient(135deg,#c67813,#e9a02b)}.registration-photo-section{background:linear-gradient(145deg,#f5fbfc,#fff)}.modern-photo-upload{text-align:center;cursor:pointer;background:linear-gradient(145deg,#f4fbfd,#fff);border:2px dashed #9cc8d8;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:190px;padding:1.4rem;transition:all .2s;display:flex;position:relative}.modern-photo-upload:hover{border-color:var(--brand);background:#edf8fb;transform:translateY(-2px);box-shadow:0 12px 28px #287ba112}.modern-photo-upload:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #287ba11c}.modern-photo-upload input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.photo-upload-icon{background:linear-gradient(135deg,var(--brand),#58a9c4);color:#fff;border-radius:19px;place-items:center;width:58px;height:58px;margin-bottom:.35rem;font-size:1.8rem;display:grid;box-shadow:0 9px 22px #287ba130}.modern-photo-upload strong{font-size:1.05rem}.photo-upload-hint{color:var(--muted);font-size:.82rem}.modern-photo-upload small{margin-top:.25rem}.modern-photo-upload.photo-selected{background:#f0fbf6;border-style:solid;border-color:#22a06b}.photo-upload-preview{object-fit:cover;border:4px solid #fff;border-radius:50%;width:104px;height:104px;margin-bottom:.35rem;box-shadow:0 8px 22px #173d5030}.modern-photo-upload.photo-selected strong{color:#13724b}.modern-photo-upload.photo-selected .photo-upload-hint{overflow-wrap:anywhere;max-width:100%}.member-main>.member-contact{width:100%!important;max-width:none!important}.member-contact{border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.55rem;width:min(100%,720px);max-width:none;padding:.7rem .85rem}.member-contact>strong{font-size:.8rem;line-height:1.5}.member-contact>div{gap:.35rem}.member-contact .button{min-height:34px;box-shadow:none;border-radius:9px;padding:.35rem .65rem;font-size:.72rem}.member-contact>span{font-size:.75rem;font-weight:800}@media (max-width:620px){.member-contact{grid-template-columns:1fr;padding:.75rem}.member-contact>div{display:flex}.member-contact .button{flex:1}}.member-data-number{text-align:right;width:100%}.member-attendance-summary,.student-attendance-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important}@media (max-width:699px){.member-attendance-summary,.student-attendance-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}.member-records{grid-template-columns:1fr!important}.member-records .member-record-row{grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:1rem;padding:.8rem 1rem;display:grid}.member-record-row>strong{min-width:0}.member-record-row>span{white-space:nowrap;margin:0!important}.member-record-row>.badge{justify-self:end}@media (max-width:650px){.member-records .member-record-row{grid-template-columns:minmax(0,1fr) auto;gap:.45rem .75rem}.member-record-row>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-record-row>.badge{grid-area:1/2}.member-record-row>span:not(.badge){font-size:.75rem}.member-record-row>span:nth-of-type(2){justify-self:end}}.member-nav{background:#fffffff5;gap:.35rem;padding:.4rem}.member-nav a{border-radius:13px;justify-content:center;align-items:center;gap:.35rem;transition:all .18s;display:flex}.member-nav a b{color:var(--brand);font-size:1.1rem;line-height:1}.member-nav a.active{background:linear-gradient(135deg,var(--brand),#3f95b7);color:#fff;box-shadow:0 7px 18px #287ba12e}.member-nav a.active b,.member-nav a.active span{color:#fff}.member-nav a:not(.active):hover{color:var(--brand-dark);background:#e7f3f6}@media (max-width:699px){.member-nav{padding:.35rem .45rem calc(.35rem + env(safe-area-inset-bottom));gap:.2rem}.member-nav a{border-radius:12px;gap:.15rem;min-height:58px;display:grid}.member-nav a b{font-size:1.15rem}.member-nav a span{font-size:.68rem}.member-nav a.active{transform:translateY(-3px)}}@media (min-width:900px){.member-nav{padding:.45rem}.member-nav a{min-height:48px}.member-nav a span{font-size:.82rem;font-weight:900}}.member-portal .member-nav{grid-template-columns:repeat(6,1fr)}@media (min-width:700px){.member-portal .member-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}.member-dashboard-section{margin-bottom:1.25rem}.member-section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.7rem;display:flex}.member-section-heading h2{font-size:1.08rem;font-weight:950}.member-section-heading span{color:var(--muted);font-size:.78rem}.member-trip-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.member-paid-summary{grid-template-columns:1fr}.member-paid-summary>div{background:#edf8f4}.member-paid-summary b{color:#126d58;font-size:1.2rem}@media (min-width:900px){.member-main{width:min(1120px,100%);max-width:none;padding:1.5rem 2rem 3rem}.member-header{padding-inline:max(2rem,50vw - 560px)}.member-nav{border:1px solid var(--line);border-radius:18px;max-width:1080px;margin:1rem auto 0;padding:0;position:sticky;inset:72px auto auto;overflow:hidden;transform:none}.member-nav a{gap:.45rem;min-height:58px;font-size:1rem;display:flex}.member-nav span{font-size:.78rem}.member-attendance-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.member-records{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:699px){.member-trip-summary{grid-template-columns:1fr}.member-section-heading{flex-direction:column;align-items:flex-start}}.graduation-year-field{margin-bottom:1rem}.graduation-year-field input{max-width:240px}.site-confirm-fields{text-align:right;background:#f5f9fa;border-radius:15px;width:100%;padding:.85rem}.site-confirm-fields label{width:100%}.site-confirm-fields input{background:#fff}.qr-email-action{gap:.4rem;display:grid}.qr-email-action button,.qr-email-action form{width:100%}.email-send-status{border-radius:10px;max-width:240px;margin:0;padding:.45rem .6rem;font-size:.7rem;font-weight:800;line-height:1.5}.email-send-status.sent{color:#14715e;background:#dcf8ee}.email-send-status.failed{color:#9d3024;background:#ffe5e1}.email-send-status-full{width:100%;max-width:none;margin:-.75rem 0 1rem;padding:.75rem 1rem;font-size:.82rem}.profile-photo-status{width:max-content;margin:0 auto;position:relative}.profile-photo-status .profile-photo{margin:0!important}.profile-active-dot{background:#22b573;border:4px solid #fff;border-radius:50%;width:23px;height:23px;position:absolute;bottom:12px;right:8px;box-shadow:0 3px 10px #116e4855}.home-profile-avatar-status{flex:none;width:max-content;position:relative}.home-profile-active-dot{z-index:2;background:#22b573;border:4px solid #fff;border-radius:50%;width:21px;height:21px;position:absolute;bottom:6px;right:4px;box-shadow:0 3px 10px #116e4855}.admin-home-avatar-status{margin-top:-42px}.admin-home-avatar-status .admin-home-avatar{margin-top:0}.original-photo-trigger{min-height:0;box-shadow:none;cursor:zoom-in;background:0 0;border-radius:50%;padding:0;display:block}.original-photo-trigger .profile-photo{transition:transform .18s,box-shadow .18s}.original-photo-trigger:focus-visible .profile-photo,.original-photo-trigger:hover .profile-photo{transform:scale(1.025);box-shadow:0 10px 30px #173d5040}.original-photo-trigger:focus-visible{outline-offset:4px;outline:3px solid #59b4d266}.photo-popup{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:zoom-out;background:#071018e8;place-items:center;padding:4rem 1rem 1rem;display:grid;position:fixed;inset:0}.photo-popup img{cursor:default;border-radius:16px;box-shadow:0 24px 80px #0009;object-fit:contain!important;width:auto!important;max-width:min(96vw,1400px)!important;height:auto!important;max-height:88vh!important;display:block!important}.photo-popup-close{top:max(1rem,env(safe-area-inset-top));z-index:1;color:#173d50;background:#fff;border-radius:50%;width:48px;height:48px;min-height:48px;padding:0;font-size:2rem;line-height:1;position:fixed;right:1rem;box-shadow:0 8px 30px #0006}.admin-profile-photo-form{text-align:right;background:#f7fafb;border:1px solid #dfeaec;border-radius:14px;gap:.65rem;width:100%;padding:.8rem;display:grid}.admin-profile-photo-form label{gap:.35rem}.admin-profile-photo-form label>span{color:var(--brand-dark);font-size:.8rem}.admin-profile-photo-form input[type=file]{min-width:0;max-width:100%;font-size:.76rem}.qr-download-shell{gap:.8rem;width:100%;display:grid}.qr-download-card{text-align:center;background:radial-gradient(circle at 50% 0,#e8f5f8 0,#0000 15rem),#fff;overflow:hidden}.qr-download-card .brand-logo{margin-left:auto;margin-right:auto}.qr-download-card h1{line-height:1.35}.qr-download-card>img:not(.brand-logo){background:#fff;border-radius:20px;padding:.45rem}.qr-card-church-name{color:var(--brand-dark);margin:.35rem 0;font-size:1rem;font-weight:950;line-height:1.55}.qr-card-church-location{color:var(--muted);margin:-.15rem 0 .7rem;font-size:.82rem;font-weight:800}.quick-student-modal{text-align:right;background:#fff;border:1px solid #dce9ed;border-radius:24px;width:min(620px,100%);max-height:min(760px,90vh);padding:1.35rem;animation:confirm-pop .2s ease-out;overflow:auto;box-shadow:0 28px 80px #102c3c55}.quick-student-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.quick-student-heading h2{margin:.15rem 0 0;font-size:1.35rem;font-weight:950}.quick-modal-close{width:38px;height:38px;min-height:38px;color:var(--brand-dark);background:#edf5f7;border-radius:12px;font-size:1.5rem}.quick-student-modal-data{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:1rem 0;display:grid}.quick-student-modal-data>div{background:#f6fafb;border-radius:13px;gap:.2rem;padding:.75rem;display:grid}.quick-student-modal-data b{overflow-wrap:anywhere;font-size:.88rem}.quick-student-modal-actions{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}@media (max-width:560px){.quick-student-modal{border-radius:20px;padding:1rem}.quick-student-modal-actions,.quick-student-modal-data{grid-template-columns:1fr}}.brand-header .brand-link:hover{color:#fff!important;background:0 0!important}.brand-name{gap:.08rem;font-size:.82rem;line-height:1.25;display:grid}.brand-name span{display:block}@media (max-width:767px){.brand-link .brand-name{font-size:.74rem}}.admin-header-inner{grid-template-columns:1fr auto 1fr;align-items:center;display:grid!important}.admin-header-inner>.brand-link{justify-self:start}.admin-header-inner>.desktop-nav{justify-self:center;flex:none!important}.header-account{justify-self:end;align-items:center;gap:.65rem;display:flex}@media (max-width:767px){.admin-header-inner{grid-template-columns:1fr auto}.header-account{grid-column:2}.header-account .desktop-nav{display:none!important}}.student-info .student-contact{width:max-content;max-width:100%;color:var(--muted);justify-content:flex-start;align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;display:flex}.student-contact-icon{width:25px;height:25px;color:var(--brand);background:#e8f4f7;border-radius:9px;flex:none;place-items:center;display:grid}.student-contact-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.student-contact>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.student-info .student-contact:hover{color:var(--brand-dark);text-decoration:none}.student-info .student-contact:hover .student-contact-icon{color:var(--brand-dark);background:#d3eaf0}.student-contacts{text-align:right;justify-content:flex-start;align-items:center;gap:.8rem;margin-top:.25rem;display:flex}.student-contacts,.student-contacts .student-contact{direction:rtl;min-width:0}.student-contacts .student-email{flex:1;width:auto}.site-confirm-actions button{min-height:46px!important;padding:.75rem 1.1rem!important;font-size:.9rem!important}.member-nav-soon{color:#7c8b92;cursor:not-allowed;background:#f1f5f6;border-radius:13px;align-content:center;place-items:center;gap:.05rem;min-height:64px;display:grid}.member-nav-soon b{color:#91a5ad;font-size:1.05rem;line-height:1}.member-nav-soon span{font-size:.72rem;font-weight:900}.member-nav-soon small{color:#a26a25;letter-spacing:.02em;font-size:.55rem;font-weight:900}@media (min-width:900px){.member-nav-soon{justify-content:center;gap:.35rem;min-height:58px;display:flex}.member-nav-soon span{font-size:.82rem}.member-nav-soon small{background:#fff1d9;border-radius:999px;padding:.15rem .35rem}}.member-header{min-height:68px}.member-brand-link{color:#fff;align-items:center;gap:.65rem;display:flex}.member-brand-link:hover{color:#fff!important;background:0 0!important}.member-brand-link .brand-name{font-size:.8rem}.member-brand-link .brand-logo{width:44px!important}@media (max-width:520px){.member-brand-link .brand-name{font-size:.7rem}.member-brand-link .brand-logo{width:38px!important}.member-header{padding:.55rem .75rem}}.member-header{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.member-brand-link{justify-self:start}.member-header-title{white-space:nowrap;justify-self:center;font-size:1rem;font-weight:950}.member-header>form{justify-self:end}@media (max-width:560px){.member-header-title{font-size:.78rem}.member-header>form button{min-height:36px;padding:.4rem .65rem;font-size:.72rem}}.member-portal .member-nav{border-color:#d8e6ea;gap:.45rem;padding:.45rem}.member-portal .member-nav a{color:#4f626b;text-align:center;background:#fff;border:1px solid #dce8eb;border-radius:12px;justify-content:center;align-items:center;min-width:0;padding:.65rem .45rem;line-height:1.35;display:flex}.member-portal .member-nav a span{color:inherit;font-size:.78rem;font-weight:900}.member-portal .member-nav a.active{color:#fff;background:#287ba1;border-color:#287ba1;box-shadow:0 6px 16px #287ba12b}.member-portal .member-nav a:not(.active):hover{color:#175f7d;background:#e6f2f5;border-color:#9fcbd8}@media (max-width:699px){.member-portal .member-nav{padding:.4rem .35rem calc(.4rem + env(safe-area-inset-bottom));gap:.3rem}.member-portal .member-nav a{min-height:54px;padding:.4rem .2rem}.member-portal .member-nav a span{font-size:.65rem}.member-portal .member-nav a.active{transform:none}}@media (min-width:900px){.member-portal .member-nav{padding:.5rem;overflow:visible}.member-portal .member-nav a{min-height:46px}.member-portal .member-nav a span{font-size:.85rem}}.attendance-chart-card{overflow:hidden}.attendance-chart-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.attendance-chart-heading .section-title{margin-bottom:.25rem}.attendance-chart-heading p{color:var(--muted);margin:0;font-size:.78rem}.attendance-chart-heading>span{color:var(--brand-dark);white-space:nowrap;background:#e7f3f6;border-radius:999px;padding:.35rem .6rem;font-size:.72rem;font-weight:900}.attendance-chart-scroll{padding-bottom:.35rem;overflow-x:auto}.attendance-chart{border-bottom:1px solid var(--line);grid-template-columns:45px minmax(720px,1fr);height:290px;display:grid;position:relative}.attendance-chart-guides{color:var(--muted);flex-direction:column;justify-content:space-between;padding:0 0 32px;font-size:.65rem;display:flex}.attendance-chart-bars{background:repeating-linear-gradient(#dce8eb 0 1px,#0000 1px 25%);grid-template-columns:repeat(12,minmax(48px,1fr));align-items:end;gap:.7rem;padding:0 .5rem;display:grid}.attendance-chart-column{height:100%;color:var(--ink);text-align:center;grid-template-rows:24px 1fr 28px;align-items:end;gap:.25rem;display:grid}.attendance-chart-column>strong{color:var(--brand-dark);font-size:.68rem}.attendance-chart-track{justify-content:center;align-items:end;height:100%;display:flex}.attendance-chart-track>span{background:linear-gradient(180deg,#49a6c6,var(--brand));border-radius:9px 9px 3px 3px;width:min(34px,75%);min-height:5px;transition:all .18s;display:block;box-shadow:0 5px 14px #287ba12b}.attendance-chart-column:hover .attendance-chart-track>span{filter:brightness(1.12);transform:scaleX(1.08)}.attendance-chart-column>small{color:var(--muted);white-space:nowrap;font-size:.65rem}@media (max-width:600px){.attendance-chart-heading{display:grid}.attendance-chart{height:250px}.attendance-chart-bars{gap:.45rem}}.attendance-chart-legend{gap:.45rem;display:flex}.attendance-chart-legend span{border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .55rem;font-size:.7rem;font-weight:900;display:inline-flex}.attendance-chart-legend span:before{content:"";border-radius:3px;width:8px;height:8px}.attendance-chart-legend .present{color:#16704c;background:#e1f7eb}.attendance-chart-legend .present:before{background:#25a96f}.attendance-chart-legend .absent{color:#9b362d;background:#fee9e7}.attendance-chart-legend .absent:before{background:#e15f52}.attendance-chart-column>strong{justify-content:center;gap:.45rem;display:flex}.attendance-chart-column>strong .present{color:#168157}.attendance-chart-column>strong .absent{color:#b33e34}.attendance-chart-track{gap:4px}.attendance-chart-track>span{width:min(20px,38%)}.attendance-chart-track>span.present{background:linear-gradient(#62c995,#249c69)}.attendance-chart-track>span.absent{background:linear-gradient(#ef8b80,#d95448)}.scanner-meeting-picker{grid-template-columns:1fr!important}.meeting-choice.unavailable{opacity:.7;cursor:not-allowed}.meeting-choice.unavailable b{color:var(--muted)}.attendance-excuse-toggle{cursor:pointer;background:#fff8e8;border:1px solid #e2c98e;border-radius:14px;align-items:center;gap:.7rem;padding:.8rem 1rem;display:flex}.attendance-excuse-toggle input,.manual-excuse input{width:20px;height:20px;min-height:20px;accent-color:var(--brand);flex:none}.attendance-excuse-toggle span{gap:.1rem;display:grid}.attendance-excuse-toggle small{color:var(--muted);font-weight:700}.manual-excuse{white-space:nowrap;background:#fff8e8;border:1px solid #e2c98e;border-radius:11px;align-items:center;gap:.35rem;padding:.45rem .6rem;display:flex}.manual-action:has(.manual-excuse){grid-template-columns:auto 1fr;display:grid}.manual-action:has(.manual-excuse) .inline-result{grid-column:1/-1}.attendance-excuse-checkbox{color:#7c5816;cursor:pointer;white-space:nowrap;background:#fff8e8;border:1px solid #e2c98e;border-radius:10px;align-items:center;gap:.35rem;min-height:34px;padding:.35rem .55rem;font-size:.72rem;font-weight:900;display:inline-flex}.attendance-excuse-checkbox input{width:18px;height:18px;min-height:18px;accent-color:var(--brand)}.attendance-excuse-checkbox.pending{opacity:.65;cursor:wait}.qr-scanner-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.app-content{min-height:calc(100vh - 112px)}.app-footer{color:var(--muted);text-align:center;background:#f4f8f8;border-top:1px solid #dbe6e8;place-items:center;gap:.3rem;margin-top:auto;padding:1.15rem 1rem;display:grid}.app-footer p{margin:0;font-size:.78rem;font-weight:700;line-height:1.6}.app-footer strong{color:var(--brand-dark);font-weight:950}.footer-social-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;margin:.35rem 0;display:flex}.footer-social-links a{color:#284b5b;background:#fff;border:1px solid #d1e1e5;border-radius:999px;align-items:center;gap:.4rem;min-height:36px;padding:.38rem .7rem;font-size:.76rem;font-weight:900;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 3px 10px #1a54630c}.footer-social-links a:hover{border-color:#8bb9c9;transform:translateY(-2px);box-shadow:0 6px 15px #1a54631a}.footer-social-links a svg{fill:currentColor;width:22px;height:22px;display:block}.app-download-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.app-download-badge{color:#fff;text-align:left;direction:ltr;background:#101416;border:1px solid #27343a;border-radius:16px;align-items:center;gap:.7rem;min-width:205px;min-height:64px;padding:.65rem 1rem;text-decoration:none;transition:transform .16s,box-shadow .16s;display:flex;box-shadow:0 9px 24px #102d3d1c}.app-download-badge:hover{color:#fff;transform:translateY(-2px);box-shadow:0 13px 28px #102d3d2b}.app-download-badge svg{fill:currentColor;flex:none;width:34px;height:34px}.app-download-google{background:#101416;border-color:#27343a}.app-download-google svg{fill:none}.app-download-badge span{line-height:1.05;display:grid}.app-download-badge small{opacity:.86;font-size:.68rem;font-weight:700}.app-download-badge strong{color:inherit;font-family:var(--font-family-arabic);letter-spacing:.01em;margin-top:.28rem;font-size:1.05rem;font-weight:800}.app-download-links-compact{gap:.5rem;margin:.25rem 0 .4rem}.app-download-links-compact .app-download-badge{border-radius:13px;min-width:174px;min-height:50px;padding:.45rem .75rem}.app-download-links-compact .app-download-badge svg{width:27px;height:27px}.app-download-links-compact .app-download-badge small{font-size:.58rem}.app-download-links-compact .app-download-badge strong{font-size:.86rem}@media (max-width:699px){.app-content{min-height:calc(100vh - 132px)}.app-footer{padding:1rem .75rem calc(5.3rem + env(safe-area-inset-bottom));gap:.35rem}.app-footer p{font-size:.7rem}.footer-social-links{gap:.4rem}.footer-social-links a{min-height:34px;padding:.32rem .58rem;font-size:.68rem}.footer-social-links a svg{width:20px;height:20px}body:has(.registration-form){padding-bottom:0}.app-content:has(.registration-form){min-height:0}.app-content:has(.registration-form)+.app-footer{padding:1rem .75rem calc(1rem + env(safe-area-inset-bottom))}}.public-login-page,.registration-page{position:relative}.public-back-button{z-index:5;min-height:42px;color:var(--brand-dark);background:#fff;border:1px solid #cfe1e6;border-radius:13px;align-items:center;gap:.35rem;padding:.55rem .85rem;font-size:.82rem;font-weight:950;transition:all .18s;display:inline-flex;position:absolute;inset-block-start:1rem;inset-inline-start:1rem;box-shadow:0 6px 18px #183f5212}.public-back-button:hover{color:#155c78;background:#e7f4f7;border-color:#8fc2d1;transform:translateY(-1px)}@media (max-width:699px){.public-back-button{width:max-content;min-height:40px;margin:0 0 .75rem auto;position:relative;inset:auto}.public-login-page{flex-direction:column;justify-content:center;display:flex!important}.public-login-page>.card{margin-block:auto}}@media print{.app-footer{display:none}}.member-trip-home-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.member-trip-home-list>a{color:var(--ink);gap:.55rem;display:grid}.member-trip-home-list>a:hover{background:#edf7fa;border-color:#afd4de;transform:translateY(-2px)}.member-trip-home-list>a>div{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.member-no-trips,.member-trip-home-list>a>span{color:var(--muted);font-size:.78rem}@media (max-width:650px){.member-trip-home-list{grid-template-columns:1fr}}.refund-panel{background:snow;border-color:#efcbc5}.refund-panel summary{color:#9b392f}.refund-entry{color:#9b392f;background:#fff0ed!important}.trip-member-note{color:var(--muted);background:#edf5f7;border-radius:12px;margin-top:.8rem;padding:.75rem;font-size:.78rem}.member-payment-history>summary{cursor:pointer;color:var(--brand-dark);font-size:.8rem;font-weight:900}.member-payment-history>div{background:0 0!important;grid-template-columns:1fr!important;padding:0!important;display:grid!important}.member-payment-history>div>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:.5rem;padding:.6rem 0;font-size:.78rem;display:grid}.trip-read-only .payment-panel,.trip-read-only:has(.trip-dashboard) .meeting-actions a[href*=view\=add],.trip-read-only:has(.trip-dashboard) .trip-scan-button,.trip-read-only:has(.trip-dashboard) section[id=participants] .attendee-card form,.trip-read-only:has(.trip-dashboard) section[id=waiting] form,.trip-read-only:has(.trip-dashboard)>details,.trip-read-only:has(.trip-dashboard)>section.card.mb-5,.trip-read-only:has(.trip-list)>details{display:none!important}.servant-home-permissions{margin-bottom:1.2rem}.servant-home-permissions h2{margin:0 0 .65rem;font-size:1rem;font-weight:950}.servant-home-permissions>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.servant-home-permissions .card{color:var(--ink);gap:.3rem;display:grid}.servant-home-permissions a.card:hover{background:#eaf5f7;border-color:#abd2dc;transform:translateY(-2px)}.servant-home-permissions span{color:var(--muted);font-size:.76rem}@media (max-width:700px){.servant-home-permissions>div{grid-template-columns:1fr}}.servant-permissions{border:1px solid var(--line);background:#f7fafb;border-radius:13px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.7rem;padding:.75rem;display:flex}.servant-permissions>span{color:var(--brand-dark);font-size:.76rem;font-weight:950}.servant-permissions label{color:var(--muted);align-items:center;font-size:.74rem;font-weight:800;grid-template-columns:auto 1fr!important;gap:.35rem!important;width:auto!important;display:flex!important}.servant-permissions input{width:18px;height:18px;min-height:0}.system-user-create .servant-permissions{grid-column:1/-1}.header-account-profile{color:#fff;align-items:center;gap:.5rem;display:flex}.header-account-avatar{background:#e9f4f7;border:2px solid #fff9;border-radius:50%;flex:none;width:38px;height:38px;overflow:hidden}.header-account-avatar img{object-fit:cover;width:100%;height:100%}.servant-profile-page{max-width:980px;margin:auto}.servant-profile-hero{background:linear-gradient(135deg,#fff,#edf7f9);align-items:center;gap:1.2rem;margin-bottom:1rem;display:flex}.servant-profile-avatar{border:4px solid #fff;border-radius:50%;flex:none;width:110px;height:110px;overflow:hidden;box-shadow:0 8px 24px #1f61751f}.servant-profile-avatar img{object-fit:cover;width:100%;height:100%}.servant-profile-hero h2{margin:0 0 .25rem;font-size:1.45rem}.servant-profile-hero>div>span{color:var(--muted)}.servant-profile-hero>div>div{flex-wrap:wrap;gap:.4rem;margin-top:.7rem;display:flex}.servant-profile-hero b,.servant-profile-hero small{color:var(--brand-dark);background:#dceff4;border-radius:999px;padding:.35rem .6rem;font-size:.72rem}.servant-password-form,.servant-profile-form,.servant-profile-sections{gap:1rem;display:grid}.servant-password-form>small,.servant-profile-form>small{color:var(--muted);line-height:1.7}.servant-password-form>button,.servant-profile-form>button{width:max-content;min-width:190px}.profile-photo-selected{color:#167255!important}.servant-birthdays{margin-top:1rem}.servant-birthday-edit{min-height:34px;padding:.35rem .65rem;font-size:.72rem}@media (max-width:650px){.header-account-profile .desktop-nav{display:none}.servant-profile-hero{align-items:center}.servant-profile-avatar{width:88px;height:88px}.servant-password-form .form-grid,.servant-profile-form .form-grid{grid-template-columns:1fr}.servant-password-form>button,.servant-profile-form>button{width:100%}}.system-user-create:has(select[name=role] option[value=ADMIN]:checked) .servant-permissions,.system-user-edit:has(select[name=role] option[value=ADMIN]:checked) .servant-permissions{display:none}.follow-up-filters{grid-template-columns:minmax(190px,1fr) minmax(160px,1fr) auto auto;align-items:end;gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.follow-up-filters label{gap:.35rem}.follow-up-filters label>span{color:var(--brand-dark);font-size:.76rem}.follow-up-filters .button,.follow-up-filters button{min-height:48px}@media (max-width:760px){.follow-up-filters{grid-template-columns:1fr 1fr}.follow-up-filters .button,.follow-up-filters button{width:100%}}@media (max-width:500px){.follow-up-filters{grid-template-columns:1fr}}.follow-up-heading{align-items:end}.follow-up-sort{border:1px solid var(--line);background:#fff;border-radius:14px;gap:.35rem;padding:.3rem;display:flex}.follow-up-sort a{color:var(--muted);border-radius:10px;padding:.6rem .85rem;font-size:.78rem;font-weight:900}.follow-up-sort a:hover{color:var(--brand-dark);background:#e8f3f6}.follow-up-sort a.active{background:var(--brand);color:#fff;box-shadow:0 5px 14px #287ba12c}.follow-up-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.follow-up-summary .card{text-align:center;gap:.25rem;padding:1rem;display:grid}.follow-up-summary span{color:var(--muted);font-size:.76rem;font-weight:800}.follow-up-summary strong{color:var(--brand);font-size:1.45rem}.follow-up-table-wrap{padding-top:.75rem}.follow-up-table-caption{justify-content:space-between;align-items:center;gap:1rem;padding:.2rem .4rem .8rem;display:flex}.follow-up-table-caption strong{font-size:.86rem}.follow-up-table-caption span{color:var(--muted);font-size:.72rem}.follow-up-rank{width:30px;height:30px;color:var(--brand-dark);background:#edf5f7;border-radius:10px;place-items:center;font-size:.75rem;font-weight:950;display:grid}.follow-up-student{width:max-content;color:var(--ink);align-items:center;gap:.65rem;display:flex}.follow-up-student img{width:44px!important;height:44px!important}.follow-up-student:hover{color:var(--brand)}.absence-number,.regular-number{border-radius:9px;place-items:center;min-width:34px;height:30px;padding:0 .5rem;display:inline-grid}.absence-number{color:#aa382e;background:#fee7e4}.regular-number{color:#14704b;background:#e0f7e9}@media (max-width:700px){.follow-up-heading{align-items:start}.follow-up-sort{width:100%}.follow-up-sort a{text-align:center;flex:1}.follow-up-summary{grid-template-columns:1fr 1fr}.follow-up-summary .card:last-child{grid-column:1/-1}.follow-up-table-caption{flex-direction:column;align-items:start}}.follow-up-mobile-list{display:none}@media (max-width:767px){.follow-up-desktop-table{display:none!important}.follow-up-mobile-list{gap:.6rem;display:grid}.follow-up-mobile-card{background:#fff;border:1px solid #dce7ea;border-radius:15px;grid-template-columns:minmax(0,1fr) auto;gap:.45rem .7rem;padding:.75rem;display:grid}.follow-up-mobile-person,.follow-up-mobile-person>a{align-items:center;gap:.55rem;min-width:0;display:flex}.follow-up-mobile-person>a{color:var(--ink)}.follow-up-mobile-person img{flex:none;width:46px!important;height:46px!important}.follow-up-mobile-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.follow-up-mobile-phone{color:var(--brand-dark);align-self:center;font-size:.84rem;font-weight:850}.follow-up-mobile-numbers{border-top:1px solid #e7edef;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.45rem;padding-top:.5rem;display:grid}.follow-up-mobile-numbers>span{background:#f6f9fa;border-radius:10px;justify-content:space-between;align-items:center;gap:.4rem;padding:.4rem .55rem;display:flex}.follow-up-mobile-numbers small{color:var(--muted);font-size:.78rem;font-weight:850}.follow-up-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.follow-up-summary .card:last-child{grid-column:auto}.follow-up-summary .card{padding:.7rem .35rem}.follow-up-summary span{font-size:.72rem}.follow-up-summary strong{font-size:1.35rem}.follow-up-table-wrap{padding:.75rem}.follow-up-table-caption{flex-direction:row;align-items:center;padding:.1rem 0 .65rem}.follow-up-table-caption span{font-size:.76rem}}@media (max-width:390px){.follow-up-mobile-card{grid-template-columns:1fr}.follow-up-mobile-phone{text-align:right;grid-column:1}.follow-up-mobile-numbers{grid-column:1}.follow-up-mobile-numbers small{font-size:.75rem}}.announcement-create-form{gap:1rem;max-width:900px;display:grid}.announcement-form-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:1rem;padding-bottom:.9rem;display:flex}.announcement-form-heading h2{margin:.15rem 0 0;font-size:1.25rem}.announcement-publish-check{color:#176d55;background:#edf8f4;border-radius:12px;align-items:center;padding:.55rem .75rem;grid-template-columns:auto 1fr!important;gap:.5rem!important;width:auto!important;display:flex!important}.announcement-publish-check input{width:18px;height:18px;min-height:0}.announcement-create-form textarea{resize:vertical;min-height:130px}.announcement-image-input{background:#f7fbfc;border:1px dashed #bcd3d9;border-radius:14px;padding:.85rem}.announcement-image-input small{color:var(--muted);font-size:.72rem}.announcement-admin-list{gap:.85rem;display:grid}.announcement-admin-card{grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.announcement-admin-image{object-fit:cover;border-radius:15px;width:170px;height:110px}.announcement-admin-content{min-width:0}.announcement-admin-content h2{margin:.4rem 0 .25rem;font-size:1.05rem}.announcement-admin-content p{color:var(--muted);white-space:pre-line;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.82rem;display:-webkit-box;overflow:hidden}.announcement-admin-content>small{color:var(--brand);margin-top:.45rem;font-weight:800;display:block}.announcement-admin-meta{color:var(--muted);align-items:center;gap:.55rem;font-size:.72rem;display:flex}.announcement-admin-actions{gap:.4rem;display:flex}.announcement-admin-actions form{margin:0}.announcement-admin-actions button{min-height:40px;padding:.55rem .75rem;font-size:.75rem}@media (max-width:760px){.announcement-admin-card{grid-template-columns:90px 1fr}.announcement-admin-image{width:90px;height:90px}.announcement-admin-actions{grid-column:1/-1}.announcement-admin-actions button,.announcement-admin-actions form{flex:1;width:100%}}@media (max-width:500px){.announcement-form-heading{display:grid}.announcement-admin-card{grid-template-columns:1fr}.announcement-admin-image{width:100%;height:180px}}.member-announcements-section{margin-bottom:1.35rem}.member-announcements-section .member-section-heading>div{gap:.1rem;display:grid}.member-announcements-section .member-section-heading h2{margin:0;font-size:1.2rem}.member-unread-count{background:#fff0d8;border-radius:999px;font-weight:950;color:#a45e12!important;padding:.35rem .65rem!important;font-size:.72rem!important}.member-announcements-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.member-announcements-feed form{min-width:0}.member-announcement-post{border:1px solid var(--line);width:100%;height:100%;min-height:128px;color:var(--ink);text-align:right;background:#fff;border-radius:18px;grid-template-columns:120px minmax(0,1fr);gap:.85rem;padding:.7rem;display:grid;position:relative;overflow:hidden;box-shadow:0 7px 22px #2349570c}.member-announcement-post:hover{border-color:#aed3de;transform:translateY(-2px);background:#f4fafb!important}.member-announcement-post.is-unread{background:#fffdf8;border-color:#f0c27d;box-shadow:0 7px 22px #bd741313}.member-announcement-thumb{object-fit:cover;border-radius:13px;width:120px;height:100%;min-height:104px}.member-announcement-copy{align-content:start;gap:.35rem;min-width:0;display:grid}.member-announcement-topline{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.member-announcement-topline small,.member-announcement-topline time{color:var(--muted);font-size:.68rem}.member-announcement-topline b{color:#a45e12;align-items:center;gap:.3rem;font-size:.7rem;display:inline-flex}.member-announcement-topline b i{background:#f09a2b;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #fff0d8}.member-announcement-copy>strong{font-size:.96rem;line-height:1.5}.member-announcement-copy>span:last-child{color:var(--muted);-webkit-line-clamp:2;white-space:pre-line;-webkit-box-orient:vertical;font-size:.76rem;line-height:1.65;display:-webkit-box;overflow:hidden}@media (max-width:760px){.member-announcements-feed{grid-template-columns:1fr}}@media (max-width:440px){.member-announcement-post{grid-template-columns:85px 1fr}.member-announcement-thumb{width:85px;min-height:90px}.member-announcement-topline small{display:none}}.member-announcement-detail{max-width:900px;margin:0 auto;padding:0;overflow:hidden}.announcement-back{color:var(--brand-dark);background:#edf5f7;border-radius:10px;margin:1rem 1rem 0;padding:.45rem .7rem;font-size:.78rem;font-weight:900;display:inline-flex}.member-announcement-hero{object-fit:cover;border-radius:18px;width:calc(100% - 2rem);height:auto;max-height:480px;margin:1rem;display:block}.member-announcement-detail-body{padding:1rem 1.5rem 2rem}.member-announcement-detail-body h1{margin:.35rem 0;font-size:clamp(1.5rem,4vw,2.15rem)}.member-announcement-date{color:var(--muted);font-size:.78rem}.member-announcement-detail-body p{white-space:pre-line;color:#34474f;margin:1.2rem 0 0;line-height:2}.announcement-admin-card:not(.has-image){grid-template-columns:minmax(0,1fr) auto}.member-announcement-post:not(.has-image){grid-template-columns:minmax(0,1fr)}@media (max-width:760px){.announcement-admin-card:not(.has-image){grid-template-columns:1fr}}.announcements-admin-page,.announcements-admin-page .announcement-create-form{width:100%;max-width:none}.announcements-admin-page .announcement-admin-list{width:100%}.meeting-list-title-line{align-items:center;gap:.55rem;display:flex}.meeting-list-title-line .meeting-ended-badge,.meeting-live-badge,.meeting-upcoming-badge{white-space:nowrap;border-radius:999px;padding:.22rem .5rem;font-size:.66rem;font-weight:950;display:inline-flex}.meeting-live-badge,.meeting-upcoming-badge{align-items:center;gap:.35rem}.meeting-live-badge{color:#126a4f;background:#e1f7ed}.meeting-live-badge i{background:#20a875;border-radius:50%;width:7px;height:7px;animation:meeting-live-pulse 1.4s infinite;box-shadow:0 0 0 3px #bfead8}.meeting-upcoming-badge{color:var(--brand-dark);background:#eaf4f7}@media (max-width:650px){.meeting-list-title-line{flex-wrap:wrap;align-items:flex-start}.meeting-upcoming-badge{white-space:normal}}.meeting-live-badge{color:#0f704f;background:#dcf7e9;border:1px solid #a9dfc7}.meeting-upcoming-badge{color:#a64b00;background:#fff0df;border:1px solid #f2c38f}.meeting-title-status-dot{border-radius:50%;flex:none;width:9px;height:9px}.meeting-title-status-dot.ended{background:#d95b4f;box-shadow:0 0 0 3px #fde7e5}.meeting-title-status-dot.open{background:#20a875;animation:meeting-live-pulse 1.4s infinite;box-shadow:0 0 0 3px #dcf7e9}.meeting-title-status-dot.not_started{background:#e97817;box-shadow:0 0 0 3px #fff0df}.meeting-ended-badge{color:#fff!important;background:#d95b4f!important;border-color:#d95b4f!important}.system-user-create{grid-template-columns:repeat(5,minmax(0,1fr)) auto;align-items:end;gap:.75rem;display:grid}.system-users-list{grid-template-columns:1fr;gap:1rem;display:grid}.system-user-card{gap:.85rem;display:grid}.system-user-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.system-user-heading h2{margin:0;font-size:1.1rem;font-weight:950}.system-user-heading div{gap:.2rem;display:grid}.system-user-heading div span{color:var(--muted);font-size:.78rem}.system-user-edit{grid-template-columns:1fr 1.3fr 1fr auto;align-items:end;gap:.7rem;display:grid}.system-user-password{grid-template-columns:1fr 1fr auto;align-items:end;gap:.7rem;display:grid}.system-user-edit label,.system-user-password label{gap:.35rem}.system-user-edit label>span,.system-user-password label>span{color:var(--brand-dark);font-size:.76rem}.system-user-edit button,.system-user-password button{min-height:48px}.audit-filters{grid-template-columns:1fr 1fr auto;gap:.75rem;display:grid}.audit-log-list{padding-top:.5rem;padding-bottom:.5rem}.audit-log-list article{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem .25rem;display:grid}.audit-log-list article:last-child{border-bottom:0}.audit-log-list article>div{gap:.25rem;display:grid}.audit-log-list article span{color:var(--muted);font-size:.82rem}.audit-log-list time{color:var(--brand-dark);white-space:nowrap;font-size:.74rem;font-weight:800}@media (max-width:1050px){.system-user-create{grid-template-columns:repeat(2,minmax(0,1fr))}.system-user-create button{grid-column:1/-1}}@media (max-width:900px){.system-user-edit{grid-template-columns:repeat(2,minmax(0,1fr))}.system-user-edit button{grid-column:1/-1}}@media (max-width:600px){.audit-filters,.system-user-create,.system-user-edit,.system-user-password{grid-template-columns:1fr}.system-user-edit button{grid-column:auto}.audit-log-list article{grid-template-columns:1fr}.audit-log-list time{white-space:normal}}.system-user-status-form{align-items:center;margin:0;display:flex}.system-user-toggle{min-height:34px;box-shadow:none;color:#8b4a44;background:0 0;gap:.45rem;padding:.25rem .4rem}.system-user-toggle:hover{background:#eef4f5;box-shadow:none!important;transform:none!important}.system-user-toggle-track{background:#c8d1d4;border-radius:999px;width:48px;height:26px;transition:all .2s;display:block;position:relative}.system-user-toggle-track i{background:#fff;border-radius:50%;width:20px;height:20px;transition:all .2s;position:absolute;top:3px;right:3px;box-shadow:0 2px 6px #263a4350}.system-user-toggle b{text-align:right;min-width:40px;font-size:.75rem}.system-user-toggle.is-active{color:#16704c}.system-user-toggle.is-active .system-user-toggle-track{background:#27a870}.system-user-toggle.is-active .system-user-toggle-track i{transform:translate(-22px)}.system-user-toggle:disabled{opacity:.7}.system-user-toggle:disabled:hover{background:0 0}.system-user-heading-actions{align-items:center;gap:.35rem!important;display:flex!important}.system-user-delete{color:#a83c2c;width:36px;height:36px;min-height:36px;box-shadow:none;background:#ffe7e3;border-radius:11px;padding:0}.system-user-delete svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.system-user-delete:hover{color:#842d21;background:#f7cfc8!important}.system-user-delete:disabled{opacity:.4}.system-user-list-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.system-user-avatar{background:#e8f3f6;border-radius:50%;flex:none;width:68px;height:68px;overflow:hidden}.system-user-avatar img{object-fit:cover;width:100%;height:100%}.system-user-list-card .system-user-heading,.system-user-list-card .system-user-heading>div:first-child{min-width:0}.system-user-list-card .system-user-heading h2,.system-user-list-card .system-user-heading span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.system-user-list-card .system-user-heading small{color:var(--brand-dark);font-size:.72rem;font-weight:900}.system-user-open{white-space:nowrap}.system-user-profile-page{max-width:1000px;margin:auto}.system-user-profile-form{gap:1rem;display:grid}.system-user-profile-form>button{width:max-content;min-width:230px}.system-user-profile-form:has(select[name=role] option[value=ADMIN]:checked) .servant-permissions{display:none}.system-user-profile-hero .is-active{color:#14715e;background:#dcf8ee}.system-user-profile-hero .is-inactive{color:#9d3024;background:#ffe5e1}.system-user-password-note{color:var(--muted);margin:-.4rem 0 1rem;font-size:.82rem}.system-user-danger-zone{background:snow;border-color:#efcbc5;justify-content:space-between;align-items:center;gap:1rem;display:flex}.system-user-danger-zone h2{margin:0 0 .25rem;font-size:1rem}.system-user-danger-zone p{color:var(--muted);margin:0;font-size:.78rem}.system-user-danger-zone>div:last-child{gap:.5rem;display:flex}.system-user-danger-zone form{margin:0}@media (max-width:700px){.system-user-list-card{grid-template-columns:auto minmax(0,1fr)}.system-user-list-card .system-user-heading-actions{grid-column:2}.system-user-list-card .system-user-open{grid-column:1/-1;width:100%}.system-user-profile-form .form-grid{grid-template-columns:1fr}.system-user-profile-form>button{width:100%}.system-user-danger-zone{flex-direction:column;align-items:stretch}.system-user-danger-zone button,.system-user-danger-zone form,.system-user-danger-zone>div:last-child{width:100%}}.member-profile-heading{margin-bottom:1.25rem}.member-profile-shell{align-items:start;margin-bottom:1.2rem}.member-profile-aside{text-align:center;gap:1rem;display:grid;position:sticky;top:150px}.member-profile-identity{gap:.25rem;display:grid}.member-profile-identity strong{font-size:1.08rem}.member-profile-identity span{color:var(--muted);font-size:.78rem}.member-profile-photo-form{border-top:1px solid var(--line);text-align:right;gap:.7rem;padding-top:1rem;display:grid}.member-profile-photo-form label>span{color:var(--brand-dark)}.member-profile-details{gap:1.2rem;display:grid}.member-profile-details-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:1rem;padding-bottom:1rem;display:flex}.member-profile-details-heading h2{margin:0;font-size:1.25rem;font-weight:950}.member-readonly-badge{color:var(--brand-dark);white-space:nowrap;background:#e8f3f6;border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:900}.member-profile-section{gap:.7rem;display:grid}.member-profile-section h3{color:var(--brand);margin:0;font-size:.86rem;font-weight:950}.member-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.member-profile-field{background:#f8fbfb;border:1px solid #e5ecee;border-radius:14px;gap:.3rem;min-width:0;padding:.8rem .9rem;display:grid}.member-profile-field>span{color:var(--muted);font-size:.72rem;font-weight:800}.member-profile-field>strong{overflow-wrap:anywhere;font-size:.88rem;line-height:1.6}.member-profile-section:last-child .member-profile-field:last-child{grid-column:1/-1}@media (max-width:899px){.member-profile-aside{position:static}}@media (max-width:560px){.member-profile-fields{grid-template-columns:1fr}.member-profile-section:last-child .member-profile-field:last-child{grid-column:auto}.member-profile-details-heading{align-items:center}}.member-profile-summary{align-items:center;gap:1rem;margin-bottom:.8rem;padding:1rem 1.15rem;display:flex}.member-profile-summary .profile-photo-status{flex:none}.member-profile-summary-photo{border:3px solid #fff;border-radius:50%;box-shadow:0 7px 20px #173d5029;width:86px!important;height:86px!important}.member-profile-summary-copy{gap:.1rem;min-width:0;display:grid}.member-profile-summary-copy h1{color:var(--ink);margin:0;font-size:1.35rem;font-weight:950}.member-profile-summary-copy>strong{text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem;overflow:hidden}.member-profile-summary-copy>small{color:var(--muted)}.member-profile-summary-copy>small b{color:var(--brand-dark)}.member-profile-photo-disclosure{margin-bottom:.8rem;padding:.85rem 1rem}.member-profile-photo-disclosure>summary{min-height:42px;color:var(--brand-dark);cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;font-weight:950;list-style:none;display:flex}.member-profile-photo-disclosure>summary::-webkit-details-marker{display:none}.member-profile-photo-disclosure>summary:after{content:"⌄";font-size:1.1rem;transition:transform .18s}.member-profile-photo-disclosure[open]>summary:after{transform:rotate(180deg)}.member-profile-photo-disclosure>summary small{color:var(--muted);margin-right:auto;font-size:.7rem;font-weight:700}.member-profile-photo-disclosure .member-profile-photo-form{margin-top:.75rem}.member-profile-shell{display:block}.member-profile-details{width:100%}@media (max-width:560px){.member-profile-summary{gap:.8rem;padding:.85rem}.member-profile-summary-photo{width:72px!important;height:72px!important}.member-profile-summary-copy h1{font-size:1.15rem}.member-profile-summary-copy>strong{font-size:.82rem}.member-profile-photo-disclosure>summary small{display:none}.member-profile-details{padding:1rem}.member-profile-field{background:0 0;border:0;border-bottom:1px solid #e5ecee;border-radius:0;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.7rem .15rem;display:flex}.member-profile-section .member-profile-field:last-child{border-bottom:0}.member-profile-field>span{flex:none;padding-top:.1rem}.member-profile-field>strong{text-align:left}.member-profile-section{gap:.35rem}.member-profile-section+.member-profile-section{border-top:1px solid var(--line);padding-top:.85rem}}.member-profile-hero{background:linear-gradient(135deg,#fff 35%,#eef8f8);border:1px solid #d8e7e9;border-radius:24px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:.8rem;padding:1.1rem 1.2rem;display:grid;box-shadow:0 8px 28px #11435314}.member-profile-avatar-wrap{flex:none;position:relative}.member-profile-avatar-wrap>span{background:#25a875;border:3px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;bottom:5px;right:5px}.member-profile-hero .member-profile-summary-photo{width:88px!important;height:88px!important}.member-profile-summary-copy>span{color:var(--brand);font-size:.7rem;font-weight:950}.member-profile-summary-copy h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-profile-summary-copy>div{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.35rem;display:flex}.member-profile-summary-copy>div small{color:#45636d;background:#e6f1f4;border-radius:999px;padding:.28rem .55rem;font-size:.68rem;font-weight:850}.member-profile-summary-copy>div small b{color:var(--brand-dark)}.member-profile-summary-copy>div .member-profile-active{color:#167054;background:#e3f7ed}.member-profile-hero>.member-profile-photo-disclosure{min-width:132px;box-shadow:none;background:0 0;border:0;margin:0;padding:0}.member-profile-hero>.member-profile-photo-disclosure>summary{min-height:44px;color:var(--brand-dark);background:#fff;border:1px solid #bcd8df;border-radius:13px;justify-content:center;gap:.45rem;padding:.55rem .75rem;font-size:.76rem}.member-profile-hero>.member-profile-photo-disclosure>summary:after{display:none}.member-profile-photo-disclosure>summary svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.member-profile-hero>.member-profile-photo-disclosure[open]{border-top:1px solid #dce8e9;grid-column:1/-1;width:100%;padding-top:.85rem}.member-profile-hero>.member-profile-photo-disclosure[open]>summary{width:max-content;margin-right:auto}.member-profile-hero .member-profile-photo-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;padding-top:.75rem}.member-profile-hero .member-profile-photo-form button{min-height:48px;width:auto!important}@media (max-width:560px){.member-profile-hero{border-radius:20px;grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:.85rem}.member-profile-hero .member-profile-summary-photo{width:74px!important;height:74px!important}.member-profile-hero>.member-profile-photo-disclosure{grid-column:1/-1;width:100%}.member-profile-hero>.member-profile-photo-disclosure>summary{width:100%}.member-profile-hero>.member-profile-photo-disclosure[open]>summary{width:100%;margin:0}.member-profile-hero .member-profile-photo-form{grid-template-columns:1fr}.member-profile-hero .member-profile-photo-form button{width:100%!important}}.member-profile-hero .member-profile-summary-photo,.member-profile-hero .member-profile-summary-photo img{overflow:hidden;border-radius:50%!important}.member-profile-qr{border-top:1px solid var(--line);gap:.65rem;padding-top:1rem;display:grid}.member-profile-qr>img{background:#fff;border-radius:18px;width:100%;height:auto;padding:.35rem}.member-home-welcome{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:1.4rem;padding:1.1rem 1.2rem;display:grid;box-shadow:0 8px 26px #183f520d}.member-home-welcome>div{gap:.12rem;display:grid}.member-home-welcome h1{margin:0;font-size:1.35rem;font-weight:950}.member-home-welcome small,.member-home-welcome span{color:var(--muted)}.member-home-welcome .student-avatar{border-radius:50%}.member-home-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.member-home-summary .card{text-align:center;background:linear-gradient(#fff,#f5fafb)}@media (max-width:650px){.member-home-welcome{grid-template-columns:auto minmax(0,1fr)}.member-home-welcome>.button{grid-column:1/-1;width:100%}.member-home-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.member-portal .member-records{grid-template-columns:1fr}.meeting-review-member{border-top:1px solid var(--line);grid-column:1/-1;margin-top:.35rem;padding-top:.65rem}.meeting-review-toggle{color:#795400;background:#fff8e7;border:1px solid #efd18d;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:.7rem .85rem;display:flex}.meeting-review-toggle>span{align-items:center;gap:.5rem;display:flex}.review-add-star{color:#fff;background:#f2b52d;border-radius:50%;place-items:center;width:27px;height:27px;font-size:1rem;display:grid}.meeting-review-form{background:#fbfdfd;border:1px solid #dce9ec;border-radius:14px;gap:.8rem;margin-top:.7rem;padding:.85rem;display:grid}.meeting-review-form fieldset{gap:.4rem;display:grid}.meeting-review-form legend{font-size:.82rem;font-weight:900}.star-rating{gap:.2rem;display:flex}.star-rating label{cursor:pointer}.star-rating input{opacity:0;pointer-events:none;position:absolute}.star-rating span{color:#cbd5d9;font-size:2rem;line-height:1;transition:all .15s;display:block}.star-rating span.active{color:#f4b52f;text-shadow:0 2px 7px #d4942433}.star-rating label:hover span{transform:scale(1.12)}.review-anonymous{background:#f4f7f8;border-radius:10px;align-items:center;gap:.55rem;padding:.65rem;display:flex!important}.review-anonymous input{width:18px;height:18px}.review-stars-inline{color:#e8a91f;letter-spacing:.05em;white-space:nowrap}.meeting-reviews-admin{margin-bottom:1.25rem}.meeting-reviews-admin .section-heading{align-items:center}.review-average{align-items:baseline;gap:.25rem;display:flex}.review-average strong{color:var(--brand-dark);font-size:2rem}.review-average>span{color:#e8a91f;font-size:1.3rem}.review-average small{color:var(--muted);margin-inline-start:.25rem}.review-distribution{gap:.4rem;max-width:460px;margin-bottom:1rem;display:grid}.review-distribution>div{grid-template-columns:42px minmax(100px,1fr) 28px;align-items:center;gap:.6rem;font-size:.76rem;display:grid}.review-distribution i{background:#e8eef0;border-radius:999px;height:8px;overflow:hidden}.review-distribution i b{border-radius:inherit;background:#f0b52f;height:100%;display:block}.review-admin-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.review-admin-list article{border:1px solid var(--line);background:#f9fbfb;border-radius:14px;padding:.85rem}.review-admin-list article>div{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.review-admin-list article p{white-space:pre-wrap;margin-top:.55rem;line-height:1.7}.review-admin-list article small{color:var(--muted);margin-top:.5rem;display:block}@media (max-width:700px){.review-admin-list{grid-template-columns:1fr}.meeting-reviews-admin .section-heading{flex-direction:row}}.member-public-reviews{border-top:1px solid var(--line);grid-column:1/-1;margin-top:.45rem;padding-top:.65rem}.member-public-reviews>summary{cursor:pointer;color:var(--ink);background:#fff8e9;border-radius:11px;justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.member-public-reviews>summary small{color:var(--muted)}.member-public-reviews>div{gap:.5rem;margin-top:.6rem;display:grid}.member-public-reviews article{background:#fbfdfd;border:1px solid #e4ebed;border-radius:12px;padding:.7rem}.member-public-reviews article>div{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.member-public-reviews article p{white-space:pre-wrap;margin-top:.45rem;line-height:1.7}.member-public-reviews article>small{color:var(--muted);margin-top:.4rem;display:block}.member-home-latest-review{background:linear-gradient(135deg,#fffdf8,#fff8e8);border-color:#f0d9a7;margin-bottom:1.35rem;padding:1rem 1.1rem}.member-home-latest-review>div:first-child{gap:.12rem;display:grid}.member-home-latest-review h2{margin:0;font-size:1.05rem;font-weight:950}.member-home-latest-review>div>small{color:var(--muted)}.member-home-latest-review .meeting-review-member{border-color:#ecdcb7;margin-top:.75rem}.member-review-unavailable{color:#765f2e;background:#fffaf0;border:1px solid #e4d8bc;border-radius:12px;margin-top:.75rem;padding:.75rem .85rem;font-size:.78rem;line-height:1.65}.birthday-person-kind.servant{color:#176b58!important;background:#e6f5ef!important}.birthday-person-kind.student{color:#176783!important;background:#e8f2f8!important}.member-home-content{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);align-items:start;gap:1rem;display:grid}.member-home-content>.member-home-news,.member-home-content>.member-home-side,.member-home-content>.member-monthly-birthdays,.member-home-content>.member-spiritual-health-card{grid-column:1/-1;width:100%}.member-home-news{padding:1rem}.member-home-news .member-announcement-post{min-height:104px;box-shadow:none}.member-home-news .member-announcement-thumb{min-height:82px}.member-home-side{gap:1rem;display:grid}.member-home-side .member-home-latest-review{margin:0}.member-home-trips{padding:1rem}.member-home-trips .member-trip-home-list{grid-template-columns:1fr;gap:0}.member-home-trips .member-trip-home-list>a{border-bottom:1px solid var(--line);border-radius:0;padding:.75rem 0}.member-home-trips .member-trip-home-list>a:first-child{padding-top:.15rem}.member-home-trips .member-trip-home-list>a:last-child{border-bottom:0;padding-bottom:.15rem}.member-home-trips .member-trip-home-list>a:hover{border-radius:10px;padding-inline:.5rem}.member-home-empty{color:var(--muted);padding:.7rem 0;font-size:.82rem}.member-home-content .member-section-heading{margin-bottom:.8rem}@media (max-width:820px){.member-home-content{grid-template-columns:1fr}.member-home-news .member-announcement-post{grid-template-columns:95px minmax(0,1fr)}.member-home-news .member-announcement-thumb{width:95px}}@media (max-width:440px){.member-home-news .member-announcement-post{grid-template-columns:72px minmax(0,1fr)}.member-home-news .member-announcement-thumb{width:72px}}.member-home-trips{background:linear-gradient(145deg,#fff7e6,#fffdf7);border-color:#efd5a1;box-shadow:0 9px 25px #9d6b2013}.member-home-trips .member-section-heading h2{color:#7a4d12}.member-home-trips .member-section-heading>a{color:#a46617}.member-home-trips .member-trip-home-list>a{color:#513d25;border-bottom-color:#ecd9b5}.member-home-trips .member-home-empty,.member-home-trips .member-no-trips,.member-home-trips .member-trip-home-list>a>span{color:#7b6a53}.member-home-trips .member-trip-home-list>a:hover{color:#513d25;background:#fff1d4;border-color:#e3c486}.member-trip-acceptance-list{gap:.65rem;margin-bottom:1rem;display:grid}.member-trip-acceptance{color:#155c4b;background:linear-gradient(135deg,#e8faf2,#f7fffb);border:1px solid #9fd8c2;border-radius:16px;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex;box-shadow:0 7px 20px #176c6512}.member-trip-acceptance>span{color:#11624d;background:#bfead8;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:1.1rem;font-weight:950;display:grid}.member-trip-acceptance>div{flex:1;gap:.08rem;min-width:0;display:grid}.member-trip-acceptance small{color:#27806a;font-size:.67rem;font-weight:950}.member-trip-acceptance strong{text-overflow:ellipsis;white-space:nowrap;color:#124e41;font-size:.92rem;overflow:hidden}.member-trip-acceptance p{color:#527269;font-size:.72rem}.member-trip-acceptance p b{color:#12624e}.member-trip-acceptance>i{color:#27806a;font-size:1.5rem;font-style:normal}@media (max-width:520px){.member-trip-acceptance{padding:.75rem .8rem}.member-trip-acceptance strong{white-space:normal;line-height:1.45}.member-trip-acceptance p{line-height:1.55}}.member-attendance-title{margin-bottom:.8rem}.member-attendance-title h1{margin:.1rem 0}.member-attendance-overview{grid-template-columns:170px minmax(0,1fr);align-items:stretch;margin-bottom:1.35rem;padding:0;display:grid;overflow:hidden}.member-attendance-rate{background:linear-gradient(135deg,var(--brand),#176c65);place-content:center;padding:1.15rem}.member-attendance-rate span{color:#ffffffd9;margin-top:.35rem}.member-attendance-numbers{grid-template-columns:repeat(4,1fr);align-items:center;display:grid}.member-attendance-numbers>div{text-align:center;border-inline-start:1px solid var(--line);gap:.2rem;padding:.9rem .5rem;display:grid}.member-attendance-numbers strong{color:var(--brand-dark);font-size:1.15rem}.member-attendance-numbers span{color:var(--muted);font-size:.7rem}.member-records-heading{justify-content:space-between;align-items:center;margin-bottom:.65rem;display:flex}.member-records-heading h2{font-size:1.05rem;font-weight:950}.member-records-heading span{color:var(--muted);font-size:.75rem}.member-record-row{box-shadow:none;padding:.9rem 1rem!important}.member-record-main{justify-content:space-between;align-items:center;gap:1rem;display:flex}.member-record-main>div:first-child{gap:.2rem;display:grid}.member-record-main h2{margin:0;font-size:.98rem;font-weight:950}.member-record-main>div:first-child span{color:var(--muted);font-size:.74rem}.member-record-status{white-space:nowrap;align-items:center;gap:.65rem;display:flex}.member-record-status time{color:var(--muted);font-size:.73rem}.member-record-row .meeting-review-member,.member-record-row .member-public-reviews{margin-top:.7rem}@media (max-width:650px){.member-attendance-overview{grid-template-columns:1fr}.member-attendance-rate{padding:1rem}.member-attendance-numbers{grid-template-columns:repeat(2,1fr)}.member-attendance-numbers>div{border-top:1px solid var(--line)}.member-record-main{align-items:flex-start}.member-record-status{justify-items:end;gap:.35rem;display:grid}}.reviews-toggle-label{align-items:center;gap:.35rem;display:inline-flex}.reviews-toggle-label .when-open{display:none}.reviews-toggle-label i{font-size:1rem;font-style:normal;line-height:1;transition:transform .18s}.member-public-reviews[open] .reviews-toggle-label .when-closed{display:none}.member-public-reviews[open] .reviews-toggle-label .when-open{display:inline}.member-public-reviews[open] .reviews-toggle-label i{transform:rotate(180deg)}.meeting-review-toggle{color:var(--brand-dark);background:#edf7fa;border-color:#b9dce6}.meeting-review-toggle small{color:#527483}.review-add-star{background:var(--brand)}.member-public-reviews>summary{background:#f2f7f8}.member-public-reviews>summary b{color:var(--brand-dark)}.member-home-latest-review{background:linear-gradient(135deg,#fff,#eef8fa);border-color:#c9e2e9}.member-home-latest-review .meeting-review-member{border-color:#d5e7eb}.member-attendance-page{--attendance-accent:#176c65;gap:0;display:grid}.member-attendance-page .member-attendance-title{border-bottom:1px solid #dfe7e9;padding:.25rem 0 1rem}.member-attendance-page .member-attendance-title .eyebrow{color:var(--attendance-accent)}.member-attendance-page .member-attendance-title p{font-size:.82rem}.member-attendance-page .member-attendance-overview{box-shadow:none;background:#fff;border:1px solid #dfe7e9;border-radius:16px;margin:1rem 0 1.5rem}.member-attendance-page .member-attendance-rate{color:var(--ink);background:#fff;border-inline-end:1px solid #dfe7e9}.member-attendance-page .member-attendance-rate strong{color:var(--attendance-accent);font-size:2rem}.member-attendance-page .member-attendance-rate span{color:var(--muted)}.member-attendance-page .member-attendance-numbers>div{border-color:#e5ebed}.member-attendance-page .member-attendance-numbers strong{color:var(--ink)}.member-attendance-page .member-record-row{background:#fff;border:1px solid #dfe7e9;border-radius:14px}.member-attendance-page .member-record-row:hover{border-color:#aacbd0;box-shadow:0 5px 15px #173d500b}.member-attendance-page .member-record-main h2{font-size:.95rem}.member-attendance-page .member-public-reviews{border-top:1px solid #e6ecee}.member-attendance-page .member-public-reviews>summary{background:0 0;border-radius:0;padding:.55rem 0}.member-attendance-page .member-public-reviews>summary b{color:var(--ink)}.member-attendance-page .member-public-reviews>div{border:1px solid #e3eaec;border-radius:12px;gap:0;overflow:hidden}.member-attendance-page .member-public-reviews article{background:#fff;border:0;border-bottom:1px solid #e7edef;border-radius:0}.member-attendance-page .member-public-reviews article:last-child{border-bottom:0}.member-attendance-page .meeting-review-toggle{color:var(--attendance-accent);background:0 0;border:0;border-radius:0;padding:.65rem 0}.member-attendance-page .meeting-review-toggle:hover{box-shadow:none;transform:none;background:0 0!important}.member-attendance-page .meeting-review-toggle small{color:var(--muted)}.member-attendance-page .review-add-star{background:var(--attendance-accent);width:25px;height:25px}.member-attendance-page .meeting-review-form{box-shadow:none;background:#f8fbfb;border:1px solid #dce6e8}.member-attendance-page .reviews-toggle-label{color:var(--attendance-accent)}@media (max-width:650px){.member-attendance-page .member-attendance-rate{border-inline-end:0;border-bottom:1px solid #dfe7e9}.member-attendance-page .member-record-row{padding:.8rem!important}.member-attendance-page .member-record-main{gap:.6rem}.member-attendance-page .member-record-status time{font-size:.68rem}}.member-attendance-page .member-records{gap:1.15rem}.member-attendance-page .member-record-row{border:1px solid #cfdcdf;box-shadow:0 6px 18px #173d500d;padding:1.05rem 1.15rem!important}.member-attendance-page .member-record-row:hover{border-color:#83b4bd;transform:translateY(-1px);box-shadow:0 9px 24px #173d5017}@media (max-width:650px){.member-attendance-page .member-records{gap:.9rem}.member-attendance-page .member-record-row{padding:.9rem!important}}.member-attendance-page .member-record-row>.meeting-review-member{min-width:0;width:100%!important;max-width:none!important;display:block!important}.member-attendance-page .meeting-review-form,.member-attendance-page .meeting-review-toggle{min-width:0;display:grid;width:100%!important;max-width:none!important}.member-attendance-page .meeting-review-toggle{grid-template-columns:minmax(0,1fr) auto}.member-attendance-page .meeting-review-form>*{min-width:0}.meeting-time-notice{border:1px solid;border-radius:13px;align-items:center;gap:.65rem;margin-bottom:1rem;padding:.8rem 1rem;display:flex}.meeting-time-notice strong{font-weight:950}.meeting-time-notice span{font-size:.82rem}.meeting-time-notice.ended{color:#8f382f;background:#fff1ef;border-color:#efc6c0}.meeting-time-notice.not_started{color:#a64b00;background:#fff0df;border-color:#f2c38f}.meeting-ended-badge{color:#68777d!important;background:#edf0f1!important;border:1px solid #d5dfe2!important}@media (max-width:600px){.meeting-time-notice{gap:.2rem;display:grid}}.meeting-time-field{gap:.35rem;display:grid}.meeting-time-field legend{font-size:.8rem;font-weight:850}.meeting-time-field>div{grid-template-columns:minmax(64px,.7fr) auto minmax(64px,.7fr) minmax(92px,1fr);align-items:center;gap:.35rem;display:grid}.meeting-time-field select{width:100%;min-width:0}.meeting-time-field>div>span{text-align:center;font-weight:950}.date-time-12-field{border:1px solid var(--line);background:#f8fbfb;border-radius:13px;gap:.7rem;padding:.75rem;display:grid}.date-time-12-field>label{gap:.35rem;display:grid}@media (max-width:520px){.meeting-time-field>div{grid-template-columns:1fr auto 1fr}.meeting-time-field>div select:last-child{grid-column:1/-1}}.member-home-content{grid-template-columns:1fr}.member-home-news{grid-column:1/-1;width:100%}.member-home-news .member-announcements-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.member-home-side{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}@media (max-width:760px){.member-home-news .member-announcements-feed,.member-home-side{grid-template-columns:1fr}}.member-birthday-greeting{background:linear-gradient(125deg,#fff9e8,#fff1d6 52%,#eef8f5);border:1px solid #efcf91;border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1.15rem 1.3rem;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 30px #a66b1514}.member-birthday-greeting:after,.member-birthday-greeting:before{content:"";background:#f2b84b18;border-radius:50%;width:90px;height:90px;position:absolute}.member-birthday-greeting:before{top:-48px;right:20%}.member-birthday-greeting:after{bottom:-55px;left:14%}.member-birthday-greeting>div{z-index:1;position:relative}.member-birthday-greeting>div>span{color:#a46018;font-size:.78rem;font-weight:950}.member-birthday-greeting h2{color:#7d4711;margin:.18rem 0;font-size:1.25rem}.member-birthday-greeting p{color:#6d604f;margin:0;font-size:.84rem;line-height:1.7}.member-birthday-cake,.member-birthday-confetti{z-index:1;background:#fff9;border-radius:17px;place-items:center;width:54px;height:54px;font-size:1.65rem;display:grid;position:relative}.member-birthday-cake{background:#fff}@media (max-width:600px){.member-birthday-greeting{grid-template-columns:44px minmax(0,1fr);gap:.75rem;padding:.9rem}.member-birthday-confetti{width:44px;height:44px;font-size:1.35rem}.member-birthday-cake{display:none}.member-birthday-greeting h2{font-size:1.08rem}.member-birthday-greeting p{font-size:.78rem;line-height:1.6}}.meetings-list .meeting-list-title-line .meeting-ended-badge{color:#fff!important;background:#d95b4f!important;border:1px solid #d95b4f!important}.member-attendance-page .member-record-main h2{align-items:center;gap:.5rem;display:flex}.member-attendance-page .member-meeting-state.ended{color:#fff;background:#d95b4f;border:1px solid #d95b4f}.member-attendance-page .member-meeting-state.live{color:#0f704f;background:#dcf7e9;border:1px solid #a9dfc7}.member-attendance-page .member-meeting-countdown,.member-attendance-page .member-meeting-state.upcoming{color:#a64b00;background:#fff0df;border:1px solid #f2c38f}.member-attendance-page .member-record-status{justify-items:end;gap:.4rem;display:grid}.member-attendance-page .member-record-badges{justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.member-attendance-page .member-check-in-time{color:var(--muted);font-size:.73rem;line-height:1.4;display:block}@media (max-width:650px){.member-attendance-page .member-record-badges{flex-wrap:wrap}.member-attendance-page .member-check-in-time{font-size:.68rem}}.member-attendance-page .member-record-main>div:first-child{min-width:0}.member-attendance-page .member-record-main h2{white-space:normal;text-overflow:clip;line-height:1.55;overflow:visible}.member-attendance-page .member-record-main>div:first-child>span{white-space:normal;line-height:1.55}.member-attendance-page .meeting-not_started{background:linear-gradient(145deg,#fffdf7,#fff9e9);border-color:#e8c982}@media (max-width:650px){.member-attendance-page .member-record-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.55rem .7rem;display:grid}.member-attendance-page .member-record-status{grid-area:1/2;align-self:start}.member-attendance-page .member-record-badges{justify-content:flex-start}.member-attendance-page .member-record-main h2{align-items:flex-start;font-size:.9rem;line-height:1.6}.member-attendance-page .member-record-main>div:first-child>span{margin-top:.15rem;display:block}.member-attendance-page .member-meeting-hours{margin-top:.12rem;display:block}.member-attendance-page .member-meeting-countdown{margin-top:.75rem;padding:.7rem;line-height:1.6}}.member-meeting-hours{font-weight:850;color:var(--ink)!important;font-size:.72rem!important}.member-meeting-state{border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.69rem;font-weight:950;display:inline-flex}.member-meeting-state.ended{color:#66777d;background:#edf0f1}.member-meeting-state.upcoming{color:var(--brand-dark);background:#eaf4f7}.member-meeting-state.live{color:#126a4f;background:#e1f7ed}.member-meeting-state.live i{background:#20a875;border-radius:50%;width:8px;height:8px;animation:meeting-live-pulse 1.4s infinite;box-shadow:0 0 0 4px #bfead8}.member-meeting-countdown{color:var(--brand-dark);background:#f2f7f8;border-radius:10px;margin-top:.65rem;padding:.55rem .7rem;font-size:.76rem;font-weight:850}.meeting-countdown-content{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.meeting-countdown-content>i{background:#df7315;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 2px 6px #a64b0033}.meeting-countdown-content.is-soon>i{animation:meeting-countdown-pulse 2.4s ease-in-out infinite}.meeting-countdown-content.is-imminent>i{background:#d6533f;animation:meeting-countdown-pulse 1.55s ease-in-out infinite}@keyframes meeting-live-pulse{50%{box-shadow:0 0 0 7px #bfead800}}@keyframes meeting-countdown-pulse{50%{opacity:.48;transform:scale(1.35);box-shadow:0 3px 9px #a64b0024}}@media (max-width:650px){.member-record-status{white-space:normal}.member-meeting-countdown{text-align:center}}.trip-scan-page{width:min(820px,100%);margin:0 auto}.trip-scan-heading{margin-bottom:1rem}.trip-scan-summary{border:1px solid var(--line);box-shadow:none;grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:0;margin-bottom:1rem;padding:0;display:grid;overflow:hidden}.trip-scan-summary>div{border-inline-start:1px solid var(--line);gap:.25rem;padding:.85rem 1rem;display:grid}.trip-scan-summary>div:first-child{border-inline-start:0}.trip-scan-summary span{color:var(--muted);font-size:.7rem}.trip-scan-summary strong{font-size:.85rem}.trip-scanner-shell{width:min(620px,100%);margin:0 auto}.trip-scanner-shell .scanner-stage{border-radius:22px;min-height:min(58vh,520px)}.trip-scanner-shell .scanner-stage #trip-reader{width:100%;height:100%}.trip-scanner-shell .scanner-stage video{height:min(58vh,520px)!important}.trip-scanner-shell .scanner-stage #trip-reader__dashboard,.trip-scanner-shell .scanner-stage #trip-reader__scan_region img{display:none!important}.trip-scanner-shell .scan-member-result{border:1px solid var(--line);box-shadow:none;margin:0;padding:1.15rem}.trip-scanner-shell .scan-member-result h2{margin:.1rem 0}.trip-scan-actions{grid-template-columns:1fr;gap:.65rem;display:grid}.trip-scan-actions .qr-scanner-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}@media (max-width:700px){.trip-scan-summary{grid-template-columns:repeat(2,1fr)}.trip-scan-summary>div:nth-child(3){border-inline-start:0;border-top:1px solid var(--line)}.trip-scan-summary>div:nth-child(4){border-top:1px solid var(--line)}.trip-scanner-shell .scanner-stage,.trip-scanner-shell .scanner-stage video{height:48vh!important;min-height:48vh!important}}@media (max-width:430px){.trip-scan-summary{grid-template-columns:1fr}.trip-scan-summary>div{border-inline-start:0;border-top:1px solid var(--line)}.trip-scan-summary>div:first-child{border-top:0}}.payment-auto-time{color:var(--muted);background:#f3f7f8;border-radius:11px;margin:0;padding:.65rem .8rem;font-size:.75rem;line-height:1.6}.member-news-heading-actions{align-items:center;gap:.65rem;display:flex}.member-news-heading-actions>a{color:var(--brand);font-size:.76rem;font-weight:900}.member-announcements-page{width:100%}.member-announcements-page .member-announcements-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.member-announcements-pagination{text-align:center;grid-template-columns:110px 1fr 110px;align-items:center;gap:.75rem;margin-top:1rem;display:grid}.member-announcements-pagination>span{color:var(--muted);font-size:.78rem;font-weight:850}@media (max-width:760px){.member-announcements-page .member-announcements-feed{grid-template-columns:1fr}.member-news-heading-actions{flex-direction:column;align-items:flex-end}.member-announcements-pagination{grid-template-columns:90px 1fr 90px}}.trip-discount-panel{background:#fffdf8;border-color:#f1cf9f;margin-bottom:1rem}.trip-discount-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.trip-discount-form .alert{grid-column:1/-1;margin:0}.trip-discount-value{background:#fff4e5!important}.trip-discount-inline,.trip-discount-value b,.trip-discount-value strong{color:#a64b00!important}.trip-discount-inline{font-weight:850}@media (max-width:600px){.trip-discount-form{grid-template-columns:1fr}.trip-discount-form .alert{grid-column:auto}}.trip-waiting-modal{width:min(540px,100%);position:relative}.trip-waiting-choice-actions{grid-template-columns:1fr 1fr;gap:.65rem;width:100%;display:grid}.trip-waiting-choice-actions button,.trip-waiting-choice-actions form{width:100%}.trip-waiting-swap-form{text-align:right;gap:.8rem;width:100%;display:grid}.trip-waiting-swap-form>p{text-align:center}.trip-waiting-modal>.quick-modal-close{position:absolute;top:.8rem;left:.8rem}@media (max-width:560px){.trip-waiting-choice-actions{grid-template-columns:1fr}}#participants .attendee-card>span[dir=ltr],#waiting .attendee-card>span[dir=ltr]{text-align:right;width:100%}.trip-dashboard .meeting-stat{box-shadow:none;border:1px solid #0000}.trip-dashboard .meeting-stat:nth-child(8n+1){background:#edf8f4;border-color:#c5e7d9}.trip-dashboard .meeting-stat:nth-child(8n+1) strong{color:#14715e}.trip-dashboard .meeting-stat:nth-child(8n+2){background:#fff5e8;border-color:#f0d5ad}.trip-dashboard .meeting-stat:nth-child(8n+2) strong{color:#a85b13}.trip-dashboard .meeting-stat:nth-child(8n+3){background:#f4effc;border-color:#dcd0ef}.trip-dashboard .meeting-stat:nth-child(8n+3) strong{color:#6f4ba0}.trip-dashboard .meeting-stat:nth-child(8n+4){background:#edf5fb;border-color:#c9deed}.trip-dashboard .meeting-stat:nth-child(8n+4) strong{color:#246b96}.trip-dashboard .meeting-stat:nth-child(8n+5){background:#fff0f0;border-color:#efcece}.trip-dashboard .meeting-stat:nth-child(8n+5) strong{color:#a64545}.trip-dashboard .meeting-stat:nth-child(8n+6){background:#fff9df;border-color:#ebdda0}.trip-dashboard .meeting-stat:nth-child(8n+6) strong{color:#876b08}.trip-dashboard .meeting-stat:nth-child(8n+7){background:#eef8f8;border-color:#c8e5e3}.trip-dashboard .meeting-stat:nth-child(8n+7) strong{color:#176c65}.trip-dashboard .meeting-stat:nth-child(8n+8){background:#f5f1ec;border-color:#e1d5c6}.trip-dashboard .meeting-stat:nth-child(8n+8) strong{color:#76583b}.meeting-actions a[href*=report]{color:#6f4ba0;background:#f4effc}.meeting-actions a[href*=export]{color:#14715e;background:#edf8f4}.meeting-actions a[href="?view=add"]{color:#9b591b;background:#fff5e8}#participants>.section-heading{border-bottom:3px solid #c9deed;padding-bottom:.7rem}#waiting{background:#fffdf7;border-color:#efdcad}#waiting>.section-heading{border-bottom:3px solid #efc56f;padding-bottom:.7rem}#waiting .attendee-card{background:#fffaf0;border-color:#edd9ae}.trip-dashboard .meeting-stat:nth-child(n){background:#fff;border-color:#d7e5e9}.trip-dashboard .meeting-stat:nth-child(2n){background:#f1f8fa}.trip-dashboard .meeting-stat:nth-child(n) strong{color:var(--brand-dark)}.trip-member-profile-link{color:var(--ink);text-underline-offset:4px;font-weight:950;-webkit-text-decoration:underline #9bc9d7;text-decoration:underline #9bc9d7;text-decoration-thickness:2px}.trip-member-profile-link:hover{-webkit-text-decoration-color:var(--brand);text-decoration-color:var(--brand);color:var(--brand)!important}.trip-card-title,.trip-title-with-status{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.trip-card-title h2{margin:.25rem 0}.trip-booking-status{border-radius:999px;align-items:center;width:max-content;padding:.3rem .6rem;font-size:.68rem;font-weight:950;line-height:1.35;display:inline-flex}.trip-booking-status.not-open{color:#607078;background:#edf1f2;border:1px solid #d3dde0}.trip-booking-status.booking-open{color:#0f704f;background:#dcf7e9;border:1px solid #a9dfc7}.trip-booking-status.waiting-only{color:#a64b00;background:#fff0df;border:1px solid #f2c38f}.trip-booking-status.booking-closed,.trip-booking-status.trip-ended{color:#a13c32;background:#fde7e5;border:1px solid #efbcb6}.member-trip-home-list .trip-booking-status{margin-top:.25rem}.member-trip .section-heading>div{gap:.25rem;display:grid}@media (max-width:600px){.trip-title-with-status{flex-direction:column;align-items:flex-start}}.trip-reports-section{grid-column:1/-1}.trip-reports-section .section-title{margin:0}.trip-report-list{gap:.7rem;display:grid}.trip-report-row{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:minmax(220px,1.2fr) minmax(360px,2fr) auto;align-items:center;gap:1rem;padding:1rem;display:grid}.trip-report-name{gap:.3rem;display:grid}.trip-report-name>div{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.trip-report-name small{color:var(--muted)}.trip-report-numbers{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.trip-report-numbers span{color:var(--muted);background:#f2f7f8;border-radius:10px;gap:.2rem;padding:.55rem;font-size:.68rem;display:grid}.trip-report-numbers b{color:var(--ink);font-size:.78rem}.trip-report-actions{gap:.4rem;display:flex}.trip-report-actions .button{min-height:40px;padding:.55rem .7rem;font-size:.72rem}@media (max-width:980px){.trip-report-row{grid-template-columns:1fr}.trip-report-actions{justify-content:flex-start}}@media (max-width:600px){.trip-report-numbers{grid-template-columns:repeat(2,1fr)}.trip-report-actions{grid-template-columns:1fr 1fr;display:grid}.trip-report-actions .button{width:100%}}.member-spiritual-page{width:100%}.spiritual-add-card{margin-bottom:1rem}.spiritual-record-form{grid-template-columns:1fr 1fr auto;align-items:end;gap:.75rem;display:grid}.spiritual-record-form .alert{grid-column:1/-1;margin:0}.spiritual-record-columns{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.spiritual-record-list{border:1px solid var(--line);border-radius:16px;padding:1rem}.spiritual-record-list.confession{background:#f2f8fa;border-color:#cde2e8}.spiritual-record-list.communion{background:#fffaf0;border-color:#eeddb7}.spiritual-record-list .section-heading{margin-bottom:.65rem}.spiritual-record-list h2,.spiritual-record-list h3{margin:0;font-size:1rem;font-weight:950}.spiritual-record-list>.section-heading>span{background:#fff;border-radius:10px;place-items:center;min-width:30px;height:30px;font-weight:950;display:grid}.spiritual-record-list>div:last-of-type{grid-template-columns:repeat(2,1fr);gap:.45rem;display:grid}.spiritual-record-list time{text-align:center;background:#fff;border-radius:10px;padding:.6rem;font-size:.78rem;font-weight:850}.spiritual-record-list>p{color:var(--muted);margin:.5rem 0 0;font-size:.8rem}.admin-spiritual-records>.section-heading .section-title{margin:0}@media (max-width:700px){.spiritual-record-columns,.spiritual-record-form{grid-template-columns:1fr}.spiritual-record-form .alert{grid-column:auto}}.meeting-actions a[href=\#participants],.meeting-actions a[href=\#waiting]{display:none}body,html{overflow-x:hidden}body,html,img,svg,video{max-width:100%}.admin-main,.member-main{min-width:0}.mobile-nav{display:none}@media (max-width:767px){html{scroll-padding-bottom:92px}body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}main,main .card,main :is(.form-grid,.filter-grid,.student-filter-grid,.meeting-filters,.report-filters,.audit-filters,.date-filter,.meeting-edit,.trip-payment-summary,.trip-dashboard,.stat-row)>*,main [class*=grid],main [class*=list],main article,main aside,main fieldset,main form,main input,main label,main section,main select,main textarea{min-width:0;max-width:100%}main .heading-actions>*,main .page-heading>*,main .section-heading>*{min-width:0}main :is(h1,h2,h3,p,strong,span,a){overflow-wrap:anywhere}.button,button,input,select,textarea{min-height:48px;font-size:16px}textarea{line-height:1.65}.admin-main{width:100%;padding:.85rem .75rem 1.5rem!important}.member-main{width:100%;padding:1rem .75rem calc(1.5rem + env(safe-area-inset-bottom))}.admin-header-inner{gap:.55rem;min-height:62px;padding:.55rem .75rem!important}.brand-link{gap:.45rem;min-width:0}.brand-link .brand-logo{width:38px!important;height:38px!important}.brand-link .brand-name{white-space:normal;font-size:.65rem}.header-account button{min-height:40px;padding:.45rem .65rem;font-size:.75rem}.mobile-nav{min-height:64px;padding:.4rem .35rem calc(.4rem + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;box-shadow:0 -8px 28px #173d5018;display:grid!important}.mobile-nav a{background:#fff;border:1px solid #dce8eb;border-radius:11px;justify-content:center;align-items:center;min-width:0;min-height:46px;line-height:1.25;display:flex;color:#40565f!important;padding:.35rem .15rem!important;font-size:.75rem!important}.mobile-nav a:active{background:#ddecf1;transform:scale(.97);color:var(--brand-dark)!important}.page-heading{gap:.75rem;margin-bottom:1rem}.branded-title h1,.page-heading h1{font-size:1.45rem}.page-heading p{font-size:.82rem;line-height:1.65}.heading-actions{grid-template-columns:1fr;width:100%}.heading-actions>*{width:100%}.card{border-radius:16px;padding:.9rem}.section-title{font-size:1.05rem}.section-heading{flex-wrap:wrap;align-items:flex-start;gap:.65rem}.audit-filters,.filter-grid,.form-grid,.meeting-edit,.meeting-filters,.report-filters,.student-filter-grid{gap:.75rem}.filter-grid button,.form-grid button,.meeting-filters button,.report-filters button,.student-filter-grid button{width:100%}.dashboard-stats,.stat-row,.trip-dashboard{gap:.55rem;grid-template-columns:repeat(2,minmax(0,1fr))!important}.meeting-stat,.stat-row div{padding:.75rem}.meeting-stat strong,.stat-row strong{font-size:1.35rem}.student-card{grid-template-columns:76px minmax(0,1fr);gap:.7rem;padding:.8rem}.student-card .avatar{border-radius:17px;width:76px!important;height:76px!important}.student-card>.badge,.student-card>.student-card-actions{grid-column:1/-1}.student-info small,.student-info span{white-space:normal;overflow-wrap:anywhere}.quick-student-modal-actions,.student-card-actions{width:100%}.meeting-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.meeting-actions .button{width:100%;padding:.65rem .35rem;font-size:.82rem}.attendee-card,.meeting-list-item,.meeting-person-card{min-width:0}.meeting-list-item{padding:.85rem}.meeting-list-meta,.meeting-list-stats{flex-wrap:wrap}.meeting-person-card{grid-template-columns:minmax(0,1fr)}.meeting-person-card>time{justify-self:start}.meeting-person-card button,.meeting-person-card form{width:100%}.table td{overflow-wrap:anywhere}.table td:before{color:var(--muted);font-weight:900}.payment-history.balances>div,.payment-history.report>div,.payment-history>div{grid-template-columns:1fr!important;gap:.3rem!important;padding:.8rem!important}.payment-history>div>*{overflow-wrap:anywhere;min-width:0}.meetings-pagination{gap:.5rem}.meetings-pagination a{min-width:44px;min-height:44px}.quick-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;max-width:100%;padding-bottom:0;overflow:visible;display:grid!important}.quick-filters a{text-align:center;white-space:normal;justify-content:center;align-items:center;min-height:44px;display:flex}.profile-grid{gap:.8rem}.profile-grid .qr-panel{order:0}.profile-grid>.qr-panel+form,.profile-grid>.qr-panel+section{order:1}.member-data-grid{grid-template-columns:1fr}.member-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.member-contact>div{align-items:flex-start}.member-announcement-post{min-width:0}.member-profile-qr{justify-items:center}.member-profile-qr>img{width:min(270px,100%)}.member-contact .button{min-height:46px;font-size:.8rem}.member-public-reviews>summary{min-height:46px}.member-profile-photo-form button,.member-profile-qr .button{min-height:50px}.site-confirm-backdrop{align-items:end;padding:.65rem}.quick-student-modal,.site-confirm-modal{border-radius:22px 22px 14px 14px;width:100%;max-height:88dvh;padding:1rem;overflow-y:auto}.site-confirm-actions{grid-template-columns:1fr 1fr}.site-confirm-actions button{min-height:50px}.announcement-admin-actions button,.compact-button,.meeting-cancel-attendance,.meeting-list-actions .compact-button,.trip-report-actions .button{min-height:44px!important}.meeting-filter-line select,.meetings-create button,.meetings-period-filter select,.student-actions a,.student-actions button{min-height:46px!important}.meeting-detail-edit>summary,.meetings-create-disclosure>summary,.member-payment-history>summary,.refund-panel>summary,.scanner-create-meeting>summary{align-items:center;width:100%;min-height:46px;padding:.55rem .25rem;display:flex}.system-user-toggle{min-height:46px}.system-user-delete{width:46px;height:46px;min-height:46px}.attendance-chart-scroll{scroll-snap-type:x proximity;margin-inline:-.9rem;padding-inline:.9rem}.attendance-chart-column{scroll-snap-align:start}}.member-monthly-birthdays .dashboard-birthday-person{cursor:default}.member-monthly-birthdays .dashboard-birthday-person:hover{text-decoration:none;transform:none}.member-contact-form{gap:1rem;max-width:760px;margin-bottom:1rem;display:grid}.account-deletion-card textarea,.member-contact-form textarea{resize:vertical}.member-message-history{gap:1rem;display:grid}.member-message-history>div{gap:.75rem;display:grid}.member-message-history article{border-top:1px solid var(--line);gap:.45rem;padding:.85rem 0;display:grid}.member-message-history article:first-child{border-top:0}.member-message-history article>div{justify-content:space-between;align-items:center;gap:1rem;display:flex}.member-message-history p{white-space:pre-wrap;color:#3e5058}.member-message-history small{color:var(--muted)}.member-account-privacy{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.account-deletion-card h2,.member-account-privacy h2{font-size:1.15rem;font-weight:950}.member-account-privacy p{color:var(--muted);margin-top:.25rem}.account-deletion-card{gap:1rem;max-width:760px;display:grid}.account-deletion-card ul{color:#4d5f67;gap:.45rem;padding-right:1.4rem;list-style:outside;display:grid}.account-deletion-card form,.admin-contact-list,.admin-deletion-list{gap:1rem;display:grid}.admin-contact-message,.admin-deletion-request{gap:.85rem;display:grid}.admin-contact-message header,.admin-deletion-request header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-contact-message header h2,.admin-deletion-request header h2{font-size:1.15rem;font-weight:950}.admin-contact-message>p,.admin-deletion-request>p{white-space:pre-wrap;background:#f5f9fa;border-radius:14px;padding:1rem}.admin-contact-message footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.6rem;font-size:.78rem;display:flex}.admin-contact-message form{justify-self:end}.deletion-request-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:.75rem;padding-top:.85rem;display:grid}.deletion-request-actions form{gap:.5rem;display:grid}.admin-deletion-request>footer{color:var(--muted);font-size:.78rem}@media (max-width:650px){.member-account-privacy{flex-direction:column;align-items:stretch}.member-account-privacy .button{width:100%}.deletion-request-actions{grid-template-columns:1fr}.admin-contact-message header,.admin-deletion-request header{flex-direction:column;align-items:stretch}.admin-contact-message form{justify-self:stretch}.admin-contact-message form button{width:100%}}.contact-replies{background:#eef8fb;border:1px solid #cfe5ec;border-radius:14px;gap:.6rem;padding:1rem;display:grid}.contact-replies h3{color:var(--primary);font-size:.95rem;font-weight:950}.contact-replies article{background:#fff;border:0;border-radius:12px;gap:.35rem;padding:.75rem;display:grid}.contact-replies article>div{justify-content:space-between;gap:1rem;display:flex}.contact-replies p{white-space:pre-wrap;margin:0}.contact-replies small{color:var(--muted)}.contact-reply-form{border-top:1px solid var(--line);gap:.6rem;width:100%;padding-top:.85rem;display:grid}.contact-reply-form label{font-weight:900}.contact-reply-form textarea{resize:vertical;width:100%}.contact-reply-form button{justify-self:start}.member-contact-replies{margin-top:.4rem}.member-message-history .member-contact-replies article{border:0;padding:.75rem}.admin-contact-message .contact-reply-form{justify-self:stretch}@media (max-width:650px){.contact-reply-form button{width:100%}}.member-spiritual-health-card{gap:1rem;margin-bottom:1.25rem;display:grid}.spiritual-health{grid-template-columns:minmax(150px,210px) 1fr;align-items:center;gap:1.5rem;display:grid}.spiritual-cross-visual{text-align:center;place-items:center;gap:.2rem;display:grid}.spiritual-cross-visual svg{filter:drop-shadow(0 8px 14px #167b8d22);width:92px;height:122px}.spiritual-cross-empty{fill:#edf3f4}.spiritual-cross-fill{fill:#2b94b1;transition:clip-path .5s}.spiritual-cross-outline{fill:none;stroke:#176f84;stroke-width:4px;stroke-linejoin:round}.spiritual-cross-visual>strong{color:var(--brand-dark);font-size:1.35rem}.spiritual-cross-visual>span{color:var(--muted);font-size:.76rem;font-weight:900}.spiritual-health-details{gap:.8rem;display:grid}.spiritual-health-details>div{grid-template-columns:1fr auto;align-items:center;gap:.35rem .8rem;display:grid}.spiritual-health-details span{font-size:.82rem;font-weight:850}.spiritual-health-details strong{color:var(--brand-dark);font-size:.78rem}.spiritual-health-details i{background:#e7eff1;border-radius:999px;grid-column:1/-1;height:8px;display:block;overflow:hidden}.spiritual-health-details i b{border-radius:inherit;background:linear-gradient(90deg,#32a8bd,#176f84);height:100%;display:block}.spiritual-health-details>small{color:var(--muted);line-height:1.7}.admin-spiritual-overview{grid-template-columns:minmax(260px,.7fr) 2fr;align-items:start;gap:1.25rem;display:grid}.spiritual-health.compact{border:1px solid var(--line);background:#f8fbfb;border-radius:16px;grid-template-columns:100px 1fr;padding:1rem}.spiritual-health.compact .spiritual-cross-visual svg{width:68px;height:90px}.admin-spiritual-overview .spiritual-record-columns{margin:0}@media (max-width:800px){.admin-spiritual-overview{grid-template-columns:1fr}}@media (max-width:560px){.spiritual-health,.spiritual-health.compact{grid-template-columns:1fr}.spiritual-cross-visual svg{width:76px;height:101px}}.dashboard-birthdays{margin-bottom:1rem}.dashboard-birthdays-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.dashboard-birthdays-heading .section-title{margin:0}.dashboard-birthdays-heading>span{color:#a65d12;white-space:nowrap;background:#fff1df;border-radius:999px;padding:.38rem .7rem;font-size:.74rem;font-weight:950}.dashboard-birthday-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.dashboard-birthday-person{color:var(--ink);background:#f9fbfb;border:1px solid #e2eaec;border-radius:15px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.7rem;display:grid}.dashboard-birthday-person:hover{background:#eef7f8;border-color:#b9d8de;transform:translateY(-1px)}.dashboard-birthday-person .avatar{border-radius:15px;width:54px!important;height:54px!important}.dashboard-birthday-person>span{gap:.15rem;min-width:0;display:grid}.dashboard-birthday-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.dashboard-birthday-person small{color:var(--muted);font-size:.72rem}.dashboard-birthday-person>b{color:#9c5914;white-space:nowrap;background:#fff1df;border-radius:9px;padding:.3rem .5rem;font-size:.7rem}.dashboard-birthdays-empty{color:var(--muted);text-align:center;background:#f7fafb;border-radius:13px;padding:1rem;font-size:.82rem}@media (max-width:1050px){.dashboard-birthday-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-primary-actions .button{min-width:190px;min-height:52px}.dashboard-primary-actions .button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.dashboard-primary-actions .button span{font-weight:950}@media (max-width:767px){.dashboard-birthdays{padding:.85rem}.dashboard-birthdays-heading{margin-bottom:.65rem}.dashboard-birthday-list{grid-template-columns:1fr;gap:.5rem}.dashboard-birthday-person{grid-template-columns:48px minmax(0,1fr) auto;padding:.6rem}.dashboard-birthday-person .avatar{width:48px!important;height:48px!important}.dashboard-birthday-person strong{font-size:.86rem}.dashboard-birthday-person>b{font-size:.68rem}.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.6rem!important;margin-bottom:1rem!important;display:grid!important}.dashboard-stat-grid .meeting-stat{align-content:center;min-height:82px;padding:.7rem!important}.dashboard-stat-grid .meeting-stat span{font-size:.82rem}.dashboard-stat-grid .meeting-stat strong{font-size:1.55rem}.admin-main>.page-context-header+.page-heading .heading-actions,.admin-main>.page-heading:first-child .heading-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.admin-main>.page-context-header+.page-heading .heading-actions .button,.admin-main>.page-heading:first-child .heading-actions .button{white-space:normal;text-align:center;min-width:0;padding:.65rem .4rem;font-size:.82rem}.admin-main>.page-context-header+.page-heading,.admin-main>.page-heading:first-child{margin-bottom:.8rem}.dashboard-primary-actions .button{line-height:1.3;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:.4rem!important;min-height:82px!important;padding:.7rem .35rem!important;font-size:.92rem!important;display:flex!important}.dashboard-primary-actions .button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:27px!important;height:27px!important}.dashboard-primary-actions .button span{font-weight:950}.attendance-chart-card{padding:.85rem}.attendance-chart-heading{margin-bottom:.65rem}.attendance-chart-heading .section-title{font-size:1.05rem;line-height:1.45}.attendance-chart-heading p{font-size:.8rem;line-height:1.55}.attendance-chart-scroll{margin:0;padding:0;overflow:hidden}.attendance-chart{grid-template-columns:30px minmax(0,1fr);width:100%;min-width:0;height:235px}.attendance-chart-bars{grid-template-columns:repeat(12,minmax(0,1fr));gap:.22rem;padding:0 .15rem}.attendance-chart-column{grid-template-rows:1fr 27px;gap:.15rem;min-width:0}.attendance-chart-column>strong{display:none}.attendance-chart-track{gap:2px}.attendance-chart-track>span{width:min(9px,42%)}.attendance-chart-column>small{font-size:.65rem}.attendance-chart-guides{font-size:.68rem}}@media (max-width:380px){.admin-main>.page-context-header+.page-heading .heading-actions,.admin-main>.page-heading:first-child .heading-actions{grid-template-columns:1fr}.attendance-chart-column>small,.attendance-chart-column>strong{font-size:.53rem}}.admin-more-backdrop{display:none}@media (max-width:767px){.admin-mobile-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #d8e5e9;border-radius:20px 20px 0 0;width:100%;box-shadow:0 -10px 30px #173d5017;z-index:40!important;padding:.45rem .55rem calc(.45rem + env(safe-area-inset-bottom))!important;background:#fffffff7!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;position:fixed!important;inset:auto 0 0!important}.admin-mobile-nav a,.admin-mobile-nav>button{box-shadow:none;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-weight:950;line-height:1.1;display:flex;position:relative;color:#52656d!important;background:0 0!important;border:0!important;border-radius:12px!important;min-height:58px!important;padding:.3rem .2rem!important;font-size:.72rem!important}.admin-mobile-nav svg{flex:none;width:22px;height:22px}.admin-mobile-nav span{display:block}.admin-mobile-nav>button{color:#52656d!important;box-shadow:none!important;background:0 0!important}.admin-mobile-nav a+a:after,.admin-mobile-nav>button:after{content:"";inset-inline-start:0;background:#dce7ea;width:1px;position:absolute;top:13px;bottom:13px}.admin-mobile-nav a.active,.admin-mobile-nav>button.active{color:#fff!important;background:#287ba1!important;box-shadow:0 5px 14px #287ba127!important}.admin-mobile-nav>button.active span,.admin-mobile-nav>button.active svg{color:#fff!important}@media (hover:hover){.admin-mobile-nav>button:hover{color:#fff!important;background:#287ba1!important;box-shadow:0 5px 14px #287ba127!important}}.admin-mobile-nav a.active+a:after,.admin-mobile-nav a.active:after,.admin-mobile-nav>button.active:after{opacity:0}.admin-more-backdrop{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);direction:ltr;background:#102c3c73;justify-content:flex-start;padding:0;display:flex;position:fixed;inset:0}.admin-more-menu{width:min(84vw,350px);height:100dvh;max-height:none;padding:1.1rem .9rem calc(1.1rem + env(safe-area-inset-bottom));direction:rtl;background:#fff;border:0;border-right:1px solid #d7e5e9;border-radius:0 24px 24px 0;animation:admin-drawer-in .2s ease-out;overflow-y:auto;box-shadow:18px 0 55px #102c3c38}@keyframes admin-drawer-in{0%{transform:translate(-105%)}to{transform:translate(0)}}.admin-more-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.2rem .15rem .8rem;display:flex}.admin-more-heading>div{gap:.15rem;display:grid}.admin-more-heading small{color:var(--brand);font-size:.72rem;font-weight:900}.admin-more-heading strong{font-size:1.12rem}.admin-more-heading button{width:42px;height:42px;min-height:42px;color:var(--brand-dark);background:#edf4f6;padding:0;font-size:1.4rem}.admin-more-links{grid-template-columns:1fr;gap:.55rem;padding-top:.75rem;display:grid}.admin-more-group{background:#fff;border:1px solid #dce8eb;border-radius:14px;overflow:hidden}.admin-more-group>summary{cursor:pointer;color:#205f79;justify-content:space-between;align-items:center;min-height:52px;padding:.7rem .85rem;font-size:.88rem;font-weight:950;list-style:none;display:flex}.admin-more-group>summary::-webkit-details-marker{display:none}.admin-more-group>summary:after{content:"⌄";color:#287ba1;background:#edf5f7;border-radius:9px;place-items:center;width:28px;height:28px;font-size:1rem;transition:transform .18s;display:grid}.admin-more-group[open]>summary{background:#f1f8fa;border-bottom:1px solid #dce8eb}.admin-more-group[open]>summary:after{transform:rotate(180deg)}.admin-more-group>a{min-height:60px;color:var(--ink);background:#f8fbfb;border:1px solid #e0eaed;border-radius:12px;align-content:center;gap:.12rem;margin:.45rem;padding:.6rem .75rem;display:grid}.admin-more-group>a:active,.admin-more-group>a:hover{color:var(--brand-dark);background:#e8f3f6}.admin-more-links strong{font-size:.92rem}.admin-more-links span{color:var(--muted);font-size:.76rem;line-height:1.4}}@media (max-width:360px){.admin-more-links{gap:.45rem}.admin-more-links>a{min-height:72px;padding:.6rem}.admin-more-links strong{font-size:.88rem}.admin-more-links span{font-size:.76rem}}@media (max-width:699px){.member-portal .member-nav{padding:.35rem .45rem calc(.35rem + env(safe-area-inset-bottom));background:#fffffff7;border:0;border-top:1px solid #d8e5e9;border-radius:18px 18px 0 0;gap:0;overflow:visible;box-shadow:0 -10px 30px #173d5017}.member-portal .member-nav a{color:#596970;background:0 0;border:0;border-radius:10px;min-height:54px;padding:.35rem .18rem;line-height:1.3;position:relative}.member-portal .member-nav a+a:after{content:"";inset-inline-start:0;background:#dce7ea;width:1px;position:absolute;top:12px;bottom:12px}.member-portal .member-nav a span{font-size:.66rem;font-weight:900}.member-portal .member-nav a.active{color:#176783;box-shadow:none;background:#e7f3f6}.member-portal .member-nav a.active:before{content:"";background:var(--brand);border-radius:0 0 5px 5px;height:3px;position:absolute;top:-.35rem;left:22%;right:22%}.member-portal .member-nav a.active+a:after,.member-portal .member-nav a.active:after{opacity:0}.member-portal .member-nav a:active{transform:scale(.97)}}@media (max-width:767px){.student-card{grid-template-columns:100px minmax(0,1fr);padding:.75rem}.student-card .avatar{width:100px!important;height:100px!important}.student-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding-top:.6rem}.student-actions .remove{grid-column:auto}.student-actions>.edit,.student-actions>button{line-height:1.35;padding:.45rem .25rem!important;font-size:.8rem!important}.student-info>a{font-size:1rem}.student-contact,.student-info small,.student-info span{font-size:.82rem!important}.follow-up-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.follow-up-filters .button,.follow-up-filters button{min-height:48px}.follow-up-table tr{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.15rem .35rem;padding:.55rem}.follow-up-table td{padding:.3rem!important}.follow-up-table td:nth-child(3){text-align:right;grid-column:1/-1}.follow-up-table td:nth-child(4),.follow-up-table td:nth-child(5){font-size:.82rem}.follow-up-student{width:100%;min-width:0}.follow-up-student strong{font-size:.9rem}.follow-up-table .follow-up-student img{width:42px!important;height:42px!important}.meeting-choice span,.meeting-list-info span,.page-heading p,.stack-list span,.trip-card p{font-size:.82rem;line-height:1.55}.eyebrow{font-size:.82rem}.section-title{font-size:1.08rem}.meeting-list-info a{font-size:1.02rem}.member-page-title h1{font-size:1.55rem}.member-check-in-time,.member-meeting-hours,.member-page-title p,.member-record-main>div:first-child span,.spiritual-record-list time{font-size:.82rem!important}.member-dashboard-section{margin-bottom:1rem}.member-home-welcome{margin-bottom:1rem;padding:.9rem}.member-home-summary .card{padding:.8rem}.member-attendance-page .member-attendance-overview{margin:.8rem 0 1rem}.member-records-heading{margin-bottom:.5rem}.member-attendance-page .member-records{gap:.75rem}.member-attendance-page .member-record-row{padding:.8rem!important}.member-trip-list{gap:.65rem}.trip-card{gap:.7rem}.trip-card-stats{gap:.4rem}.trip-card-stats span{padding:.55rem .65rem}}@media (max-width:390px){.follow-up-filters{grid-template-columns:1fr 1fr}.member-portal .member-nav a,.member-portal .member-nav-more-button{font-size:.8rem}.student-actions>.edit,.student-actions>button{font-size:.76rem!important}}.member-desktop-navigation,.member-more-backdrop,.member-nav-more-button{display:none}@media (min-width:700px){.member-nav{display:none!important}.member-desktop-navigation{z-index:18;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #d8e6ea;border-radius:18px;grid-template-columns:repeat(5,minmax(0,1fr));width:min(900px,100% - 2rem);margin:1rem auto 0;padding:.45rem;display:grid;position:sticky;top:72px;box-shadow:0 8px 28px #173d5012}.member-desktop-navigation>a,.member-nav-dropdown>button{color:#315d6d;min-height:48px;font:inherit;box-shadow:none;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:.3rem;padding:.65rem;font-size:.88rem;font-weight:950;display:flex}.member-desktop-navigation>a.active,.member-desktop-navigation>a:hover,.member-nav-dropdown:focus-within>button,.member-nav-dropdown:hover>button{color:#fff!important;background:#287ba1!important}.member-nav-dropdown{display:flex;position:relative}.member-nav-dropdown>button{cursor:pointer;width:100%}.member-nav-dropdown>div{z-index:35;background:#fff;border:1px solid #d9e6eb;border-radius:14px;min-width:210px;padding:.45rem;display:none;position:absolute;top:100%;right:0;box-shadow:0 14px 35px #173f5350}.member-nav-dropdown:focus-within>div,.member-nav-dropdown:hover>div{display:grid}.member-nav-dropdown>div:before{content:"";height:10px;position:absolute;top:-10px;left:0;right:0}.member-nav-dropdown>div>a{color:#244858;white-space:nowrap;border-radius:10px;padding:.7rem .8rem;font-size:.82rem;font-weight:900}.member-nav-dropdown>div>a:hover{color:#176783;background:#e8f3f6}}@media (max-width:699px){.member-portal .member-nav{padding:.45rem .55rem calc(.45rem + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;grid-template-columns:repeat(4,minmax(0,1fr))}.member-portal .member-nav .member-nav-more{display:none}.member-portal .member-nav a,.member-portal .member-nav-more-button{color:#52656d;min-height:58px;box-shadow:none;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-size:.72rem;font-weight:950;line-height:1.1;display:flex}.member-portal .member-nav svg{flex:none;width:22px;height:22px}.member-portal .member-nav-more-button{padding:.3rem .2rem;color:#52656d!important;box-shadow:none!important;background:0 0!important}.member-portal .member-nav a+a:after,.member-portal .member-nav-more-button:after{content:"";inset-inline-start:0;background:#dce7ea;width:1px;position:absolute;top:13px;bottom:13px}.member-portal .member-nav-more-button{position:relative}.member-portal .member-nav a.active,.member-portal .member-nav-more-button.active{color:#fff!important;background:#287ba1!important;box-shadow:0 5px 14px #287ba127!important}.member-portal .member-nav-more-button.active span,.member-portal .member-nav-more-button.active svg{color:#fff!important}@media (hover:hover){.member-portal .member-nav-more-button:hover{color:#fff!important;background:#287ba1!important;box-shadow:0 5px 14px #287ba127!important}}.member-portal .member-nav a.active:before{display:none}.member-portal .member-nav a.active+a:after,.member-portal .member-nav a.active:after,.member-portal .member-nav-more-button.active:after{opacity:0}.member-more-backdrop{z-index:100;pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);direction:ltr;background:#102c3c73;justify-content:flex-start;padding:0;position:fixed;inset:0;display:flex!important}.member-more-menu{width:min(84vw,350px);height:100dvh;padding:1.1rem .9rem calc(1.1rem + env(safe-area-inset-bottom));direction:rtl;background:#fff;border:0;border-right:1px solid #d7e5e9;border-radius:0 24px 24px 0;align-content:start;gap:.45rem;animation:admin-drawer-in .2s ease-out;display:grid;overflow-y:auto;box-shadow:18px 0 55px #102c3c38}.member-more-menu>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.2rem .15rem .8rem;display:flex}.member-more-menu>div>span{gap:.15rem;display:grid}.member-more-menu>div small{color:var(--brand);font-size:.72rem;font-weight:900}.member-more-menu>div strong{font-size:1.12rem}.member-more-menu>div button{width:42px;height:42px;min-height:42px;color:var(--brand-dark);background:#edf4f6;padding:0;font-size:1.35rem}.member-more-menu>a{min-height:62px;color:var(--ink);background:#f8fbfb;border:1px solid #e1eaed;border-radius:14px;gap:.15rem;padding:.75rem .85rem;display:grid}.member-more-menu>a strong{font-size:1rem}.member-more-menu>a span{color:var(--muted);font-size:.82rem}.member-more-group{background:#fff;border:1px solid #dce8eb;border-radius:14px;overflow:hidden}.member-more-group>summary{cursor:pointer;color:#205f79;justify-content:space-between;align-items:center;min-height:52px;padding:.7rem .85rem;font-size:.88rem;font-weight:950;list-style:none;display:flex}.member-more-group>summary::-webkit-details-marker{display:none}.member-more-group>summary:after{content:"⌄";color:#287ba1;background:#edf5f7;border-radius:9px;place-items:center;width:28px;height:28px;transition:transform .18s;display:grid}.member-more-group[open]>summary{background:#f1f8fa;border-bottom:1px solid #dce8eb}.member-more-group[open]>summary:after{transform:rotate(180deg)}.member-more-group>a{min-height:60px;color:var(--ink);background:#f8fbfb;border:1px solid #e1eaed;border-radius:12px;gap:.15rem;margin:.45rem;padding:.6rem .75rem;display:grid}.member-more-group>a strong{font-size:.92rem}.member-more-group>a span{color:var(--muted);font-size:.76rem}}@media (max-width:430px){.dashboard-stats,.stat-row,.trip-dashboard{grid-template-columns:1fr 1fr!important}.meeting-actions,.site-confirm-actions{grid-template-columns:1fr}.member-header-title{display:none}.member-header{grid-template-columns:1fr auto}.member-header>form{grid-column:2}.member-announcements-pagination{grid-template-columns:1fr 1fr}.member-announcements-pagination>span{grid-area:1/1/auto/-1}.member-announcements-pagination>a{grid-row:2}.trip-scan-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-scan-summary>div{border-top:0}.trip-scan-summary>div:nth-child(n+3){border-top:1px solid var(--line)}.trip-scan-summary>div:nth-child(odd){border-inline-start:0}}.member-announcements-page .member-announcement-post:not(.has-image),.member-home-news .member-announcement-post:not(.has-image){grid-template-columns:minmax(0,1fr)!important}@media (max-width:440px){.member-announcements-page .member-announcement-post:not(.has-image),.member-home-news .member-announcement-post:not(.has-image){padding:.85rem;grid-template-columns:minmax(0,1fr)!important}.member-home-news .member-section-heading{flex-direction:row;justify-content:space-between;align-items:end;gap:.65rem;display:flex}.member-home-news .member-news-heading-actions{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:.3rem;display:flex}.member-home-news .member-unread-count{margin:0}}.member-trip{gap:1rem;padding:1.1rem;display:grid}.member-trip-header{border-bottom:1px solid var(--line);gap:.35rem;padding-bottom:.85rem;display:grid}.member-trip-header .eyebrow{margin:0}.member-trip-header h2{margin:0;line-height:1.45}.member-trip-statuses{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.member-trip-statuses .badge,.member-trip-statuses .trip-booking-status{width:max-content;margin:0}.member-trip .trip-payment-summary{gap:.5rem}.member-trip .trip-payment-summary>div{background:#f7fafb;border:1px solid #e3ecee;align-content:center;min-height:68px}.member-trip .trip-payment-summary strong{font-size:.94rem}.member-trip .trip-paid{background:#edf8f4!important;border-color:#c8e7da!important}.member-trip .trip-paid strong{color:#116c55;font-size:1.08rem}.member-trip .trip-remaining{background:#fff6e8!important;border-color:#efd9b5!important}.member-trip .trip-remaining strong{color:#995711;font-size:1.08rem}.member-trip .trip-payment-state{grid-column:1/-1;justify-content:space-between;align-items:center!important;min-height:54px!important;display:flex!important}.member-trip .member-payment-history{margin-top:0;padding-top:.75rem}.member-trip .cancelled-notice,.member-trip .trip-member-note,.member-trip .waiting-notice{margin:0}.member-trip-booking-action{background:#f0f9fc;border:1px solid #b9dce7;border-radius:14px;gap:.75rem;padding:1rem;display:grid}.member-trip-booking-action>p:first-child{color:#315d6d;font-size:.82rem;line-height:1.8}.member-trip-booking-action .alert{margin:0}@media (max-width:520px){.member-page-title{margin-bottom:.8rem}.member-page-title h1{margin:.1rem 0}.member-qr-cta{border-radius:14px;margin:.75rem 0 1rem;padding:.85rem;font-size:.95rem}.member-trip-list{gap:.8rem}.member-trip{border-radius:18px;padding:.9rem}.member-trip-header{gap:.28rem;padding-bottom:.7rem}.member-trip-header h2{font-size:1.08rem}.member-trip-statuses{gap:.35rem}.member-trip-statuses .badge,.member-trip-statuses .trip-booking-status{font-size:.66rem}.member-trip .trip-payment-summary>div{min-height:62px;padding:.6rem}.member-trip .trip-payment-summary span{font-size:.68rem}.member-trip .trip-payment-summary strong{font-size:.86rem}.member-trip .trip-paid strong,.member-trip .trip-remaining strong{font-size:.96rem}}.member-trip .trip-remaining{grid-column:1/-1;justify-content:space-between;align-items:center!important;min-height:54px!important;display:flex!important}.student-attendance-report{display:block}.student-attendance-report>.date-filter,.student-attendance-report>.heading-actions,.student-attendance-report>.quick-filters,.student-attendance-report>.report-brand,.student-attendance-report>.student-attendance-list,.student-attendance-report>.student-attendance-stats{width:auto;max-width:100%;margin:0 0 1rem!important}.student-attendance-report>.student-attendance-list{margin-bottom:0!important}.student-attendance-list{gap:.6rem}.student-attendance-row{box-shadow:none;border-color:#dde7e9}@media (max-width:767px){.student-attendance-report{padding:.85rem}.student-attendance-report .report-brand{border-bottom:1px solid var(--line);padding-bottom:.7rem}.student-attendance-report .report-brand img{width:42px!important;height:42px!important}.student-attendance-report .report-brand p{font-size:.74rem}.student-attendance-report .date-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.55rem}.student-attendance-report .date-filter input,.student-attendance-report .date-filter label{min-width:0;max-width:100%}.student-attendance-report .date-filter button{grid-column:1/-1;width:auto}.student-attendance-stats>div:last-child{grid-column:1/-1}.student-attendance-report>.heading-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.student-attendance-report>.heading-actions .button{width:100%;min-height:46px;padding:.55rem;font-size:.78rem}.student-attendance-list{gap:.5rem;grid-template-columns:1fr!important;display:grid!important}.student-attendance-row{border-radius:14px!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:.35rem .7rem!important;min-height:0!important;padding:.7rem .75rem!important;display:grid!important}.student-attendance-row>div{display:contents!important}.student-attendance-row strong{grid-area:1/1;min-width:0;font-size:.88rem;line-height:1.45}.student-attendance-row .badge{grid-area:1/2;justify-content:center;width:max-content;min-width:62px;padding:.25rem .55rem;font-size:.7rem}.student-attendance-row>span{color:var(--muted);font-size:.72rem!important}.student-attendance-row>span:first-of-type{grid-area:2/1}.student-attendance-row>span:nth-of-type(2){text-align:left;white-space:nowrap;grid-area:2/2}.meeting-scan-page,.trip-scan-page{width:100%;margin:0}.scanner-page-heading,.trip-scan-heading{text-align:right!important;margin-bottom:.65rem!important}.scanner-page-heading h1,.trip-scan-heading h1{margin:.15rem 0;font-size:1.35rem}.scanner-page-heading p,.trip-scan-heading p{margin:.25rem 0;font-size:.82rem;line-height:1.55}.scanner-shell{gap:.65rem}.scanner-stage,.trip-scanner-shell .scanner-stage{border-radius:18px}.scanner-stage,.scanner-stage video,.trip-scanner-shell .scanner-stage,.trip-scanner-shell .scanner-stage video{height:clamp(300px,48dvh,430px)!important;min-height:clamp(300px,48dvh,430px)!important}.scan-frame{border-radius:22px;width:min(68vw,270px)}.scanner-help{text-align:center;background:#eef5f6;border-radius:12px;min-height:42px;padding:.55rem .7rem;font-size:.76rem;line-height:1.45}.scanner-shell>.button,.scanner-shell>button,.trip-scan-actions .button,.trip-scan-actions button{min-height:52px;font-size:.9rem}.scan-result{inset:auto .65rem calc(76px + env(safe-area-inset-bottom));border-radius:18px;padding:1rem}.scan-result strong{font-size:1rem}.scan-result b{font-size:1.35rem}.trip-scan-summary{margin-bottom:.65rem}.trip-scan-summary>div{padding:.65rem .7rem}.trip-scanner-shell .scan-member-result{max-height:none;padding:.9rem}.scan-money{grid-template-columns:repeat(2,minmax(0,1fr))!important}.trip-scan-actions{bottom:calc(70px + env(safe-area-inset-bottom));z-index:12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8faf9e8;border-radius:15px;padding:.5rem;position:sticky}.meeting-scan-page>.card{margin-top:1rem!important}body{padding-bottom:0!important}}.member-home-hero{background:#fff;border:1px solid #cfe1e4;border-radius:26px;margin-bottom:1rem;position:relative;overflow:hidden;box-shadow:0 12px 34px #173f5315}.member-home-cover{background:#dcebea;height:220px;position:relative;overflow:hidden}.member-home-brand-cover{color:#fff;background:radial-gradient(circle at 18% 30%,#ffffff26 0 90px,#0000 91px),linear-gradient(120deg,#104e51,#207b73 62%,#b44649);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.3rem 2rem;display:flex}.member-home-brand-cover:before{content:"";background-image:linear-gradient(45deg,#ffffff08 25%,#0000 25% 75%,#ffffff08 75%);background-size:28px 28px;position:absolute;inset:0}.member-home-brand-cover:after{content:"";background:linear-gradient(#0000,#092e3652);height:52%;position:absolute;inset:auto 0 0}.member-home-brand-cover>img{z-index:1;object-fit:cover;border:4px solid #ffffffd9;border-radius:50%;flex:none;width:150px;height:150px;position:relative;box-shadow:0 12px 30px #082c3c66}.member-home-cover-copy{z-index:1;text-shadow:0 2px 12px #092f3c70;gap:.12rem;display:grid;position:relative}.member-home-cover-copy small{color:#d9f3ee;font-size:.72rem;font-weight:850}.member-home-cover-copy strong{font-size:clamp(1.35rem,3vw,2rem);line-height:1.35}.member-home-cover-copy span{color:#fff;font-size:1rem;font-weight:850}.member-home-hero-profile{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:100px;padding:0 1.2rem 1rem;display:grid;position:relative}.member-home-hero-profile>.avatar{background:#e7f1f2;border:5px solid #fff;margin-top:-42px;box-shadow:0 8px 24px #163f502d;border-radius:50%!important;width:96px!important;height:96px!important}.member-home-hero-profile>.avatar img{border-radius:50%!important}.member-home-hero-profile>div{gap:.1rem;min-width:0;padding-top:.7rem;display:grid}.member-home-hero-profile>div>span{color:var(--brand);font-size:.72rem;font-weight:950}.member-home-hero-profile h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.35rem;overflow:hidden}.member-home-hero-profile small{color:var(--muted);font-size:.72rem}.member-home-hero-profile small b{color:var(--brand-dark)}.member-home-change-photo{color:var(--brand-dark);white-space:nowrap;background:#f5fafb;border:1px solid #bcd8de;border-radius:12px;padding:.55rem .75rem;font-size:.75rem;font-weight:950}.member-home-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.member-home-quick-grid>a{min-width:0;min-height:126px;color:var(--ink);text-align:center;background:#fff;border:1px solid #d9e7e9;border-radius:19px;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;padding:.85rem;display:flex;box-shadow:0 5px 18px #173f5309}.member-home-quick-grid>a>span{color:#13766d;background:linear-gradient(145deg,#e4f6f1,#d7eeef);border-radius:18px;flex:none;place-items:center;width:56px;height:56px;display:grid}.member-home-quick-grid>a:nth-child(2)>span{color:#a75d13;background:linear-gradient(145deg,#fff1df,#ffe1b8)}.member-home-quick-grid>a:nth-child(3)>span{color:#4166a5;background:linear-gradient(145deg,#e9efff,#dce6ff)}.member-home-quick-grid>a:nth-child(4)>span{color:#7353a3;background:linear-gradient(145deg,#f0eaff,#e4dcfa)}.member-home-quick-grid>a:nth-child(5)>span{color:#a64c4c;background:linear-gradient(145deg,#fff0f0,#f8dada)}.member-home-quick-grid>a:nth-child(6)>span{color:#3f72a8;background:linear-gradient(145deg,#e8f4ff,#d8eaff)}.member-home-quick-grid>a>div{gap:.1rem;min-width:0;display:grid}.member-home-quick-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.member-home-quick-grid small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.66rem;overflow:hidden}@media (hover:hover){.member-home-quick-grid>a:hover{background:#f7fcfb;border-color:#a8d1d5;transform:translateY(-2px)}.member-home-change-photo:hover{color:var(--brand-dark);background:#e6f3f4}}.member-next-meeting{color:var(--ink);background:linear-gradient(110deg,#f7fcfd,#edf8f7);border:1px solid #c6e0e5;border-radius:16px;align-items:center;gap:.75rem;margin:0 auto 1rem;padding:.8rem .9rem;display:flex;box-shadow:0 7px 22px #183f520c}.member-next-meeting:hover{color:var(--ink);border-color:#8fc6ce}.member-next-meeting-icon{background:#dff1f3;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:1.05rem;display:grid}.member-next-meeting>span:nth-child(2){flex:1;gap:.08rem;min-width:0;display:grid}.member-next-meeting small{color:var(--brand);font-size:.7rem;font-weight:950}.member-next-meeting strong{text-overflow:clip;white-space:normal;font-size:.94rem;line-height:1.5;overflow:visible}.member-next-meeting b{color:var(--muted);font-size:.7rem;font-weight:800}.member-next-meeting>i{color:var(--brand);font-size:1.5rem;font-style:normal}.member-home-profile-link{color:var(--brand-dark);white-space:nowrap;background:#edf6f7;border-radius:11px;justify-content:center;align-items:center;gap:.25rem;padding:.5rem .65rem;font-size:.73rem;font-weight:950;display:inline-flex}.member-home-profile-link:hover{color:var(--brand-dark);background:#dfeff2}.member-home-profile-link>span{color:inherit;font-size:1.1rem;line-height:1}@media (max-width:699px){.member-home-hero{border-radius:22px;margin-inline:-.15rem}.member-home-cover{height:150px}.member-home-brand-cover{gap:.75rem;padding:.8rem 1rem}.member-home-brand-cover>img{border-width:3px;width:104px;height:104px}.member-home-cover-copy small{font-size:.62rem}.member-home-cover-copy strong{font-size:1.08rem}.member-home-cover-copy span{font-size:.78rem}.member-home-hero-profile{grid-template-columns:auto minmax(0,1fr);gap:.75rem;min-height:105px;padding:0 .85rem .8rem}.member-home-hero-profile>.avatar{border-width:4px;margin-top:-34px;width:82px!important;height:82px!important}.member-home-hero-profile>div{padding-top:.55rem}.member-home-hero-profile h1{font-size:1.08rem}.member-home-change-photo{text-align:center;grid-column:1/-1;width:100%;margin-top:-.1rem;padding:.55rem}.member-home-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.member-home-quick-grid>a{min-height:100px;box-shadow:none;border-radius:17px;gap:.5rem;padding:.7rem}.member-home-quick-grid>a>span{border-radius:16px;width:52px;height:52px}.member-home-quick-grid svg{width:28px;height:28px}.member-home-quick-grid strong{font-size:.82rem}.member-home-welcome{border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;margin-bottom:.8rem;padding:.7rem .8rem;box-shadow:0 5px 18px #183f520a}.member-home-welcome .student-avatar{width:56px!important;height:56px!important}.member-home-welcome>div{gap:.05rem}.member-home-welcome>div>span{font-size:.7rem}.member-home-welcome h1{font-size:1.03rem;line-height:1.35}.member-home-welcome small{background:#edf5f6;border-radius:999px;width:max-content;margin-top:.15rem;padding:.15rem .45rem;font-size:.65rem;font-weight:850}.member-home-profile-link{padding:.45rem .55rem;font-size:.68rem}.member-dashboard-section{margin-bottom:.8rem}.member-dashboard-section>.member-section-heading{flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-bottom:.55rem}.member-dashboard-section>.member-section-heading>div{text-align:right;display:block}.member-dashboard-section>.member-section-heading .eyebrow{display:none}.member-dashboard-section>.member-section-heading h2{margin:0;font-size:1rem}.member-dashboard-section>.member-section-heading>a{margin-inline-start:auto;font-size:.72rem}.member-home-summary{gap:.45rem}.member-home-summary .card{min-height:62px;box-shadow:none;border-radius:14px;padding:.55rem .45rem!important}.member-home-summary .card span{font-size:.65rem}.member-home-summary .card strong{font-size:1.12rem}.member-home-content{gap:.75rem}.member-home-content>.card,.member-home-side>.card{border-radius:18px}.member-home-latest-review,.member-home-news,.member-home-trips,.member-monthly-birthdays,.member-spiritual-health-card{padding:.85rem!important}.member-home-content .member-section-heading{margin-bottom:.6rem}.dashboard-birthdays-heading h2,.member-home-content .member-section-heading h2{font-size:1rem!important}.member-home-side{display:contents}.member-home-news{order:1}.member-home-trips{order:2}.member-monthly-birthdays{order:3}.member-spiritual-health-card{order:4}.member-home-latest-review{order:5}.member-home-news .member-announcements-feed{gap:.5rem}.member-home-news .member-announcements-feed form:nth-child(n+4){display:none}.member-home-news .member-announcement-post{border-radius:14px;min-height:88px;padding:.55rem}.member-home-news .member-announcement-copy>strong{font-size:.86rem}.member-home-news .member-announcement-copy>span:last-child{-webkit-line-clamp:1;font-size:.7rem}.member-home-news .member-announcement-thumb{border-radius:10px;min-height:74px}.member-home-trips>.member-section-heading{flex-direction:row;justify-content:space-between;align-items:center;width:100%}.member-home-trips>.member-section-heading>div{text-align:right}.member-home-trips>.member-section-heading>a{white-space:nowrap;margin-inline-start:auto;font-size:.72rem}.member-home-trips .member-trip-home-list>a{padding:.6rem 0}.member-home-trips .member-trip-home-list>a:hover{background:0 0;padding-inline:0;transform:none}.member-home-trips .member-trip-home-list>a>div strong{font-size:.86rem}.member-home-trips .member-trip-home-list>a>span{font-size:.7rem}.member-trip-home-meta{justify-content:space-between;align-items:center;gap:.55rem;width:100%;display:flex}.member-trip-home-meta>span:first-child{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-home-trips .member-trip-home-list>a>div>.trip-booking-status,.member-trip-home-meta>.badge{flex:none;margin:0}.dashboard-birthday-list{gap:.45rem}.dashboard-birthday-person{padding:.55rem!important}.dashboard-birthday-person .student-avatar{width:42px!important;height:42px!important}.dashboard-birthday-person strong{font-size:.8rem}.dashboard-birthday-person small{font-size:.65rem}}@media (max-width:899px){body:has(.member-portal) .member-nav{border-radius:20px 20px 0 0!important;width:100%!important;max-width:none!important;left:0!important;right:0!important;transform:none!important}body:has(.member-portal) .app-footer{margin-bottom:calc(5.5rem + env(safe-area-inset-bottom))!important;padding:1rem .75rem!important}}@media (max-width:767px){body:has(.admin-main) .app-footer{margin-bottom:calc(5.5rem + env(safe-area-inset-bottom))!important;padding:1rem .75rem!important}}.member-home-news-heading,.member-home-spiritual-heading{width:100%;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.member-home-news-heading>h2,.member-home-spiritual-heading>h2{margin:0}.member-home-news-heading>.member-news-heading-actions{white-space:nowrap;align-items:center;gap:.5rem;margin-inline-start:auto;display:flex}.member-home-news-heading .member-unread-count{margin:0}.member-home-spiritual-heading>a{white-space:nowrap;margin-inline-start:auto}.member-home-hero-avatar{background:#e7f1f2;aspect-ratio:1!important;border-radius:50%!important;display:block!important;position:relative!important;overflow:hidden!important}.member-home-hero-avatar>img{object-fit:cover!important;object-position:center!important;border-radius:50%!important;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:0!important;display:block!important;position:absolute!important;inset:0!important}.member-attendance-glance-card{background:linear-gradient(125deg,#f4fbf9,#fff);border-color:#cfe2e3;grid-template-columns:minmax(150px,.42fr) minmax(0,1fr);align-items:stretch;gap:0;display:grid;overflow:hidden;box-shadow:0 8px 26px #173f530c;padding:0!important}.member-attendance-rate{color:#fff;text-align:center;background:linear-gradient(145deg,#16786f,#269488);align-content:center;place-items:center;gap:.1rem;min-height:120px;padding:1rem;display:grid}.member-attendance-rate strong{font-size:2.2rem;line-height:1}.member-attendance-rate span{color:#dcf6ef;font-size:.75rem;font-weight:900}.member-attendance-glance-stats{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;display:grid}.member-attendance-glance-stats>div{text-align:center;border-inline-start:1px solid #dce9e9;place-items:center;gap:.25rem;min-height:78px;padding:.75rem;display:grid}.member-attendance-glance-stats>div:first-child{border-inline-start:0}.member-attendance-glance-stats strong{color:var(--brand-dark);font-size:1.25rem}.member-attendance-glance-stats span{color:var(--muted);font-size:.7rem;font-weight:850}@media (max-width:699px){.member-attendance-glance-card{grid-template-columns:1fr}.member-attendance-rate{grid-template-columns:auto auto;gap:.5rem;min-height:88px}.member-attendance-rate strong{font-size:2rem}.member-attendance-rate span{font-size:.78rem}.member-attendance-glance-stats>div{border-top:1px solid #dce9e9;min-height:68px;padding:.55rem .3rem}.member-attendance-glance-stats strong{font-size:1.08rem}.member-attendance-glance-stats span{font-size:.62rem}}.member-home-hero-profile>.member-home-hero-actions{align-items:center;gap:.5rem;padding-top:.7rem;display:flex}.member-home-change-photo,.member-home-profile-button{color:var(--brand-dark);white-space:nowrap;background:#f5fafb;border:1px solid #bcd8de;border-radius:12px;justify-content:center;align-items:center;padding:.55rem .75rem;font-size:.75rem;font-weight:950;display:inline-flex}.member-home-profile-button{color:#fff;background:#18776f;border-color:#18776f}@media (hover:hover){.member-home-profile-button:hover{color:#fff;background:#105f59}}@media (max-width:699px){.member-home-hero-profile>.member-home-hero-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.55rem;width:100%;margin-top:-.1rem;padding-top:0;display:grid}.member-home-hero-actions>.member-home-change-photo,.member-home-hero-actions>.member-home-profile-button{text-align:center;grid-column:auto;width:100%;padding:.55rem}}.admin-home-hero{background:#fff;border:1px solid #cfe1e4;border-radius:26px;margin-bottom:1rem;overflow:hidden;box-shadow:0 12px 34px #173f5315}.admin-home-cover{color:#fff;background:radial-gradient(circle at 18% 30%,#ffffff26 0 90px,#0000 91px),linear-gradient(120deg,#104e51,#207b73 62%,#b44649);justify-content:space-between;align-items:center;gap:1.5rem;height:220px;padding:1.3rem 2rem;display:flex;position:relative;overflow:hidden}.admin-home-cover:before{content:"";background-image:linear-gradient(45deg,#ffffff08 25%,#0000 25% 75%,#ffffff08 75%);background-size:28px 28px;position:absolute;inset:0}.admin-home-cover:after{content:"";background:linear-gradient(#0000,#092e3652);height:52%;position:absolute;inset:auto 0 0}.admin-home-cover>div{z-index:1;text-shadow:0 2px 12px #092f3c70;gap:.12rem;display:grid;position:relative}.admin-home-cover small{color:#d9f3ee;font-size:.72rem;font-weight:850}.admin-home-cover strong{font-size:clamp(1.35rem,3vw,2rem);line-height:1.35}.admin-home-cover span{font-size:1rem;font-weight:850}.admin-home-cover>img{z-index:1;object-fit:cover;border:4px solid #ffffffd9;border-radius:50%;width:150px;height:150px;position:relative;box-shadow:0 12px 30px #082c3c66}.admin-home-identity{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:100px;padding:0 1.2rem 1rem;display:grid}.admin-home-avatar{background:#e7f1f2;border:5px solid #fff;margin-top:-42px;position:relative;overflow:hidden;box-shadow:0 8px 24px #163f502d;border-radius:50%!important;width:96px!important;height:96px!important}.admin-home-avatar>img{object-fit:cover;position:absolute;inset:0;border-radius:50%!important;width:100%!important;height:100%!important}.admin-home-identity>div:nth-child(2){gap:.15rem;min-width:0;padding-top:.7rem;display:grid}.admin-home-identity h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.35rem;overflow:hidden}.admin-home-identity small{color:#176d5d;background:#e4f4ef;border-radius:999px;width:max-content;padding:.25rem .55rem;font-size:.68rem;font-weight:950}.admin-home-account-actions{gap:.5rem;display:flex}.admin-home-account-actions>a{color:var(--brand-dark);white-space:nowrap;background:#f5fafb;border:1px solid #bcd8de;border-radius:12px;justify-content:center;align-items:center;padding:.55rem .75rem;font-size:.75rem;font-weight:950;display:inline-flex}.admin-home-account-actions>a:last-child{color:#fff;background:#18776f;border-color:#18776f}.admin-home-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.admin-home-quick-grid>a{min-height:126px;color:var(--ink);text-align:center;background:#fff;border:1px solid #d9e7e9;border-radius:19px;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;padding:.85rem;display:flex}.admin-home-quick-grid>a>span{color:#13766d;background:#e4f6f1;border-radius:18px;place-items:center;width:56px;height:56px;display:grid}.admin-home-quick-grid>a:nth-child(3n+2)>span{color:#a75d13;background:#fff0da}.admin-home-quick-grid>a:nth-child(3n)>span{color:#4968a7;background:#e7ecff}.admin-home-quick-grid svg{width:29px;height:29px}.admin-home-quick-grid strong{font-size:.84rem;line-height:1.4}@media (hover:hover){.admin-home-quick-grid>a:hover{background:#f7fcfb;border-color:#a8d1d5;transform:translateY(-2px)}}@media (max-width:767px){.admin-home-hero{border-radius:22px;margin-inline:-.15rem}.admin-home-cover{height:150px;padding:.8rem 1rem}.admin-home-cover>img{border-width:3px;width:104px;height:104px}.admin-home-cover small{font-size:.62rem}.admin-home-cover strong{font-size:1.08rem}.admin-home-cover span{font-size:.78rem}.admin-home-identity{grid-template-columns:auto minmax(0,1fr);gap:.75rem;min-height:105px;padding:0 .85rem .8rem}.admin-home-avatar-status{margin-top:-34px}.admin-home-avatar{border-width:4px;margin-top:-34px;width:82px!important;height:82px!important}.admin-home-avatar-status .admin-home-avatar{margin-top:0}.admin-home-identity h1{font-size:1.08rem}.admin-home-account-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;width:100%;display:grid}.admin-home-account-actions>a{width:100%;padding:.55rem}.admin-home-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.admin-home-quick-grid>a{border-radius:17px;min-height:100px;padding:.7rem}.admin-home-quick-grid>a>span{border-radius:16px;width:52px;height:52px}.admin-home-quick-grid svg{width:28px;height:28px}.admin-home-quick-grid strong{font-size:.8rem}.dashboard-stat-grid{margin-top:.2rem}}.site-confirm-actions>button{grid-column:auto!important;place-self:stretch stretch!important;width:100%!important;max-width:none!important;min-height:50px!important;margin:0!important}@media (max-width:430px){.site-confirm-actions{grid-template-columns:1fr!important}.site-confirm-actions>button{min-height:48px!important}}.member-portal{background:linear-gradient(#eef8f5,#f8faf9 32%)}.member-trip-toggle{gap:.8rem;margin-top:.8rem;display:grid}.member-trip-toggle>summary{color:#176783;cursor:pointer;background:#f5fafb;border:1px solid #cfe1e5;border-radius:12px;justify-content:space-between;align-items:center;padding:.65rem .8rem;font-size:.82rem;font-weight:950;list-style:none;display:flex}.member-trip-toggle>summary::-webkit-details-marker{display:none}.member-trip-toggle>summary:after{content:"⌄";font-size:1.1rem;transition:transform .18s}.member-trip-toggle[open]>summary{background:#e9f5f7}.member-trip-toggle[open]>summary:after{transform:rotate(180deg)}.current-meeting-notice{color:#126b58;background:linear-gradient(110deg,#e9fff5,#f5fffb);border:1px solid #8ad9be;border-radius:16px;align-items:center;gap:.8rem;max-width:1100px;margin:0 auto 1rem;padding:.8rem 1rem;display:flex;box-shadow:0 8px 24px #16745c18}.current-meeting-pulse{background:#c9f3df;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.current-meeting-pulse i{background:#17a673;border-radius:50%;width:12px;height:12px;animation:meeting-pulse 1.8s infinite;box-shadow:0 0 0 5px #17a6732b}.current-meeting-notice div{flex:1;gap:.15rem;display:grid}.current-meeting-notice strong{font-size:1rem;font-weight:950}.current-meeting-notice div span{color:#48756c;font-size:.78rem}.current-meeting-notice a{color:#fff;white-space:nowrap;background:#16866e;border-radius:10px;padding:.5rem .75rem;font-size:.75rem;font-weight:900}.current-meeting-notice a:hover{color:#fff;background:#106b59}@keyframes meeting-pulse{50%{opacity:.7;transform:scale(1.18)}}.member-header{z-index:30;background:linear-gradient(110deg,#124d49,#237f70 72%,#3b9b79);gap:1rem;height:auto;min-height:66px;box-shadow:0 5px 20px #123f3b26}.member-header>form{flex:none}.member-header>form button{color:#fff;background:#ffffff1f}.member-header-account{flex:none;justify-self:end;align-items:center;gap:.6rem;display:flex}.member-header-user{align-items:center;gap:.45rem;min-width:0;display:flex}.member-header-user>span{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.82rem;font-weight:900;overflow:hidden}.member-header-user .avatar{border:2px solid #fff9;border-radius:50%;width:34px;height:34px;overflow:hidden}@media (max-width:699px){.member-header-account{gap:.3rem}.member-header-user>span{max-width:92px;font-size:.68rem}.member-header-user .avatar{width:30px;height:30px}.member-header-account form button{padding:.45rem .6rem;font-size:.72rem}}@media (min-width:700px){.member-header{min-height:72px;padding-inline:max(1rem,50vw - 640px)}.member-header>.member-brand-link{flex:none}.member-header .member-desktop-navigation{max-width:720px;box-shadow:none;background:0 0;border:0;flex:1;grid-template-columns:repeat(5,minmax(0,1fr));align-self:center;margin:0;padding:0;display:grid;position:static}.member-header .member-desktop-navigation>a,.member-header .member-nav-dropdown>button{color:#fff;white-space:nowrap;min-height:44px;box-shadow:none;background:0 0;border:0;border-radius:11px;padding:.55rem .65rem;font-size:.84rem}.member-header .member-desktop-navigation>a.active,.member-header .member-desktop-navigation>a:hover,.member-header .member-nav-dropdown:focus-within>button,.member-header .member-nav-dropdown:hover>button,.member-header .member-nav-dropdown>button.active{color:#fff!important;background:#ffffff20!important}.member-header .member-nav-dropdown>div>a:hover{color:#176b5e;background:#e5f5ef}}@media (min-width:700px) and (max-width:767px){.member-header .member-desktop-navigation{display:none!important}.member-portal .member-nav{z-index:40!important;width:100%!important;max-width:none!important;padding:.45rem .55rem calc(.45rem + env(safe-area-inset-bottom))!important;background:#fffffff7!important;border:0!important;border-top:1px solid #d8e5e9!important;border-radius:20px 20px 0 0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;margin:0!important;display:grid!important;position:fixed!important;inset:auto 0 0!important;transform:none!important;box-shadow:0 -10px 30px #173d5017!important}.member-portal .member-nav a,.member-portal .member-nav-more-button{color:#52656d;min-height:58px;box-shadow:none;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-size:.72rem;font-weight:950;line-height:1.1;display:flex}.member-portal .member-nav svg{flex:none;width:22px;height:22px}.member-portal .member-nav-more-button{position:relative;color:#52656d!important;box-shadow:none!important;background:0 0!important;padding:.3rem .2rem!important}.member-portal .member-nav a.active,.member-portal .member-nav-more-button.active{color:#fff!important;background:#287ba1!important;box-shadow:0 5px 14px #287ba127!important}}@media (max-width:767px){.member-header{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:.55rem!important;min-height:62px!important;padding:.55rem .75rem!important;display:grid!important}.member-header>.member-brand-link{grid-column:1;justify-self:start;gap:.45rem;min-width:0}.member-brand-link .brand-logo{flex:none;width:38px!important;height:38px!important}.member-brand-link .brand-name{white-space:normal;font-size:.65rem}.member-header-account{grid-column:2!important;justify-self:end!important;gap:.45rem!important}.member-header-user>span{display:none!important}.member-header-user .avatar{width:38px!important;height:38px!important}.member-header-account form button{min-height:40px;padding:.45rem .65rem;font-size:.75rem}.member-header .member-desktop-navigation{display:none!important}.member-portal .member-nav{z-index:40!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important;max-width:none!important;margin:0!important;display:grid!important;position:fixed!important;inset:auto 0 0!important;transform:none!important}.member-portal .member-nav-more-button{touch-action:manipulation;pointer-events:auto!important;cursor:pointer!important;display:flex!important}.member-more-backdrop{z-index:100!important;display:flex!important}}.page-context-header{text-align:right;background:#fff;border:1px solid #d9e7ea;border-radius:16px;width:max-content;max-width:100%;margin:0 0 1.25rem;padding:.7rem .8rem;box-shadow:0 7px 24px #173d500a}.page-context-topline{align-items:center;gap:.8rem;min-width:0;display:flex}.page-back-link{min-height:40px;color:var(--brand-dark);background:#edf6f8;border:1px solid #c8dce1;border-radius:11px;flex:none;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.78rem;font-weight:950;display:inline-flex}.page-back-link svg{fill:none;stroke:currentColor;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.page-breadcrumbs{color:#708087;white-space:nowrap;font-size:.75rem;display:flex;overflow:hidden}.page-breadcrumbs,.page-breadcrumbs span{align-items:center;gap:.25rem;min-width:0}.page-breadcrumbs span{display:inline-flex}.page-breadcrumbs a,.page-breadcrumbs b{border-radius:8px;padding:.28rem .4rem}.page-breadcrumbs a{color:#557079}.page-breadcrumbs b{max-width:260px;color:var(--brand-dark);text-overflow:ellipsis;background:#edf6f8;overflow:hidden}.page-breadcrumbs i{color:#9aa9ae;font-style:normal}@media (hover:hover){.page-back-link:hover{transform:translateY(-1px);box-shadow:0 6px 16px #176f912b;color:#fff!important;background:#176f91!important;border-color:#176f91!important}.page-breadcrumbs a:hover{color:#155d7c!important;background:#e7f4f8!important;text-decoration:none!important}}@media (min-width:768px){.app-content>.page-context-header{width:max-content;max-width:calc(100% - 2rem);margin:1rem 1rem 1rem auto}}@media (max-width:767px){.page-context-header{border-radius:14px;margin:0 0 .85rem;padding:.6rem .65rem}.page-context-topline{gap:.55rem}.page-back-link{min-height:38px;padding:.4rem .58rem}.page-back-link span{font-size:.72rem}.page-breadcrumbs{font-size:.68rem}.page-breadcrumbs b{max-width:125px}}.student-final-actions{gap:1rem;display:grid}.student-final-actions button,.student-final-actions>form{width:100%}.student-graduation-action{border-top:1px solid var(--line);padding-top:1rem}.page-loader{text-align:center;width:100%;min-height:clamp(320px,58vh,620px);color:var(--brand-dark);place-content:center;justify-items:center;gap:.55rem;padding:2rem;display:grid}.page-loader-mark{width:64px;height:64px;margin-bottom:.35rem;position:relative}.page-loader-mark span{border:4px solid #0000;border-top:4px solid var(--brand);border-radius:50%;animation:page-loader-spin .9s linear infinite;position:absolute;inset:0}.page-loader-mark span:nth-child(2){border-top-color:#ef9f39;animation-duration:1.15s;animation-direction:reverse;inset:8px}.page-loader-mark span:nth-child(3){border-top-color:#2aa77e;animation-duration:.75s;inset:16px}.page-loader strong{font-size:1.05rem;font-weight:950}.page-loader small{color:var(--muted);font-size:.78rem}@keyframes page-loader-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.page-loader-mark span{animation-duration:1.8s}}@media (max-width:767px){.page-loader{min-height:52vh;padding:1.25rem}.page-loader-mark{width:56px;height:56px}}.instant-navigation-loader{display:none}@media (max-width:767px){.instant-navigation-loader{z-index:10000;color:var(--brand-dark);-webkit-backdrop-filter:blur(3px);touch-action:none;background:#f4fafbd1;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:fixed;inset:0}.instant-navigation-loader strong{background:#fff;border-radius:999px;padding:.65rem 1rem;font-size:.92rem;box-shadow:0 8px 26px #08435824}.instant-navigation-spinner{border:4px solid #1689ad33;border-top:4px solid var(--brand);border-radius:50%;width:46px;height:46px;animation:page-loader-spin .72s linear infinite}}.member-floating-qr,.member-quick-qr-backdrop{display:none}@media (max-width:767px){.member-floating-qr{right:max(14px,env(safe-area-inset-right));bottom:calc(var(--member-bottom-nav-height) + var(--member-fixed-ui-gap) + env(safe-area-inset-bottom));z-index:34;width:var(--member-floating-qr-size);height:var(--member-floating-qr-size);color:#fff;background:linear-gradient(145deg,#238fb0,#176f70);border:2px solid #fffffff2;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;box-shadow:0 8px 22px #0c4c5f47,inset 0 1px #ffffff38}.member-floating-qr:active{transform:scale(.94)}.member-floating-qr svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:29px;height:29px}.member-floating-qr svg rect{fill:#ffffff24}.member-quick-qr-backdrop{z-index:10020;-webkit-backdrop-filter:blur(5px);background:#081f2aa8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.member-quick-qr-card{text-align:center;background:linear-gradient(160deg,#fff,#f1f9f8);border:1px solid #ffffffa6;border-radius:26px;justify-items:center;width:min(100%,370px);max-height:calc(100dvh - 2rem);padding:1.2rem 1.2rem 1rem;display:grid;position:relative;overflow:auto;box-shadow:0 24px 70px #00000052}.member-quick-qr-card>.brand-logo{margin-bottom:.25rem}.member-quick-qr-card>small{color:var(--brand-dark);font-weight:900}.member-quick-qr-card h2{color:var(--ink);margin:.55rem 0 .15rem;font-size:1.25rem;font-weight:950}.member-quick-qr-card>p{color:var(--muted);margin:0;font-size:.82rem}.member-quick-qr-card>p strong,.member-quick-qr-close{color:var(--brand-dark)}.member-quick-qr-close{width:38px;height:38px;min-height:0;background:#e8f1f3;border-radius:50%;place-items:center;padding:0;font-size:1.45rem;line-height:1;display:grid;position:absolute;top:.7rem;left:.7rem}.member-quick-qr-image{background:#fff;border:1px solid #d9e7e8;border-radius:20px;width:min(100%,265px);margin:.75rem 0 .55rem;padding:.45rem;box-shadow:0 8px 25px #1145531a}.member-quick-qr-image img{width:100%;height:auto;display:block}.member-quick-qr-help{color:var(--muted);font-size:.7rem;line-height:1.6}}.meeting-add-student-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}@media (max-width:600px){.meeting-control-panel{padding:.9rem}.attendance-quick-heading{gap:.8rem;margin-bottom:1rem}.attendance-quick-heading>div:last-child{grid-template-columns:1fr 1fr;gap:.55rem;width:100%;display:grid}.attendance-quick-heading .button{text-align:center;border-radius:14px;flex-direction:column;gap:.35rem;min-width:0;font-size:.8rem;line-height:1.3;display:flex;min-height:78px!important;padding:.6rem .35rem!important}.attendance-quick-heading .button svg{width:27px;height:27px}.meeting-simple-filters{gap:.75rem}.meeting-simple-filters>input{background:#fff;border-width:2px;min-height:52px}.meeting-filter-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;width:100%;display:grid!important}.meeting-filter-line select{min-width:0;color:var(--brand-dark);text-align:right;background:#f7fbfc;border:1px solid #c9dce2;border-radius:12px;font-size:.78rem;font-weight:900;width:100%!important;min-height:48px!important;padding:.55rem .75rem!important}.meeting-filter-line a{text-align:center;border:1px solid #d5e5e9;border-radius:11px;justify-content:center;min-height:44px;font-size:.75rem;padding:.55rem!important}.meeting-filter-line a:first-of-type{background:#e5f2f6;grid-column:1/-1}.meeting-control-results{margin-top:.85rem;padding-top:.85rem}}:where(.form-grid,.heading-actions,.meeting-actions,.meeting-filter-line,.quick-filters,.follow-up-filters,.trip-report-actions,.trip-waiting-choice-actions,.quick-student-modal-actions,.attendance-quick-heading>div:last-child,.student-attendance-report>.heading-actions)>:last-child:nth-child(odd){width:100%;grid-column:1/-1!important}@media (max-width:1023px){.two-column-stat-grid>:last-child:nth-child(odd){text-align:center;justify-items:center;width:100%;grid-column:1/-1!important}}@media (max-width:600px){.meeting-filter-line>select:last-of-type:nth-of-type(odd){grid-column:1/-1!important;width:100%!important}}@media (max-width:767px){.app-content{min-height:0!important}body:not(:has(.mobile-nav)) .app-footer{padding:1rem .75rem calc(1rem + env(safe-area-inset-bottom))!important}label:has(>input[type=date]){overflow:hidden;min-width:0!important;max-width:100%!important}input[type=date]{appearance:none!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;text-align:right!important;inline-size:100%!important;min-inline-size:0!important;max-inline-size:100%!important;direction:rtl!important;background:#fff!important;height:52px!important;min-height:52px!important;padding:.75rem 1rem!important;line-height:1.25!important;display:block!important}input[type=date]::-webkit-date-and-time-value{text-align:right;min-width:0;display:block}}.public-home{width:min(1180px,100% - 2rem);margin:0 auto;padding:2.25rem 0 3rem}.public-home-hero{isolation:isolate;text-align:center;background:linear-gradient(155deg,#fff,#f4fbfc 48%,#edf7f8);border:1px solid #d5e6ea;border-radius:36px;justify-items:center;min-height:610px;padding:3.4rem 2rem 2.5rem;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 70px #163f5717}.public-home-glow{z-index:-1;filter:blur(3px);pointer-events:none;border-radius:50%;position:absolute}.public-home-glow-one{background:#caedf477;width:430px;height:430px;inset:-230px auto auto -130px}.public-home-glow-two{background:#f4d99e45;width:310px;height:310px;inset:auto -120px -150px auto}.public-home-brand{justify-items:center;gap:.7rem;display:grid}.public-home-brand>span{color:var(--brand-dark);background:#ffffffbd;border:1px solid #cfe2e7;border-radius:999px;padding:.45rem .85rem;font-size:.8rem;font-weight:900}.public-home-logo{filter:drop-shadow(0 14px 24px #16475c18)}.public-home-copy{max-width:760px;margin-top:1.2rem}.public-home-kicker{color:var(--mint);margin:0 0 .3rem;font-size:1rem;font-weight:950}.public-home-copy h1{color:var(--brand-dark);letter-spacing:-.035em;margin:0;font-size:clamp(2.15rem,6vw,4.25rem);font-weight:950;line-height:1.22}.public-home-english{color:#3f7f91;font-family:var(--font-family-arabic);letter-spacing:.04em;margin:.65rem 0 0;font-size:clamp(.95rem,2vw,1.18rem);font-weight:800}.public-home-intro{color:#53666e;max-width:690px;margin:1.3rem auto 0;font-size:clamp(1rem,2.2vw,1.18rem);line-height:2}.public-home-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.7rem;display:flex}.public-home-actions .button{border-radius:17px;min-width:190px;min-height:54px}.public-home-primary{background:linear-gradient(135deg,var(--brand),#3696b2);color:#fff;box-shadow:0 12px 25px #287ba12e}.public-home-primary svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.public-home-secondary{color:var(--brand-dark);background:#fff;border:1px solid #cfe1e6;box-shadow:0 7px 20px #183f520b}.public-home-account-note{color:var(--muted);margin:1rem 0 0;font-size:.78rem}.public-home-about{padding:4rem .4rem 1.5rem}.public-home-section-heading{text-align:center}.public-home-help>div>span,.public-home-section-heading>span{color:var(--mint);font-size:.82rem;font-weight:950}.public-home-help h2,.public-home-section-heading h2{color:var(--brand-dark);margin:.45rem 0 0;font-size:clamp(1.55rem,3vw,2.2rem);font-weight:950}.public-home-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.public-home-info-grid article{background:#fffd;border:1px solid #dfeaec;border-radius:24px;padding:1.45rem;box-shadow:0 12px 35px #183f520b}.public-home-icon{width:50px;height:50px;color:var(--brand);background:linear-gradient(135deg,#e2f4f5,#f8f1df);border-radius:16px;place-items:center;margin-bottom:1rem;display:grid}.public-home-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.public-home-info-grid h3{color:var(--brand-dark);margin:0;font-size:1.05rem;font-weight:950}.public-home-info-grid p{color:var(--muted);margin:.55rem 0 0;font-size:.88rem;line-height:1.85}.public-home-help{background:linear-gradient(135deg,#eaf7f8,#fffaf0);border:1px solid #d6e6e9;border-radius:26px;justify-content:space-between;align-items:center;gap:2rem;margin-top:2rem;padding:1.7rem 1.9rem;display:flex}.public-home-help p{color:var(--muted);margin:.5rem 0 0;font-size:.88rem}.public-home-help>.button{flex:none;min-width:170px}.app-content:has(.public-home){background:radial-gradient(circle at 90% 0,#dff2f6 0,#0000 32rem)}.public-home-church{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:stretch;gap:1rem;margin-top:1.25rem;display:grid}.public-home-church-photo{border-radius:28px;min-height:390px;position:relative;overflow:hidden;box-shadow:0 18px 45px #173f531a}.public-home-church-photo img{object-fit:cover}.public-home-church-photo:after{content:"";background:linear-gradient(#0000,#102f43b8);position:absolute;inset:50% 0 0}.public-home-church-photo>span{z-index:1;color:#fff;text-shadow:0 2px 8px #0008;font-size:.9rem;font-weight:950;position:absolute;inset:auto 1.2rem 1rem}.public-home-church-copy{background:linear-gradient(145deg,#fffaf1,#fff);border:1px solid #e4d9c9;border-radius:28px;align-content:center;padding:2rem;display:grid}.public-home-church-copy>span{color:#9b672c;font-size:.82rem;font-weight:950}.public-home-church-copy h2{color:var(--brand-dark);margin:.55rem 0 .8rem;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.45}.public-home-church-copy p{color:var(--muted);margin:0;line-height:2}.public-home-gallery{padding:3.3rem .4rem 1rem}.public-home-section-heading>p{max-width:600px;color:var(--muted);margin:.65rem auto 0;line-height:1.8}.public-home-photo-grid{grid-template-rows:repeat(2,250px);grid-template-columns:1.45fr 1fr;gap:.8rem;margin-top:1.7rem;display:grid}.public-home-photo-grid figure{background:#dce9ec;border-radius:24px;margin:0;position:relative;overflow:hidden;box-shadow:0 12px 32px #173f5314}.public-home-photo-grid .public-home-photo-main{grid-row:1/3}.public-home-photo-grid img{object-fit:cover;transition:transform .45s}.public-home-photo-grid figure:hover img{transform:scale(1.025)}.public-home-download{background:linear-gradient(135deg,#eef9fa,#fff);border:1px solid #cfe2e7;border-radius:28px;justify-content:space-between;align-items:center;gap:2rem;margin-top:1.25rem;padding:1.6rem 1.8rem;display:flex;box-shadow:0 14px 40px #163f570d}.public-home-download>div{max-width:520px}.public-home-download>div>span{color:var(--mint);font-size:.8rem;font-weight:950}.public-home-download h2{color:var(--brand-dark);margin:.4rem 0 0;font-size:clamp(1.35rem,2.5vw,1.9rem);font-weight:950}.public-home-download p{color:var(--muted);margin:.55rem 0 0;font-size:.86rem;line-height:1.8}@media (max-width:760px){.public-home{width:min(100% - 1rem,680px);padding:.5rem 0 2rem}.public-home-hero{border-radius:27px;min-height:0;padding:2.15rem 1.15rem 1.7rem}.public-home-brand .brand-logo{width:118px!important}.public-home-brand>span{font-size:.73rem}.public-home-copy{margin-top:1rem}.public-home-copy h1{font-size:2.15rem}.public-home-intro{font-size:.94rem;line-height:1.9}.public-home-actions{width:100%;margin-top:1.35rem;display:grid}.public-home-actions .button{width:100%;min-height:52px}.public-home-church{grid-template-columns:1fr;gap:.7rem;margin-top:.7rem}.public-home-church-photo{border-radius:23px;min-height:255px}.public-home-church-copy{border-radius:23px;padding:1.3rem}.public-home-church-copy h2{font-size:1.45rem}.public-home-about{padding:2.7rem .25rem 1rem}.public-home-info-grid{grid-template-columns:1fr;gap:.7rem;margin-top:1.4rem}.public-home-info-grid article{grid-template-columns:50px 1fr;gap:0 .85rem;padding:1.05rem;display:grid}.public-home-info-grid .public-home-icon{grid-row:1/3;margin:0}.public-home-info-grid p{margin-top:.3rem}.public-home-gallery{padding:2.5rem .25rem .7rem}.public-home-photo-grid{grid-template-rows:310px 180px;grid-template-columns:1fr 1fr;gap:.55rem}.public-home-photo-grid .public-home-photo-main{grid-area:1/1/auto/-1}.public-home-photo-grid figure{border-radius:18px}.public-home-help{flex-direction:column;align-items:stretch;gap:1.2rem;margin-top:1.3rem;padding:1.35rem}.public-home-help>.button{width:100%}}@media (max-width:380px){.public-home-copy h1{font-size:1.85rem}.public-home-hero{padding-inline:.9rem}.public-home-info-grid article{grid-template-columns:44px 1fr}.public-home-icon{border-radius:14px;width:44px;height:44px}.public-home-info-grid p{font-size:.82rem}}@media (max-width:760px){.public-home-download{flex-direction:column;align-items:stretch;gap:1.1rem;padding:1.25rem}.public-home-download .app-download-links{display:grid}.public-home-download .app-download-badge{width:100%}.app-download-links-compact .app-download-badge{min-width:155px}}.public-home-meeting-time{background:#eff9f6;border:1px solid #d8e7e5;border-radius:18px;align-items:center;gap:.8rem;margin-top:1.25rem;padding:1rem;display:flex}.public-home-meeting-time-icon{color:#247e68;background:#d8f1e9;border-radius:14px;flex:none;place-items:center;width:45px;height:45px;display:grid}.public-home-location svg,.public-home-meeting-time-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px}.public-home-meeting-time>div{gap:.15rem;display:grid}.public-home-meeting-time strong{color:var(--brand-dark);font-size:.9rem}.public-home-meeting-time>div>span{color:#247e68;font-size:.9rem;font-weight:950}.public-home-meeting-time small{color:var(--muted);font-size:.72rem}.public-home-location{width:100%;min-height:48px;color:var(--brand-dark);background:#fff;border:1px solid #c9dee3;margin-top:.7rem;font-size:.82rem}.public-home-location:hover{color:#166d89;background:#e9f6f8}.public-support-page{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;gap:1rem;width:min(1080px,100% - 2rem);margin:0 auto;padding:2.5rem 0 3rem;display:grid}.public-support-card,.public-support-details{border-radius:26px;padding:1.7rem}.public-support-heading{margin-bottom:1.3rem}.public-support-heading h1{color:var(--brand-dark);margin:.3rem 0;font-size:clamp(1.8rem,4vw,2.6rem)}.public-support-details section p,.public-support-details>p,.public-support-heading p{color:var(--muted);line-height:1.8}.public-contact-form{gap:1rem;display:grid}.public-contact-form textarea{resize:vertical}.public-contact-form>button{min-height:52px}.public-contact-trap{width:1px!important;height:1px!important;position:absolute!important;inset:auto auto auto -10000px!important;overflow:hidden!important}.public-support-privacy{color:var(--muted);text-align:center;margin:.8rem 0 0;font-size:.75rem}.public-support-details{background:linear-gradient(145deg,#eff9fa,#fffaf1);gap:1.2rem;display:grid}.public-support-details h2{color:var(--brand-dark);margin:.35rem 0 0;font-size:1.4rem}.public-support-details section{border-top:1px solid #dce7e7;padding-top:1rem}.public-support-details h3{color:var(--brand-dark);margin:0 0 .35rem;font-size:.95rem}.public-support-details section a:not(.button){color:var(--brand);font-size:.82rem;font-weight:900}.public-support-actions{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.7rem;display:grid}.public-support-actions .button{min-width:0;padding:.65rem .4rem;font-size:.76rem}.public-support-details>.button{width:100%}@media (max-width:760px){.public-support-page{grid-template-columns:1fr;width:min(100% - 1rem,680px);padding:.5rem 0 2rem}.public-support-card,.public-support-details{border-radius:22px;padding:1.25rem}.public-support-card .form-grid{grid-template-columns:1fr}.public-support-details{order:2}.public-support-actions{grid-template-columns:1fr}}.ios-display-settings{gap:1rem;max-width:780px;display:grid}.ios-display-settings>label{border:1px solid var(--line);background:#f8fbfc;border-radius:16px;align-items:flex-start;gap:.8rem;padding:1rem;display:flex}.ios-display-settings input{flex:none;width:22px;height:22px;min-height:0}.ios-display-settings label>span{gap:.25rem;display:grid}.ios-display-settings strong{color:var(--brand-dark)}.ios-display-settings small{color:var(--muted);line-height:1.7}.ios-display-settings>button{width:max-content;min-width:190px}@media (max-width:600px){.ios-display-settings>button{width:100%}}.feature-visibility-settings{gap:.55rem;width:100%;min-width:0;max-width:900px;display:grid}.feature-visibility-row{border:1px solid var(--line);background:#f8fbfc;border-radius:13px;grid-template-columns:minmax(240px,1fr) repeat(3,minmax(82px,110px));align-items:center;gap:.5rem;min-width:0;padding:.72rem .8rem;display:grid}.feature-visibility-heading{z-index:1;color:var(--brand-dark);text-align:center;background:#eaf4f6;position:sticky;top:0}.feature-visibility-heading>strong:first-child{text-align:right}.feature-visibility-row>span{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-weight:850}.feature-visibility-row>label{place-items:center;min-width:0;display:grid}.feature-platform-label{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.feature-visibility-row input[type=checkbox]{width:24px;height:24px;min-height:0;accent-color:var(--brand)}.feature-visibility-row input:disabled{opacity:.7;cursor:not-allowed}.feature-visibility-settings>button{width:max-content;min-width:190px;margin-top:.5rem}@media (max-width:600px){.feature-visibility-settings{padding:var(--space-3);overflow:visible}.feature-visibility-heading{display:none}.feature-visibility-row:not(.feature-visibility-heading){gap:var(--space-2);padding:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.feature-visibility-row>span{line-height:var(--line-height-body);grid-column:1/-1}.feature-visibility-row>label{gap:var(--space-2);min-height:48px;padding:var(--space-1);font-size:var(--font-size-caption);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label);text-align:center;grid-template-rows:auto 24px}.feature-platform-label{color:var(--color-text-secondary);clip:auto!important;clip-path:none!important;white-space:normal!important;width:auto!important;height:auto!important;position:static!important;overflow:visible!important}.feature-visibility-settings>button{width:100%}}.audit-storage-overview{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:.45rem 1rem;margin:-.65rem 0 .8rem;font-size:.72rem;display:flex}.audit-storage-overview span{white-space:nowrap}.audit-storage-overview strong{color:var(--brand-dark);font-size:.76rem}.audit-cleanup{gap:1rem;margin-bottom:1rem;display:grid}.audit-cleanup>div p{color:var(--muted);font-size:.82rem}.audit-cleanup-range{grid-template-columns:repeat(2,minmax(150px,1fr)) auto;align-items:end;gap:.75rem;display:grid}.audit-cleanup-range label{gap:.35rem;display:grid}.audit-cleanup-range label span{font-size:.78rem;font-weight:850}.audit-cleanup-all{border-top:1px solid var(--line);padding-top:.9rem}@media (max-width:650px){.audit-storage-overview{justify-content:flex-start;margin-top:-.35rem}.audit-cleanup-range{grid-template-columns:1fr}.audit-cleanup button{width:100%}}.member-trip-group{gap:.75rem;margin-bottom:1.4rem;display:grid}.member-trip-group-title{justify-content:space-between;align-items:center;display:flex}.member-trip-group-title h2{font-size:1.08rem;font-weight:950}.member-trip-group-title span,.member-trip-previous>summary span{color:#176783;background:#e8f4f7;border-radius:999px;place-items:center;min-width:28px;height:28px;padding:0 .45rem;font-size:.75rem;font-weight:950;display:grid}.member-trip-list{gap:.9rem}.member-trip{border-width:1px;overflow:hidden;gap:0!important;padding:0!important}.member-trip-header{border:0!important;padding:1rem 1rem .85rem!important}.member-trip-date{color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;font-size:.76rem;display:flex}.member-trip-header h2{margin-top:.25rem!important;font-size:1.16rem!important}.member-trip-state-banner{border-block:1px solid #0000;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.member-trip-state-banner>div{gap:.22rem;min-width:0;display:grid}.member-trip-state-banner strong{font-size:.96rem}.member-trip-state-banner p{font-size:.77rem;line-height:1.75}.member-trip-state-banner small{margin-top:.2rem;font-size:.72rem}.member-trip-state-icon{border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:1.12rem;font-weight:950;display:grid}.member-trip-state-banner.waiting{color:#795500;background:#fff8e7;border-color:#f0d59b}.member-trip-state-banner.waiting .member-trip-state-icon{background:#ffe6ad}.member-trip-state-banner.confirmed{color:#11664f;background:#edf9f4;border-color:#bee4d3}.member-trip-state-banner.confirmed .member-trip-state-icon{background:#c9eddd}.member-trip-state-banner.cancelled{color:#913b32;background:#fff0ef;border-color:#f0cac6}.member-trip-state-banner.cancelled .member-trip-state-icon{background:#f7d6d2}.member-trip-simple-fee{background:#f3f7f8;border-radius:13px;justify-content:space-between;align-items:center;gap:1rem;margin:1rem;padding:.8rem .9rem;display:flex}.member-trip-simple-fee span{color:var(--muted);font-size:.78rem}.member-trip-simple-fee strong{color:#163f55;font-size:1.08rem}.member-trip-finance{padding:1rem}.member-trip-finance>div{min-height:66px}.member-trip .member-trip-booking-action{margin:0 1rem 1rem}.member-trip>.member-trip-no-payments,.member-trip>.trip-member-note{color:var(--muted);background:#f3f7f8;border-radius:12px;margin:0 1rem 1rem;padding:.8rem .9rem;font-size:.78rem}.member-trip>.member-payment-history{margin:0 1rem 1rem;padding-top:.85rem}.member-trip-previous{margin-top:.3rem}.member-trip-previous>summary{border:1px solid var(--line);color:#315566;cursor:pointer;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;padding:.9rem 1rem;font-size:.88rem;font-weight:950;list-style:none;display:flex}.member-trip-previous>summary::-webkit-details-marker{display:none}.member-trip-previous[open]>summary{background:#edf7fa;margin-bottom:.8rem}.member-trip-state-available{border-color:#d8e8ec}.member-trip-state-waiting{border-color:#edd59d}.member-trip-state-confirmed{border-color:#b9dfcf}.member-trip-state-cancelled{border-color:#eacbc7}@media (max-width:520px){.member-trip-group{margin-bottom:1.15rem}.member-trip-header{padding:.85rem!important}.member-trip-date{font-size:.7rem}.member-trip-state-banner{padding:.85rem}.member-trip-simple-fee{margin:.85rem}.member-trip .member-trip-booking-action,.member-trip>.member-payment-history,.member-trip>.member-trip-no-payments,.member-trip>.trip-member-note{margin-inline:.85rem;margin-bottom:.85rem}.member-trip-finance{padding:.85rem}.member-trip-finance .trip-payment-state{grid-column:auto}.member-trip-finance .trip-discount-value{grid-column:1/-1}}.member-trip-index{gap:.7rem;display:grid}.member-trip-index-card{color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem 1rem;padding:1rem 2.7rem 1rem 1rem;text-decoration:none;display:grid;position:relative}.member-trip-index-main{gap:.22rem;min-width:0;display:grid}.member-trip-index-main h2{font-size:1.02rem;font-weight:950;line-height:1.45}.member-trip-index-main span{color:var(--muted);font-size:.74rem}.member-trip-index-fee{color:var(--brand-dark);white-space:nowrap;font-size:.95rem}.member-trip-index-statuses{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.4rem;display:flex}.member-trip-index-statuses .badge,.member-trip-index-statuses .trip-booking-status{margin:0}.member-trip-index-arrow{color:#6f929e;font-size:1.55rem;font-weight:500;position:absolute;top:50%;left:1rem;translate:0 -50%}.member-trip-details-back{color:var(--brand);margin-bottom:.7rem;font-size:.8rem;font-weight:950;display:inline-block}.member-trip-details{max-width:720px;margin-inline:auto}.member-trip-details .member-trip-header h1{margin:.25rem 0 0;font-size:1.45rem;font-weight:950}.member-trip-description{background:#f7fafb;border:1px solid #e1ebed;border-radius:14px;gap:.45rem;margin:0 1rem 1rem;padding:1rem;display:grid}.member-trip-description h2{color:var(--brand-dark);font-size:.9rem;font-weight:950}.member-trip-description p{white-space:pre-wrap;color:#445b64;font-size:.82rem;line-height:1.9}@media (hover:hover){.member-trip-index-card:hover{background:#f7fcfb;border-color:#a8d1d5;transform:translateY(-2px)}}@media (max-width:520px){.member-trip-index-card{gap:.5rem;padding:.85rem 2.3rem .85rem .85rem}.member-trip-index-arrow{left:.75rem}.member-trip-index-main h2{font-size:.94rem}.member-trip-index-fee{font-size:.86rem}.member-trip-description{margin-inline:.85rem;padding:.85rem}}.member-trip-index-statuses .trip-booking-status{color:#516870;background:#f3f6f7;border-color:#d3dfe2}.member-trip-index-statuses .trip-booking-status.booking-open{color:#176b58;background:#e8f7f2;border-color:#b8dfd1}.member-trip-index-statuses .trip-booking-status.waiting-only{color:#704f96;background:#f4effb;border-color:#d9caeb}.member-trip-index-statuses .trip-booking-status.booking-closed,.member-trip-index-statuses .trip-booking-status.trip-ended{color:#765e52;background:#f5f1ef;border-color:#ded3cc}.member-trip-index-statuses .badge{color:#365a88;background:#e8eef7;border:0}.member-trip-index-statuses .badge.waiting_list{color:#795500;background:#fff0bf}.member-trip-index-statuses .badge.present{color:#205d9b;background:#dceafc}.member-trip-index-statuses .badge.cancelled{color:#983b32;background:#fbe0de}.trip-booking-status.waiting-only{white-space:normal;text-align:center;max-width:100%}.admin-trip-description{background:#f8fbfc;gap:.5rem;margin-bottom:1rem;padding:1.1rem 1.2rem;display:grid}.admin-trip-description h2{color:var(--brand-dark);font-size:.95rem;font-weight:950}.admin-trip-description p{white-space:pre-wrap;color:#425d68;font-size:.84rem;line-height:1.9}.admin-trip-tabs{background:#edf5f7;border:1px solid #d6e5e8;border-radius:16px;grid-template-columns:1fr 1fr;gap:.6rem;margin:1.2rem 0 .8rem;padding:.35rem;display:grid}.admin-trip-tabs>a{color:#536c76;border-radius:12px;justify-content:center;align-items:center;gap:.55rem;min-height:48px;font-size:.86rem;font-weight:950;text-decoration:none;display:flex}.admin-trip-tabs>a b{color:#41616e;background:#dce7ea;border-radius:999px;place-items:center;min-width:25px;height:25px;padding:0 .4rem;font-size:.7rem;display:grid}.admin-trip-tabs>a.active{color:var(--brand-dark);background:#fff;box-shadow:0 4px 14px #173d5017}.admin-trip-tabs>a.active b{color:#176783;background:#d9eef3}.admin-trip-tab-panel{margin-top:0!important}@media (max-width:520px){.admin-trip-description{padding:.9rem}.admin-trip-tabs{z-index:15;margin-top:.9rem;position:sticky;top:66px}.admin-trip-tabs>a{min-height:44px;font-size:.78rem}}.trip-member-with-avatar{align-items:center;gap:.6rem;min-width:0;text-decoration:none!important;display:flex!important}.trip-member-with-avatar>.avatar{background:#edf4f5;border:2px solid #d5e5e8;border-radius:50%;flex:none;overflow:hidden;width:40px!important;height:40px!important}.trip-member-with-avatar>span,.trip-member-with-avatar>strong span{font-weight:950}.trip-member-with-avatar>strong{gap:.05rem;min-width:0;display:grid}.trip-member-with-avatar>strong small{color:var(--muted);font-size:.66rem;font-weight:800}.admin-trip-tab-panel .attendee-card>div:first-child{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.admin-trip-tab-panel .trip-member-with-avatar{flex:1;min-width:0}.admin-trip-tab-panel .attendee-card>div:first-child>.badge{flex:none;margin-inline-start:auto}.admin-trip-tab-panel .attendee-card>span{text-align:right;display:block}.trip-page-actions .button{text-align:center;min-height:48px;padding:.65rem .5rem;line-height:1.35;font-size:.8rem!important}.trip-page-actions .trip-scan-button{font-size:.8rem!important}.admin-trip-tab-panel .attendee-card .button,.admin-trip-tab-panel .attendee-card button{padding:.6rem .7rem;font-size:.76rem;line-height:1.35}@media (max-width:520px){.trip-page-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-page-actions .button{white-space:nowrap;min-width:0;font-size:.72rem!important}.admin-trip-tab-panel .attendee-card .button,.admin-trip-tab-panel .attendee-card button{font-size:.7rem}}.trip-waiting-meta{border-top:1px solid #eee1bf;border-bottom:1px solid #eee1bf;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.trip-waiting-meta span{font-size:.74rem!important}.trip-waiting-meta span:last-child{text-align:left;margin-inline-start:auto}@media (max-width:380px){.trip-waiting-meta{flex-direction:column;align-items:flex-start}.trip-waiting-meta span:last-child{text-align:right;margin-inline-start:0}}.trip-promote-action,.trip-promote-action>button{width:100%!important;max-width:none!important}.attendance-scanner-shell{border:1px solid #d6e3e7;border-radius:27px;gap:0;box-shadow:0 18px 48px #153d5018}.attendance-scanner-camera{background:#111821;position:relative;overflow:hidden}.attendance-scanner-camera-bar{z-index:5;color:#fff;background:linear-gradient(#0b1827cc,#0000);justify-content:space-between;align-items:center;padding:.75rem .9rem;display:flex;position:absolute;inset:0 0 auto}.attendance-scanner-camera-bar>span{align-items:center;gap:.55rem;font-size:.72rem;font-weight:950;display:flex}.attendance-scanner-camera-bar .status-dot{flex:none;display:inline-block}.attendance-scanner-camera-bar>b{background:#13223499;border:1px solid #ffffff45;border-radius:50%;place-items:center;width:34px;height:34px;font-size:1.25rem;display:grid}.attendance-scanner-shell .scanner-stage{height:52vh;min-height:420px;max-height:560px;box-shadow:none;border-radius:0}.attendance-scanner-shell .scanner-stage video{object-fit:cover;max-height:560px;height:52vh!important;min-height:420px!important}.attendance-scanner-shell .scan-frame{border:2px solid #fff;border-radius:18px;width:min(62vw,290px);box-shadow:0 0 0 999px #07111b4d}.attendance-scanner-shell .scan-frame:after,.attendance-scanner-shell .scan-frame:before{border-width:4px;border-top-color:#6ce4c4;border-radius:20px;inset:-3px}.scan-frame-label{z-index:4;color:#fff;white-space:nowrap;pointer-events:none;background:#0b1724b8;border:1px solid #ffffff35;border-radius:999px;padding:.42rem .7rem;font-size:.68rem;font-weight:900;position:absolute;inset:auto 50% 1rem auto;translate:50%}.attendance-scanner-panel{background:#fff;gap:.85rem;padding:1.15rem 1.2rem 1.25rem}.attendance-scanner-panel>header{border-bottom:1px solid #e6ecee;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.8rem}.attendance-scanner-panel>header>div:first-child{gap:.08rem;display:grid}.attendance-scanner-panel>header span{color:var(--brand);font-size:.68rem;font-weight:950}.attendance-scanner-panel h2{margin:0;font-size:1.15rem;font-weight:950}.attendance-scanner-count{justify-items:end;gap:.05rem;display:grid}.attendance-scanner-count small{color:var(--muted);font-size:.64rem}.attendance-scanner-count strong{color:var(--brand-dark);font-size:1.3rem}.attendance-scanner-ready{color:#176b58;background:#f0f8f6;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:.1rem .55rem;padding:.85rem;display:grid}.attendance-scanner-ready>.status-dot{grid-row:1/3}.attendance-scanner-ready>strong{font-size:.84rem}.attendance-scanner-ready>small{color:#54746d;font-size:.68rem}.attendance-scanner-current{color:#12634d;background:#e8f7f1;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.85rem;display:grid}.attendance-scan-mark,.attendance-scanner-current>span{color:#12634d;background:#c7ecdd;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:950;display:grid}.attendance-scanner-current>div{gap:.05rem;display:grid}.attendance-scanner-current strong{font-size:.72rem}.attendance-scanner-current b{font-size:.92rem}.attendance-scanner-current small{font-size:.68rem}.attendance-scanner-current.duplicate{color:#765400;background:#fff6dd}.attendance-scanner-current.duplicate>span{color:#765400;background:#ffe4a0}.attendance-scanner-current.error{color:#963a2f;background:#fff0ee}.attendance-scanner-current.error>span{color:#963a2f;background:#f8d3ce}.attendance-scanner-current.late{color:#81520a;background:#fff2dc}.attendance-scanner-recent{display:grid}.attendance-scanner-recent>div{border-bottom:1px solid #edf1f2;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.05rem .65rem;padding:.65rem 0;display:grid}.attendance-scanner-recent>div:last-child{border-bottom:0}.attendance-scan-mark{grid-row:1/3;width:30px;height:30px;font-size:.72rem}.attendance-scan-mark.duplicate{color:#765400;background:#ffe8ad}.attendance-scan-mark.error{color:#963a2f;background:#f7d9d5}.attendance-scanner-recent strong{font-size:.8rem}.attendance-scanner-recent small{color:var(--muted);font-size:.65rem}.attendance-scanner-error{color:#963a2f;background:#fff0ee;border-radius:14px;gap:.65rem;padding:.85rem;display:grid}.attendance-scanner-error strong{font-size:.78rem}.attendance-scanner-error button{width:100%;min-height:44px}.attendance-scanner-manual{width:100%;min-height:50px}@media (max-width:767px){.attendance-scanner-shell{border-radius:22px;margin-inline:-.25rem}.attendance-scanner-shell .scanner-stage,.attendance-scanner-shell .scanner-stage video{max-height:430px;height:42dvh!important;min-height:330px!important}.attendance-scanner-shell .scan-frame{width:min(67vw,260px)}.attendance-scanner-panel{padding:1rem}.scan-frame-label{bottom:.75rem}.meeting-scan-page>.card{margin-top:.8rem!important}}.attendance-scanner-shell{z-index:1000;width:100%;height:100dvh;box-shadow:none;background:#fff;border:0;border-radius:0;grid-template-rows:35dvh 65dvh;margin:0;display:grid;position:fixed;inset:0;overflow:hidden}.attendance-scanner-camera{height:35dvh}.attendance-scanner-shell .scanner-stage,.attendance-scanner-shell .scanner-stage video{width:100%!important;height:35dvh!important;min-height:35dvh!important;max-height:35dvh!important}.attendance-scanner-shell .scan-frame{width:min(54vw,250px);max-height:27dvh}.attendance-scanner-camera-bar{padding:max(.75rem,env(safe-area-inset-top)) 1rem .75rem}.attendance-scanner-camera-bar>a{color:#fff;background:#142333b8;border:1px solid #fff5;border-radius:50%;place-items:center;width:38px;height:38px;font-size:1.5rem;font-weight:400;line-height:1;display:grid}.attendance-scanner-panel{height:65dvh;padding:1rem 1rem max(1rem,env(safe-area-inset-bottom));z-index:6;border-radius:24px 24px 0 0;grid-template-rows:auto auto minmax(0,1fr) auto;gap:.55rem;margin-top:-18px;display:grid;position:relative;overflow:hidden}.attendance-scanner-panel>header{flex-direction:row-reverse;align-items:center;padding:0 0 .6rem;display:flex}.attendance-scanner-panel>header>div{align-items:baseline;gap:.45rem;display:flex}.attendance-scanner-panel>header span{font-size:.72rem}.attendance-scanner-panel>header>div>strong{color:var(--brand-dark);font-size:1.35rem}.attendance-scanner-panel h2{font-size:1rem}.attendance-scanner-current,.attendance-scanner-error{padding:.55rem .7rem}.attendance-scanner-current>span{width:30px;height:30px}.attendance-scanner-recent{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding-inline:.1rem .35rem;overflow-y:auto}.attendance-scanner-recent>div{padding:.52rem 0}.attendance-scanner-empty{height:100%;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:.25rem;border:0!important;display:grid!important}.attendance-scanner-empty small{font-size:.68rem}.attendance-scanner-actions{background:#fff;border-top:1px solid #e5ecee;grid-template-columns:1fr 1fr;gap:.55rem;padding-top:.65rem;display:grid}.attendance-scanner-actions .button{white-space:nowrap;min-width:0;min-height:50px;padding:.6rem .4rem;font-size:.74rem}.attendance-scanner-shell .scanner-overlay{height:35dvh}.attendance-scanner-shell .scan-frame-label{display:none}@media (min-width:768px){.attendance-scanner-shell{border-inline:1px solid #d6e3e7;width:min(560px,100%);margin-inline:auto;inset:0}.attendance-scanner-shell .scan-frame{width:min(32vw,260px)}}.attendance-scanner-panel>header{grid-row:1}.attendance-scanner-current,.attendance-scanner-error{grid-row:2}.attendance-scanner-recent{grid-row:3}.attendance-scanner-actions{grid-row:4}.attendance-scanner-actions .button{height:50px;max-height:50px}.attendance-scanner-panel>header>div:first-child{align-items:center;gap:.35rem;display:flex}.attendance-scanner-panel>header>div:first-child>strong{font-size:1rem;line-height:1}.attendance-scanner-panel>header h2{white-space:nowrap;font-size:.86rem}.attendance-scanner-actions{gap:.4rem;padding-top:.4rem}.attendance-scanner-actions .button{border-radius:11px;height:40px;min-height:40px;max-height:40px;padding:.35rem .3rem;font-size:.66rem}.attendance-scanner-recent>.attendance-scanner-person{justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 0;display:flex}.attendance-scanner-person-main{align-items:center;gap:.6rem;min-width:0;display:flex}.attendance-scanner-person-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.attendance-scanner-person-photo{flex:none;width:42px;height:42px;position:relative}.attendance-scanner-person-photo>.avatar{border:1px solid #d7e4e7;overflow:hidden;border-radius:50%!important;width:42px!important;height:42px!important}.attendance-scanner-person-photo>.avatar>img{object-fit:cover;border-radius:50%!important;width:100%!important;height:100%!important}.attendance-scan-check{color:#fff;background:#22a879;border:2px solid #fff;border-radius:50%;place-items:center;width:16px;height:16px;font-size:.52rem;font-style:normal;font-weight:950;display:grid;position:absolute;bottom:-1px;right:-2px;box-shadow:0 2px 5px #174c3b30}.attendance-scan-check.duplicate{background:#e5a52e}.attendance-scan-check.error{background:#df5c4e}.attendance-scanner-person>small{color:var(--muted);direction:ltr;flex:none;align-items:center;gap:.35rem;font-size:.62rem;display:flex}.attendance-scanner-person>small>b{color:#176b58;direction:rtl;background:#e8f5f1;border-radius:999px;padding:.18rem .35rem;font-size:.58rem}.attendance-scan-time{white-space:nowrap;direction:ltr;unicode-bidi:isolate;flex-direction:row;align-items:center;gap:.18rem;display:inline-flex}.attendance-scan-time>span{display:inline-block}.attendance-scan-time>span:last-child{direction:rtl;unicode-bidi:isolate}.attendance-camera-feedback{z-index:7;color:#fff;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#a82f2edb;place-content:center;justify-items:center;gap:.45rem;padding:1.5rem;animation:confirm-fade .14s ease-out;display:grid;position:absolute;inset:0}.attendance-camera-feedback>span{border:3px solid #fff;border-radius:50%;place-items:center;width:52px;height:52px;font-size:1.8rem;font-weight:950;display:grid}.attendance-camera-feedback>strong{font-size:1rem}.attendance-camera-feedback>small{font-size:.8rem;font-weight:900}.attendance-camera-feedback.duplicate{background:#a96b13df}body:has(.attendance-scanner-shell),html:has(.attendance-scanner-shell){overscroll-behavior:none;height:100%;overflow:hidden!important}.admin-main:has(.attendance-scanner-shell){height:100dvh;overflow:hidden}.attendance-scanner-shell #qr-shaded-region{box-shadow:none!important;border:0!important;display:none!important}.attendance-scanner-person-main>a{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:.78rem;font-weight:950;overflow:hidden}.attendance-scanner-person-main>a:active{color:var(--brand)}.attendance-scanner-person-side{direction:ltr;flex:none;align-items:center;gap:.38rem;display:flex}.attendance-scanner-person-side>small{color:var(--muted);direction:ltr;align-items:center;gap:.35rem;font-size:.62rem;display:flex}.attendance-scanner-person-side>small>b{color:#176b58;direction:rtl;background:#e8f5f1;border-radius:999px;padding:.18rem .35rem;font-size:.58rem}.attendance-scanner-person-side>form{order:-1;display:flex}.attendance-scanner-person-side>form>button.attendance-scanner-remove{color:#ba4437;width:23px;height:23px;min-height:23px;box-shadow:none;background:#fff1ef;border:1px solid #efc8c3;border-radius:50%;padding:0;font-size:.85rem;font-weight:900;line-height:1}.attendance-scanner-person-side>form>button.attendance-scanner-remove svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.attendance-inline-search{z-index:4;background:#fff;position:sticky;top:0;border-bottom:1px solid #e3ecee!important;grid-template-columns:1fr!important;gap:.4rem!important;padding:.1rem 0 .6rem!important;display:grid!important}.attendance-inline-search>input{width:100%;min-height:40px;box-shadow:none;background:#f8fbfc;border:1px solid #cbdde1;border-radius:11px;padding:.5rem .75rem;font-size:.74rem}.attendance-inline-search>input:focus{border-color:#3898ad;outline:3px solid #3898ad1f}.attendance-inline-search>small{color:var(--muted);text-align:center;font-size:.64rem}.attendance-inline-results{overscroll-behavior:contain;gap:.3rem;max-height:190px;display:grid;overflow-y:auto}.attendance-inline-results>button{width:100%;min-height:48px;color:var(--ink);box-shadow:none;text-align:right;background:#f7fbfc;border:1px solid #dce8ea;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.35rem .45rem;display:grid}.attendance-inline-results>button>.avatar{border:1px solid #d5e4e7;overflow:hidden;border-radius:50%!important;width:38px!important;height:38px!important}.attendance-inline-results>button>.avatar img{object-fit:cover;border-radius:50%!important;width:100%!important;height:100%!important}.attendance-inline-results>button>span{gap:.05rem;min-width:0;display:grid}.attendance-inline-results>button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;overflow:hidden}.attendance-inline-results>button small{color:var(--muted);font-size:.6rem}.attendance-inline-results>button b{color:#176c59;white-space:nowrap;background:#dff2ee;border-radius:8px;padding:.28rem .45rem;font-size:.62rem}.attendance-inline-results>button:disabled{opacity:.65}.announcement-admin-content p>a,.member-announcement-detail-body p>a{color:#167b9f;text-underline-offset:3px;overflow-wrap:anywhere;font-weight:900;text-decoration:underline;text-decoration-thickness:1px}.announcement-admin-content p>a:active,.member-announcement-detail-body p>a:active{color:#0d536d}.scanner-stage .ios-qr-reader video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);object-fit:contain!important;width:auto!important;max-width:none!important;height:100%!important;min-height:0!important;max-height:none!important}.trip-add-member-panel{scroll-margin-top:90px}.trip-add-member-panel .section-title{margin-bottom:.35rem}.trip-member-search-form{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;display:grid}.trip-member-search-form>button{min-width:86px}.trip-edit-panel{scroll-margin-top:90px}.trip-delete-form{justify-content:flex-start;margin:2rem 0;display:flex}.trip-delete-form>button{min-height:44px}@media (max-width:767px){.trip-member-search-form>button{min-width:72px}.trip-delete-form>button{width:100%}}.trip-page-actions{grid-template-columns:minmax(0,1fr);gap:.65rem;margin-bottom:1.25rem;display:grid}.trip-page-actions>.trip-scan-button{width:100%;min-height:54px}.trip-page-report-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.trip-page-report-actions>.button{width:100%;min-width:0}.trip-page-report-actions>a[href*=report]{color:#6f4ba0;background:#f4effc}.trip-page-report-actions>a[href*=export]{color:#14715e;background:#edf8f4}.graduate-card-actions{justify-items:end;gap:.55rem;display:grid}.graduate-card-actions button,.graduate-card-actions form{width:100%}.graduate-card-actions button{min-height:38px;padding:.5rem .7rem;font-size:.75rem}.student-delete-action{background:#fff8f7;border-color:#f2c7c1;justify-content:space-between;align-items:center;gap:1rem;display:flex}.student-delete-action .section-title{color:#9d3024;margin-bottom:.35rem}.student-delete-action p{color:var(--muted);margin:0;font-size:.85rem}.student-delete-action button{white-space:nowrap}@media (max-width:767px){.student-delete-action{display:grid}.student-delete-action button,.student-delete-action form{width:100%}}.trip-image-input{background:#f7fbfc;border:1px dashed #bcd3d9;border-radius:14px;padding:.8rem}.trip-image-input>small{color:var(--muted);font-size:.74rem}.trip-image-input>img{object-fit:cover;border-radius:12px;width:150px;height:96px;margin-top:.65rem;display:block}.trip-image-remove{color:#9f342c;align-items:center;gap:.45rem;margin-top:.55rem;font-size:.82rem;grid-template-columns:auto 1fr!important;display:flex!important}.trip-image-remove input{width:16px;min-height:0}.trip-card.has-image{gap:0;padding:0;overflow:hidden}.trip-card.has-image>.trip-card-content{padding:1rem 1.1rem .75rem}.trip-card.has-image>.trip-card-stats{margin:0 1.1rem 1.1rem}.trip-card-image{aspect-ratio:4/3;border-radius:22px 22px 0 0;max-height:320px}.trip-card-image,.trip-detail-image{object-fit:cover;width:100%;display:block}.trip-detail-image{border-radius:20px;max-height:310px;margin:-.3rem 0 1.15rem}.member-trip-index-card.has-image{grid-template-columns:104px minmax(0,1fr) auto;align-items:center}.member-trip-index-image{object-fit:cover;border-radius:13px;grid-row:span 2;width:104px;height:82px}.member-trip-hero-image{object-fit:cover;border-radius:18px 18px 0 0;width:calc(100% + 2rem);height:220px;margin:-1rem -1rem 1rem;display:block}@media (max-width:600px){.trip-card.has-image>.trip-card-content{padding:.9rem .9rem .65rem}.trip-card.has-image>.trip-card-stats{margin:0 .9rem .9rem}.trip-card-image{max-height:260px}.member-trip-index-card.has-image{grid-template-columns:86px minmax(0,1fr)}.member-trip-index-image{width:86px;height:70px}.member-trip-hero-image{height:190px}}.trip-meta-row{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:.5rem;display:flex}.trip-meta{color:#5d747d;align-items:center;gap:.35rem;min-width:0;font-size:.8rem;font-weight:750;display:inline-flex}.trip-meta>i{color:#177c95;background:#e3f2f5;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;line-height:1;display:grid}.trip-meta>i svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:11px;height:11px}.trip-meta>b{font:inherit;min-width:0}.trip-price{color:#3d6572}.trip-price>i{color:#a66b15;background:#fff1d7}.trip-meta.compact{gap:.25rem;font-size:.69rem}.trip-meta.compact>i{width:14px;height:14px}.trip-meta.compact>i svg{width:9px;height:9px}.member-trip-index-fee{display:inline-flex}.member-trip-index-card>.trip-price{white-space:nowrap;justify-self:start}.trip-location-label{align-items:center;gap:.35rem;display:inline-flex}.trip-location-label svg{fill:none;stroke:#187e98;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.member-home-trips .member-trip-home-list>.member-home-trip-card{border-bottom:1px solid #ecd9b5;border-radius:0;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:.75rem;padding:.75rem 0;display:grid}.member-home-trips .member-trip-home-list>.member-home-trip-card:first-child{padding-top:.15rem}.member-home-trips .member-trip-home-list>.member-home-trip-card:last-child{border-bottom:0;padding-bottom:.15rem}.member-home-trips .member-trip-home-list>.member-home-trip-card:hover{border-radius:10px;padding-inline:.5rem}.member-home-trip-image{object-fit:cover;background:#eaf2f4;border-radius:12px;width:88px;height:66px;display:block}.member-home-trips .member-trip-home-list>.member-home-trip-card>.member-home-trip-content{align-items:normal;gap:.42rem;min-width:0;display:grid}.member-home-trips .member-trip-home-list>.member-home-trip-card>.member-home-trip-content>div{justify-content:space-between;align-items:flex-start;gap:.5rem;min-width:0;display:flex}.member-home-trip-content strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-trip-index-card.has-image{grid-template-columns:1fr;gap:0;padding:0;display:grid;overflow:hidden}.member-trip-index-card.has-image>.member-trip-index-image{aspect-ratio:4/3;object-fit:cover;border-radius:18px 18px 0 0;grid-row:auto;width:100%;height:auto;max-height:300px}.member-trip-index-card.has-image>.trip-price{margin:0 1rem .65rem}.member-trip-index-card.has-image>.member-trip-index-statuses{margin:0 1rem 1rem;padding-inline-start:1.4rem}.member-trip-index-card.has-image>.member-trip-index-arrow{top:auto;bottom:1.12rem;translate:0}.member-trip-hero-image{object-fit:contain;background:#edf4f5;height:auto;max-height:420px}@media (max-width:600px){.member-home-trips .member-trip-home-list>.member-home-trip-card{grid-template-columns:74px minmax(0,1fr);gap:.6rem;padding:.6rem 0}.member-home-trip-image{width:74px;height:56px}.member-trip-hero-image,.member-trip-index-card.has-image>.member-trip-index-image{max-height:330px}}.member-home-trips .member-home-trip-content strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.45;display:block;overflow:visible}.member-trip-detail-visual,.member-trip-index-visual{position:relative;overflow:hidden}.member-trip-index-card.has-image>.member-trip-index-visual{border-radius:18px 18px 0 0;width:100%}.member-trip-index-visual>.member-trip-index-image{aspect-ratio:4/3;object-fit:cover;border-radius:0;width:100%;height:auto;max-height:300px;display:block}.member-trip-detail-visual{border-radius:18px 18px 0 0;width:calc(100% + 2rem);margin:-1rem -1rem 0}.member-trip-detail-visual>.member-trip-hero-image{border-radius:0;margin:0}.member-trip-image-badges{z-index:2;filter:drop-shadow(0 3px 8px #102d3d3d);flex-wrap:wrap;align-items:center;gap:.4rem;max-width:calc(100% - 1.4rem);display:flex;position:absolute;inset:.7rem .7rem auto auto}.member-trip-image-badges .badge,.member-trip-image-badges .trip-booking-status{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border:1px solid #ffffffb8;margin:0;padding:.38rem .7rem;font-size:.7rem;font-weight:950;box-shadow:0 2px 8px #102d3d2e}.member-trip-image-badges .trip-booking-status.booking-open{color:#fff;background:#0e956fe8;border-color:#9aead1}.member-trip-image-badges .trip-booking-status.waiting-only{color:#fff;background:#d97706eb;border-color:#ffd49e}.member-trip-image-badges .trip-booking-status.booking-closed,.member-trip-image-badges .trip-booking-status.not-open,.member-trip-image-badges .trip-booking-status.trip-ended{color:#fff;background:#253a45e8;border-color:#cfdbdf}.member-trip-image-badges .badge{color:#fff;background:#435a68e8}.member-trip-image-badges .badge.present{color:#fff;background:#176fbee8}.member-trip-image-badges .badge.waiting_list{color:#fff;background:#e09a12eb}.member-trip-image-badges .badge.cancelled{color:#fff;background:#c74539e8}.member-trip-index-info{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem .8rem;display:grid}.member-trip-index-info>span:first-child{color:var(--muted);font-size:.74rem}.member-trip-index-info>.trip-price{white-space:nowrap;justify-self:end}.member-trip-index-info>.trip-location{grid-column:1/-1}.member-trip-index-card.has-image>.member-trip-index-main{padding:.8rem 1rem 1rem}.member-trip-index-card.has-image>.member-trip-index-statuses{display:none}.member-trip-index-card.has-image>.member-trip-index-arrow{bottom:.9rem}@media (max-width:600px){.member-trip-index-visual>.member-trip-index-image{max-height:330px}.member-trip-detail-visual{width:calc(100% + 1.8rem);margin:-.9rem -.9rem 0}.member-trip-image-badges{gap:.3rem;inset:.55rem .55rem auto auto}.member-trip-image-badges .badge,.member-trip-image-badges .trip-booking-status{padding:.32rem .58rem;font-size:.64rem}.member-trip-index-card.has-image>.member-trip-index-main{padding:.72rem .85rem .9rem}.member-trip-index-info{gap:.32rem .55rem}}.member-trip-index-info>.trip-date{color:#4f6e78;font-size:.69rem}.member-trip-index-info>.trip-meta>i{color:#177c95;background:#e4f2f4;width:16px;height:16px}.member-trip-index-info>.trip-meta>i svg{width:10px;height:10px}.member-trip-index-info>.trip-price{color:#4f6e78}.member-trip-index-info>.trip-price>i{color:#177c95;background:#e4f2f4}.member-home-trip-head{justify-content:space-between;align-items:flex-start;gap:.55rem;width:100%;min-width:0;display:flex}.member-home-trip-head>strong{flex:1;min-width:0}.member-home-trip-statuses{flex:none;justify-content:flex-end;gap:.3rem;margin-inline-start:auto}.member-home-trip-statuses>.badge,.member-home-trip-statuses>.trip-booking-status{white-space:nowrap;padding:.25rem .42rem;font-size:.6rem}.member-home-trips .member-home-trip-content{padding:0}.member-home-trip-head{display:block}.member-home-trip-statuses{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;display:flex}.member-home-trip-statuses>.badge,.member-home-trip-statuses>.trip-booking-status{text-align:start;white-space:normal;margin:0;line-height:1.5}.member-home-trip-statuses>.badge,.member-home-trip-statuses>.trip-booking-status:not(.is-message){white-space:nowrap}.member-home-trip-statuses>.trip-booking-status.is-message{border-radius:var(--radius-md);width:100%;font-size:var(--font-size-caption);flex:1 0 100%;padding:.5rem .65rem}.member-home-trip-content>.member-trip-home-meta{justify-content:flex-start}@media (max-width:600px){.member-home-trip-statuses>.badge,.member-home-trip-statuses>.trip-booking-status{padding:.25rem .42rem;font-size:.64rem}.member-home-trip-statuses>.trip-booking-status.is-message{padding:.48rem .58rem;font-size:.68rem}}.member-trip-detail-visual:after,.member-trip-index-visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#102a3b73,#102a3b36 48%,#0000);height:42%;position:absolute;inset:0 0 auto}.trip-card-visual{border-radius:22px 22px 0 0;position:relative;overflow:hidden}.trip-card-visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#102a3b73,#102a3b36 48%,#0000);height:42%;position:absolute;inset:0 0 auto}.trip-card-visual>.trip-card-image{border-radius:0}.trip-card-content>h2{margin:0 0 .65rem}.trip-card-meta-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem 1rem;display:grid}.trip-card-meta-grid>.trip-price{white-space:nowrap;justify-self:end}.trip-card-meta-grid>.trip-location{grid-column:1/-1}.trip-card-meta-grid>.trip-meta{color:#4f6e78}.trip-card-meta-grid>.trip-meta>i{color:#177c95;background:#e4f2f4}.trip-card.has-image>.trip-card-content{padding-bottom:.85rem}.trip-card.has-image>.trip-card-stats{gap:.45rem}.trip-card.has-image>.trip-card-stats span{padding:.55rem .65rem;font-size:.78rem}.trip-card.has-image>.trip-card-stats b{white-space:nowrap}@media (max-width:600px){.trip-card-meta-grid{gap:.4rem .65rem}.trip-card-meta-grid>.trip-meta{font-size:.72rem}.trip-card.has-image>.trip-card-stats span{padding:.48rem .55rem;font-size:.72rem}}.admin-trip-details-meta{gap:.55rem 1rem}.admin-trip-details-meta>.trip-meta{color:#4f6e78}.admin-trip-details-meta>.trip-meta>i{color:#177c95;background:#e4f2f4;width:18px;height:18px}.admin-trip-details-meta>.trip-meta>i svg{width:11px;height:11px}.admin-trip-details-meta>.trip-price>i{color:#177c95;background:#e4f2f4}.admin-trip-detail-visual{border-radius:20px;margin:-.3rem 0 1.15rem;position:relative;overflow:hidden}.admin-trip-detail-visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#102a3b73,#102a3b36 48%,#0000);height:42%;position:absolute;inset:0 0 auto}.admin-trip-detail-visual>.trip-detail-image{border-radius:0;margin:0}.member-trip-detail-visual .member-trip-image-badges{inset:1rem 1rem auto auto}.member-trip-date>.trip-date,.member-trip-details-meta>.trip-meta{color:#4f6e78}.member-trip-date>.trip-date>i,.member-trip-details-meta>.trip-meta>i{color:#177c95;background:#e4f2f4;width:18px;height:18px}.member-trip-date>.trip-date>i svg,.member-trip-details-meta>.trip-meta>i svg{width:11px;height:11px}.member-trip-details-meta>.trip-price>i{color:#177c95;background:#e4f2f4}@media (max-width:600px){.member-trip-detail-visual .member-trip-image-badges{inset:.78rem .78rem auto auto}}.member-trip-detail-visual>.member-trip-hero-image{object-fit:contain;width:100%;height:auto;max-height:none;display:block}.member-trip-detail-visual.admin-trip-detail-visual{border-radius:20px 20px 0 0;width:calc(100% + 2rem);margin:-1rem -1rem 0}.member-trip-detail-visual.admin-trip-detail-visual>.trip-detail-image{object-fit:cover;border-radius:0;width:100%;height:auto;max-height:310px;margin:0}.member-trip-detail-visual>.member-trip-image-badges{-webkit-backdrop-filter:none;backdrop-filter:none;filter:drop-shadow(0 4px 10px #102d3d42);background:0 0;border:0;gap:6px;max-width:calc(100% - 32px);padding:0;inset:16px 16px auto auto}@media (max-width:600px){.member-trip-detail-visual.admin-trip-detail-visual{width:calc(100% + 1.8rem);margin:-.9rem -.9rem 0}.member-trip-detail-visual>.member-trip-image-badges{gap:4px;max-width:calc(100% - 24px);padding:0;inset:12px 12px auto auto}}.member-trip-detail-visual>.member-trip-image-badges{max-width:calc(100% - 44px);top:22px;right:22px}@media (max-width:600px){.member-trip-detail-visual>.member-trip-image-badges{max-width:calc(100% - 36px);top:18px;right:18px}}.filtered-results-count{color:var(--muted);margin:.65rem 0 1rem;font-size:.82rem}.filtered-results-count strong{color:var(--brand-dark)}.password-input-wrap{display:block;position:relative}.password-input-wrap input{width:100%;padding-right:3rem}.password-input-wrap button{min-height:34px;color:var(--brand-dark);background:#e5f2f6;border:0;border-radius:9px;padding:.3rem .65rem;font-size:.75rem;font-weight:900;position:absolute;top:50%;left:auto;right:.45rem;transform:translateY(-50%)}.remember-login{justify-content:flex-start;align-items:center;grid-template-columns:auto 1fr!important;gap:.55rem!important;display:flex!important}.remember-login input{width:18px;height:18px;margin:0}.remember-login span{font-size:.8rem}.registration-draft-note{color:#52707a;background:#f2fafb;border:1px solid #d7e9ed;border-radius:12px;padding:.75rem .9rem;font-size:.76rem;line-height:1.75}.trip-scan-waiting-confirm{gap:.7rem;display:grid}.trip-scan-waiting-confirm>div{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.trip-scan-waiting-confirm button{min-height:46px}@media (max-width:520px){.trip-scan-waiting-confirm>div{grid-template-columns:1fr}}.registration-password-input input{padding-inline-end:3rem}.password-input-wrap .password-eye-button{place-items:center;width:34px;min-height:34px;padding:0;display:grid}.password-eye-button svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.notification-bell{width:40px;height:40px;color:inherit;background:#ffffff18;border:1px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.notification-bell svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.notification-bell>span{color:#fff;background:#e44949;border:2px solid #fff;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 4px;font-size:.58rem;font-weight:950;line-height:1;display:grid;position:absolute;top:-4px;left:-5px}.notification-compose-card,.notification-history,.notification-inbox{margin-bottom:1rem}.notification-compose-card textarea{resize:vertical}.notification-inbox .section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.notification-inbox .section-heading .section-title{margin:0}.notification-list{gap:.55rem;display:grid}.notification-list>a,.notification-list>article{color:inherit;background:#fff;border:1px solid #dce8eb;border-radius:14px;padding:.85rem 1rem;display:block}.notification-list>.unread{background:#f0fbfd;border-color:#8acddd}.notification-list div{align-items:center;gap:.5rem;display:flex}.notification-list div>span{color:#11677b;background:#dff5f8;border-radius:999px;padding:.16rem .42rem;font-size:.62rem;font-weight:900}.notification-list p{color:var(--muted);margin:.35rem 0;line-height:1.7}.notification-history small,.notification-list small{color:var(--muted);font-size:.68rem}.notification-history>div{border-bottom:1px solid #e5edef;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.notification-history>div:last-child{border-bottom:0}.notification-history>div>span{gap:.2rem;display:grid}.notification-history>div>b{white-space:nowrap;color:var(--brand-dark);font-size:.74rem}@media (max-width:600px){.notification-bell{width:36px;height:36px}.notification-inbox .section-heading{align-items:flex-start}.notification-inbox .section-heading button{min-height:36px;padding:.45rem .6rem;font-size:.65rem}}.alert.info{color:#245d73;background:#eef7fb;border-color:#b9dbe8}.attendance-camera-feedback.pending{background:#8a6519e6}.attendance-sync-status{color:#176b58;background:#edf7f4;border-radius:10px;align-items:center;gap:.45rem;min-height:30px;padding:.38rem .62rem;font-size:.68rem;font-weight:900;display:flex}.attendance-sync-status i{background:#20a983;border-radius:50%;flex:none;width:8px;height:8px}.attendance-sync-status.offline{color:#755400;background:#fff5dc}.attendance-sync-status.offline i{background:#d79620}.attendance-sync-status.review{color:#963a2f;background:#fff0ee}.attendance-sync-status.review i{background:#cf5144}.attendance-scanner-current.local{color:#245d7a;background:#eef5fb}.attendance-scan-check.local,.attendance-scanner-current.local>span{color:#245d7a;background:#d7eaf5}.attendance-scan-check.pending{color:#765400;background:#ffe8ad}@media (max-width:767px){.attendance-scanner-panel{grid-template-rows:auto auto auto minmax(0,1fr) auto}.attendance-scanner-panel>header{grid-row:1}.attendance-sync-status{grid-row:2}.attendance-scanner-current,.attendance-scanner-error{grid-row:3}.attendance-scanner-recent{grid-row:4}.attendance-scanner-actions{grid-row:5}}.phone-contact-trigger{width:auto;min-height:32px;color:var(--brand-dark);font:inherit;text-underline-offset:3px;white-space:nowrap;cursor:pointer;background:0 0;border:0;justify-self:start;padding:.2rem .35rem;text-decoration:underline;display:inline-block}.phone-contact-dialog{border:1px solid var(--line);width:min(90vw,380px);max-height:85dvh;color:var(--ink);text-align:center;background:#fff;border-radius:22px;margin:auto;padding:1.3rem;position:fixed;inset:0;overflow:auto;box-shadow:0 20px 70px #0003}.phone-contact-dialog::backdrop{background:#102b3a88}.phone-contact-dialog h2{margin:0 0 .7rem;font-size:1.05rem}.phone-contact-dialog p{margin:.6rem 0}.phone-contact-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:1rem 0;display:grid}.trip-member-quick-add{gap:.75rem;display:grid}.trip-member-live-search{gap:.4rem}.trip-member-live-search>div{position:relative}.trip-member-live-search input{padding-inline-end:4.5rem}.trip-search-clear{min-height:38px;color:var(--brand-dark);background:#e5f2f6;border-radius:10px;padding:.35rem .7rem;font-size:.75rem;position:absolute;inset-block-start:50%;inset-inline-end:.4rem;transform:translateY(-50%)}.trip-member-live-search small,.trip-member-search-status{color:var(--muted);font-size:.75rem;line-height:1.55}.trip-member-search-status:empty{display:none}.trip-member-search-results{gap:.55rem;display:grid}.trip-member-search-result{border:1px solid var(--line);background:#f9fbfb;border-radius:14px;grid-template-columns:auto minmax(0,1fr) minmax(210px,auto);align-items:center;gap:.75rem;padding:.75rem;display:grid}.trip-member-search-result>.avatar{border-radius:14px;width:48px;height:48px;overflow:hidden}.trip-member-search-result>.avatar img{object-fit:cover;width:100%;height:100%}.trip-member-result-info{gap:.1rem;min-width:0;display:grid}.trip-member-result-info strong{overflow-wrap:anywhere;font-size:.9rem}.trip-member-result-info small,.trip-member-result-info span{color:var(--muted);font-size:.72rem}.trip-member-result-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.trip-member-result-actions button{border-radius:11px;min-height:42px;padding:.55rem .75rem;font-size:.75rem}.trip-member-search-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:13px;padding:1rem;font-size:.8rem}.trip-capacity-choice{color:#65410d;background:#fff8ea;border:1px solid #e9bd73;border-radius:14px;gap:.8rem;padding:1rem;display:grid}.trip-capacity-choice strong{font-size:1rem;display:block}.trip-capacity-choice p{margin:.25rem 0 0;line-height:1.65}.trip-capacity-choice>div:last-child{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.trip-capacity-choice button{min-height:44px}.trip-capacity-cancel{color:#6d5c42;background:0 0}.trip-scan-capacity-choice{text-align:right;margin-top:.8rem}.trip-scan-capacity-choice>div:last-child{grid-template-columns:1fr 1fr;display:grid}.trip-scan-capacity-choice button{width:100%}@media (max-width:760px){.trip-member-search-result{grid-template-columns:auto minmax(0,1fr)}.trip-member-result-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.trip-member-result-actions .badge,.trip-member-result-actions button{text-align:center;justify-content:center;width:100%}.trip-capacity-choice>div:last-child{grid-template-columns:1fr;display:grid}.trip-capacity-choice button{width:100%}.trip-scan-capacity-choice>div:last-child{grid-template-columns:1fr}}@media (max-width:380px){.trip-member-search-result{text-align:center;grid-template-columns:1fr}.trip-member-search-result>.avatar{margin:auto}.trip-member-result-actions{grid-template-columns:1fr}}.profile-contact-icons{gap:.6rem;margin-top:.75rem;display:flex}.profile-contact-icons a{color:#237e9b;background:#e9f5f9;border:1px solid #c9e3eb;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.profile-contact-icons a.profile-contact-whatsapp{color:#168448;background:#e6f7ed;border-color:#b7e5cc}.profile-contact-icons svg{width:23px;height:23px}.student-contact .phone-contact-trigger{min-height:36px;padding:0;text-decoration:none}.admin-header{padding-top:env(safe-area-inset-top);background:linear-gradient(112deg,var(--color-text-brand),var(--color-action-primary));box-shadow:0 4px 18px #123e521f}.admin-header-inner{min-height:64px;padding-block:var(--space-2)!important;grid-template-columns:minmax(0,1fr) auto!important}.admin-header .brand-link{min-width:0}.admin-header .brand-name,.member-header .brand-name{line-height:1.7}.admin-header .brand-name>span,.member-header .brand-name>span{font-size:inherit;line-height:inherit}.header-account{gap:var(--space-2)}.header-account>form button{color:#fff;min-height:42px;box-shadow:none;background:#ffffff1a;border:1px solid #ffffff3d}.admin-desktop-navigation{display:none}@media (min-width:768px){.admin-desktop-navigation{justify-content:center;align-items:center;gap:var(--space-1);width:min(var(--content-max-width),calc(100% - var(--space-6)));margin:var(--space-3) auto 0;padding:var(--space-2);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--elevation-raised);display:flex}.admin-desktop-navigation>a,.admin-desktop-navigation>button{justify-content:center;align-items:center;gap:var(--space-2);min-width:112px;min-height:48px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-strong);box-shadow:none;background:0 0;border:0;display:flex;position:relative}.admin-desktop-navigation svg{flex:none;width:20px;height:20px}.admin-desktop-navigation>.active,.admin-desktop-navigation>a:hover,.admin-desktop-navigation>button:hover{background:var(--color-action-primary-subtle);color:var(--color-text-brand)}.admin-desktop-navigation>.active:after{content:"";border-radius:var(--radius-pill);background:var(--color-action-primary);height:3px;position:absolute;inset:auto 24% 2px}.admin-main{padding-top:var(--space-5)!important}.admin-more-backdrop{z-index:var(--layer-overlay);padding:132px var(--space-5) var(--space-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#102c3c6b;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.admin-more-menu{width:min(760px,100%);max-height:calc(100dvh - 156px);padding:var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);box-shadow:var(--elevation-overlay);animation:admin-menu-desktop-in var(--motion-short) var(--motion-ease-out);overflow-y:auto}@keyframes admin-menu-desktop-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.admin-more-heading{padding:0 0 var(--space-3);border-bottom:1px solid var(--color-border-default);justify-content:space-between;align-items:center;display:flex}.admin-more-heading>div{gap:var(--space-1);display:grid}.admin-more-heading small{color:var(--color-action-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-strong)}.admin-more-heading strong{font-size:var(--font-size-title-sm)}.admin-more-heading button{border-radius:var(--radius-md);background:var(--color-action-primary-subtle);width:48px;height:48px;min-height:48px;color:var(--color-text-brand);place-items:center;padding:0;display:grid}.admin-more-heading button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:22px;height:22px}.admin-more-links{gap:var(--space-3);padding-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-more-group{border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);overflow:hidden}.admin-more-group>summary{min-height:52px;padding:var(--space-3);cursor:pointer;color:var(--color-text-brand);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-heading);justify-content:space-between;align-items:center;list-style:none;display:flex}.admin-more-group>summary::-webkit-details-marker{display:none}.admin-more-group>summary:after{content:"⌄";border-radius:var(--radius-sm);background:var(--color-action-primary-subtle);width:28px;height:28px;color:var(--color-action-primary);place-items:center;display:grid}.admin-more-group[open]>summary{border-bottom:1px solid var(--color-border-default);background:var(--color-surface-subtle)}.admin-more-group>a{gap:var(--space-1);min-height:60px;margin:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-primary);display:grid}.admin-more-group>a:hover{border-color:var(--color-border-strong);background:var(--color-action-primary-subtle)}.admin-more-links strong{font-size:var(--font-size-body-sm)}.admin-more-links span{color:var(--color-text-secondary);font-size:var(--font-size-label);line-height:var(--line-height-body)}}@media (max-width:767px){html{scroll-padding-top:76px;scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom))}body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.admin-header{top:0}.admin-header-inner{min-height:58px;padding:.45rem max(.7rem,env(safe-area-inset-left)) .45rem max(.7rem,env(safe-area-inset-right))!important}.admin-header .brand-link .brand-logo{width:36px!important;height:36px!important}.admin-header .brand-name{font-size:.65rem}.header-account-profile{justify-content:center;min-width:44px;min-height:44px}.header-account-avatar{width:36px;height:36px}.header-account>form button{min-height:42px;padding:.4rem .6rem}.admin-mobile-nav{box-shadow:0 -8px 24px #173d501f;min-height:68px!important;padding:.35rem max(.35rem,env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left))!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;background:#fffffff7!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}.admin-mobile-nav.nav-items-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}.admin-mobile-nav a,.admin-mobile-nav>button{touch-action:manipulation;border-radius:var(--radius-md)!important;min-height:58px!important;color:var(--color-text-secondary)!important;gap:.18rem!important}.admin-mobile-nav a+a:after,.admin-mobile-nav>button:after{display:none}.admin-mobile-nav a.active,.admin-mobile-nav>button.active{background:var(--color-action-primary-subtle)!important;color:var(--color-text-brand)!important;box-shadow:none!important}.admin-mobile-nav a.active:before,.admin-mobile-nav>button.active:before{content:"";border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--color-action-primary);height:3px;position:absolute;inset:-.35rem 24% auto}.admin-mobile-nav a.active span,.admin-mobile-nav a.active svg,.admin-mobile-nav>button.active span,.admin-mobile-nav>button.active svg{color:inherit!important}.admin-more-backdrop{z-index:1000;background:#102c3c94;direction:rtl!important;justify-content:flex-end!important}.admin-more-menu{width:min(88vw,360px)!important;padding:max(var(--space-4),env(safe-area-inset-top)) var(--space-3) calc(var(--space-4) + env(safe-area-inset-bottom))!important;border:0!important;border-left:1px solid var(--color-border-default)!important;border-radius:var(--radius-lg) 0 0 var(--radius-lg)!important;animation:admin-drawer-in-rtl var(--motion-short) var(--motion-ease-out)!important;direction:rtl!important;box-shadow:-18px 0 55px #102c3c3d!important}@keyframes admin-drawer-in-rtl{0%{transform:translate(105%)}to{transform:translate(0)}}.admin-more-heading{top:calc(-1 * max(var(--space-4),env(safe-area-inset-top)));z-index:2;padding:max(var(--space-3),env(safe-area-inset-top)) var(--space-1) var(--space-3);background:var(--color-surface-default);position:sticky}.admin-more-heading button{border-radius:var(--radius-md);background:var(--color-action-primary-subtle);width:48px;height:48px;min-height:48px;color:var(--color-text-brand);place-items:center;padding:0;display:grid}.admin-more-heading button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:22px;height:22px}.admin-more-group{border-color:var(--color-border-default);border-radius:var(--radius-lg)}.admin-more-group>summary{min-height:52px;color:var(--color-text-brand)}.admin-more-group>a{border-color:var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-subtle);min-height:60px}.page-context-header{width:100%;margin:0 0 var(--space-3);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.page-context-topline{gap:var(--space-2)}.page-back-link{min-width:48px;min-height:44px;padding:var(--space-2) var(--space-3);border-color:var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-default);box-shadow:none}.page-context-title{min-width:0;color:var(--color-text-brand);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-breadcrumbs{display:none}}@media (min-width:768px){.page-context-title{display:none}}.admin-main>.page-context-header+* .page-heading .eyebrow[href^="/admin/"],.admin-main>.page-context-header+.page-heading .eyebrow[href^="/admin/"]{display:none}@media (max-width:360px){.admin-header .brand-name{display:none}.header-account{gap:var(--space-1)}.header-account>form button{padding-inline:.5rem}.admin-mobile-nav a,.admin-mobile-nav>button{font-size:.66rem!important}}@media (hover:none){.admin-mobile-nav a:active,.admin-mobile-nav>button:active,.admin-more-group>a:active{background:var(--color-action-primary-subtle)!important;color:var(--color-text-brand)!important}}body:has(.attendance-scanner-shell){padding-bottom:0!important}.admin-desktop-navigation:has(~.admin-main .attendance-scanner-shell),.admin-header:has(~.admin-main .attendance-scanner-shell){display:none!important}.rtl-back-arrow,.rtl-forward-arrow{direction:ltr;unicode-bidi:isolate;line-height:1;display:inline-block;transform:none}body{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body)}label{font-size:var(--font-size-body-sm);font-weight:var(--font-weight-emphasis)}.button,button,label{line-height:var(--line-height-label)}.button,button{font-size:var(--font-size-button);font-weight:var(--font-weight-heading)}.alert{line-height:var(--line-height-body)}.alert,.eyebrow{font-weight:var(--font-weight-emphasis)}.eyebrow{font-size:var(--font-size-label);line-height:var(--line-height-label)}.branded-title h1,.page-heading h1{font-size:var(--font-size-page-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading)}.page-heading p{font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.section-title{font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading)}.badge{font-size:var(--font-size-caption)}.badge,.member-header-title{font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.member-header-title{font-size:var(--font-size-body-sm)}.member-portal .member-nav a span{font-size:var(--font-size-navigation);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.meeting-list-info a,.student-info a{font-size:var(--font-size-body-emphasis);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.meetings-list .meeting-list-title-line>a{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;flex:14rem;min-width:0;overflow:visible}.meeting-list-info span,.student-info small,.student-info span{font-size:var(--font-size-label);line-height:var(--line-height-caption)}.meeting-attendance-count,.meeting-attendance-rate{font-size:var(--font-size-caption);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.meeting-choice strong,.trip-card h2{font-size:var(--font-size-card-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading)}.meeting-choice span,.trip-meta{font-size:var(--font-size-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-caption)}.attendance-chart-heading .section-title{font-size:var(--font-size-section-title)}.attendance-chart-column>small,.attendance-chart-column>strong,.attendance-chart-guides,.attendance-chart-heading p,.attendance-chart-legend span{font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.attendance-chart-column>strong,.attendance-chart-legend span{font-weight:var(--font-weight-emphasis)}.admin-more-heading small,.member-more-menu>div small{font-size:var(--font-size-caption);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.admin-more-heading strong,.member-more-menu>div strong{font-size:var(--font-size-card-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading)}.admin-more-group>summary{font-size:var(--font-size-body-sm);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.admin-more-links strong,.member-more-menu>a strong{font-size:var(--font-size-button);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.admin-more-links span,.member-more-menu>a span{font-size:var(--font-size-label);font-weight:var(--font-weight-regular);line-height:var(--line-height-caption)}@media (max-width:767px){.branded-title h1,.page-heading h1{font-size:var(--font-size-page-title)}.admin-mobile-nav a,.admin-mobile-nav>button{font-weight:var(--font-weight-medium);line-height:var(--line-height-label);font-size:var(--font-size-navigation)!important}}@media (max-width:380px){.attendance-chart-column>small,.attendance-chart-column>strong{font-size:var(--font-size-caption)}}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.member-management-page,.member-new-page,.member-profile-page{color:var(--color-text-primary)}.member-management-page .primary,.member-new-page .primary,.member-profile-page .primary{background:var(--color-action-primary);color:var(--color-text-on-primary)}.member-management-page ::placeholder,.member-new-page ::placeholder,.member-profile-page ::placeholder{color:var(--color-text-secondary);opacity:1}.member-management-page .page-heading,.member-new-page .page-heading,.member-profile-page .page-heading{margin-bottom:var(--space-5)}.member-management-page .heading-actions,.member-profile-page .heading-actions{align-items:center}.member-export-action>span{font-size:var(--font-size-body-emphasis);line-height:1}.member-management-page .student-filter-grid{gap:var(--space-3);padding:var(--space-4);border-color:var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);box-shadow:var(--elevation-raised)}.member-admin-form input,.member-admin-form select,.member-edit-form input,.member-edit-form select,.member-management-page .student-filter-grid input,.member-management-page .student-filter-grid select{min-height:var(--control-min-height);border-color:var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-default);color:var(--color-text-primary)}.member-search-field{min-width:0}.member-search-field input{height:100%}.member-management-page .student-grid{gap:var(--space-3)}.member-management-page .student-card{gap:var(--space-3);padding:var(--space-4);border-color:var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);box-shadow:var(--elevation-none)}.member-management-page .student-card>.avatar{border-radius:var(--radius-lg);background:var(--color-action-primary-subtle)}.member-management-page .student-info{gap:var(--space-1)}.member-management-page .student-info>span,.member-management-page .student-name{overflow-wrap:anywhere;white-space:normal}.member-management-page .student-contacts{gap:var(--space-2) var(--space-3);flex-wrap:wrap}.member-management-page .student-contact{overflow-wrap:anywhere;max-width:100%}.member-management-page .student-actions{gap:var(--space-2);padding-top:var(--space-3);border-color:var(--color-border-default)}.member-management-page .student-actions>.edit,.member-management-page .student-actions>button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-target-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label);display:flex}.student-action-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.member-management-page .student-actions .quick{background:var(--color-action-primary-subtle);color:var(--color-text-brand)}.member-management-page .student-actions .edit{background:var(--color-status-warning-surface);color:var(--color-status-warning-text)}.member-management-page .student-actions .remove{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}.member-management-page .empty-state{justify-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);border-color:var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);color:var(--color-text-secondary);display:grid}.member-management-page .empty-state strong{color:var(--color-text-primary);font-size:var(--font-size-card-title)}.member-management-page .empty-state .button{margin-top:var(--space-2)}.quick-student-modal{border-color:var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--elevation-overlay)}.quick-student-heading{border-color:var(--color-border-default)}.quick-student-heading span{color:var(--color-action-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis)}.quick-student-heading h2{font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);overflow-wrap:anywhere}.quick-modal-close{width:var(--touch-target-min);height:var(--touch-target-min);min-height:var(--touch-target-min);border-radius:var(--radius-md);background:var(--color-action-primary-subtle);color:var(--color-text-brand);place-items:center;padding:0;display:grid}.quick-modal-close .student-action-icon{width:20px;height:20px}.quick-student-modal-data>div{border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.quick-student-modal-data span{color:var(--color-text-secondary);font-size:var(--font-size-caption)}.quick-student-modal-data b{font-size:var(--font-size-body-sm);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-body)}.delete-confirm{border-color:var(--color-status-danger);border-radius:var(--radius-lg);background:var(--color-status-danger-surface)}.delete-confirm p{color:var(--color-status-danger-text);line-height:var(--line-height-body)}.member-profile-page .profile-grid{gap:var(--space-4)}.member-new-card,.member-profile-page .card{border-color:var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);box-shadow:var(--elevation-raised)}.member-profile-page .qr-panel{gap:var(--space-3)}.member-profile-page .admin-profile-photo-form{gap:var(--space-2);padding:var(--space-3);border-color:var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.member-admin-form,.member-edit-form{gap:var(--space-4);align-items:start}.member-admin-form>.birth-date-field,.member-admin-form>label,.member-edit-form>.birth-date-field,.member-edit-form>label{min-width:0}.member-admin-form label small,.member-edit-form label small{color:var(--color-text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.profile-photo-input{min-width:0}.profile-photo-picker{min-height:var(--control-min-height);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-default);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid;position:relative;overflow:hidden}.profile-photo-picker:focus-within{border-color:var(--color-action-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}@supports (color:color-mix(in lab,red,red)){.profile-photo-picker:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-focus-ring) 18%,transparent)}}.profile-photo-picker input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.profile-photo-picker-action{padding:var(--space-2) var(--space-3);background:var(--color-action-primary-subtle);color:var(--color-text-brand);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis);white-space:nowrap;align-self:stretch;place-items:center;display:grid}.profile-photo-picker-name{min-width:0;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular);text-overflow:ellipsis;white-space:nowrap;direction:rtl;overflow:hidden}.member-form-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-default);display:flex}.member-form-actions>*{min-width:10rem}.member-profile-page .student-attendance-report{border-color:var(--color-border-default)}.member-profile-page .student-attendance-row{border-color:var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-default)}.member-profile-page .student-attendance-row strong{overflow-wrap:anywhere}.member-profile-page .badge.present{background:var(--color-status-success-surface);color:var(--color-status-success-text)}.member-profile-page .badge.absent{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}.member-profile-page .badge.late{background:var(--color-status-warning-surface);color:var(--color-status-warning-text)}.member-new-card{padding:var(--space-5)}@media (max-width:767px){.member-management-page .heading-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.member-management-page .heading-actions>.primary{grid-column:1/-1}.member-management-page .student-filter-grid{padding:var(--space-3)}.member-management-page .student-card{padding:var(--space-3);grid-template-columns:76px minmax(0,1fr)}.member-management-page .student-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.member-management-page .student-actions .remove{grid-column:1/-1}.member-profile-page .branded-title{align-items:center}.member-profile-page .heading-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.member-form-actions{grid-template-columns:1fr 1fr;display:grid}.member-form-actions>*{width:100%;min-width:0}.member-new-card{padding:var(--space-4)}}@media (max-width:374px){.member-form-actions,.member-management-page .heading-actions,.member-profile-page .heading-actions{grid-template-columns:1fr}.member-management-page .student-card{grid-template-columns:64px minmax(0,1fr)}.member-management-page .student-card .avatar{width:64px!important;height:64px!important}.member-management-page .student-actions{grid-template-columns:1fr}.member-management-page .student-actions .remove{grid-column:auto}.quick-student-modal-actions{grid-template-columns:1fr}}.inline-action-icon,.member-list-action-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.rtl-directional-icon{transform:scaleX(-1)}.photo-upload-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:26px;height:26px}.member-account-note{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-action-primary-subtle);color:var(--color-text-secondary);font-size:var(--font-size-body-sm);line-height:var(--line-height-body);margin:0}.member-profile-incomplete{background:var(--color-status-warning-surface)!important;color:var(--color-status-warning-text)!important}.member-profile-edit{gap:var(--space-3);margin-top:var(--space-4);display:grid}.member-profile-edit>h2{font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);margin:0}.member-profile-edit>p{color:var(--color-text-secondary);font-size:var(--font-size-body-sm);margin:0}.member-own-profile-form{gap:var(--space-4);margin-top:var(--space-2)}.member-own-profile-form input,.member-own-profile-form select{min-height:var(--control-min-height);border-color:var(--color-border-default);border-radius:var(--radius-md)}.member-own-profile-form .birth-date-field{min-width:0}.member-readonly-identifiers{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-subtle);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.member-readonly-identifiers>div{gap:var(--space-1);min-width:0;display:grid}.member-readonly-identifiers span,.member-readonly-identifiers>small{color:var(--color-text-secondary);font-size:var(--font-size-caption)}.member-readonly-identifiers b{overflow-wrap:anywhere;font-size:var(--font-size-body-sm)}.member-readonly-identifiers>small{grid-column:1/-1}.member-profile-photo-disclosure>summary:after{content:none!important;display:none!important}.member-management-page .student-contact{align-items:center;min-height:36px}.member-management-page .student-contact-icon{flex:none}.member-management-page .student-contact .phone-contact-trigger{min-height:36px;padding-inline:var(--space-1)}.member-management-page .student-contact .phone-contact-trigger:hover{filter:none;box-shadow:none;background:0 0;transform:none}.password-input-wrap .password-eye-button{width:44px;min-height:44px}.member-contact-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}@media (max-width:600px){.notification-bell{width:44px;height:44px}.admin-header .brand-link,.member-header .member-brand-link{min-width:44px;min-height:44px}}@media (max-width:767px){.member-portal,body:has(.member-portal){padding-bottom:0}.member-main{padding-bottom:var(--member-page-bottom-clearance)!important}.member-mobile-nav{min-height:calc(var(--member-bottom-nav-height) + env(safe-area-inset-bottom))!important;padding-bottom:calc(.35rem + env(safe-area-inset-bottom))!important}.member-management-page .student-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-management-page .student-filter-grid .member-search-field{grid-column:1/-1}.member-management-page .student-filter-grid select[name=perPage]{min-width:0}}@media (min-width:375px) and (max-width:767px){.member-management-page .heading-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.member-management-page .heading-actions>.primary{grid-column:auto}}@media (max-width:374px){.member-management-page .student-card{gap:var(--space-2);grid-template-columns:56px minmax(0,1fr)}.member-management-page .student-card .avatar{border-radius:var(--radius-md)!important;width:56px!important;height:56px!important}.member-management-page .student-info{font-size:var(--font-size-body-sm)}.member-management-page .student-actions>.edit,.member-management-page .student-actions>button{font-size:var(--font-size-body-sm)!important}.member-readonly-identifiers{grid-template-columns:1fr}.member-readonly-identifiers>small{grid-column:auto}}.member-profile-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);margin-inline-start:auto;display:flex}.member-profile-header-actions .profile-contact-icons{direction:ltr;flex:none;margin:0}.member-profile-header-actions .profile-contact-icons a{border-radius:var(--radius-md);width:44px;height:44px;box-shadow:none}.member-profile-header-actions .profile-contact-icons svg{width:21px;height:21px}body:has(.member-attendance-page) .member-floating-qr{display:none}@media (max-width:767px){.member-management-page .student-card{grid-template-columns:clamp(56px,20vw,76px) minmax(0,1fr);align-items:start}.member-management-page .student-card>.avatar{aspect-ratio:auto;grid-area:1/1;align-self:stretch;min-height:100%;width:100%!important;height:100%!important}.member-management-page .student-card>.avatar img{object-fit:cover;width:100%;height:100%}.member-management-page .student-card>.student-info{grid-area:1/2;width:100%;min-width:0}.member-management-page .student-info>*{min-width:0;max-width:100%}.member-management-page .student-contacts{grid-template-columns:minmax(0,1fr);align-items:start;row-gap:0;width:100%;display:grid}.member-management-page .student-contact{grid-template-columns:25px minmax(0,1fr);width:100%;min-width:0;max-width:100%;display:grid}.member-management-page .student-contact .phone-contact-trigger{text-align:right;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;max-width:100%;overflow:hidden}.member-management-page .student-actions{grid-area:2/1/auto/-1}.member-profile-page>.page-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.member-profile-header-actions{justify-items:end;gap:var(--space-2);display:grid}.member-profile-header-actions .heading-actions{grid-template-columns:1fr 1fr;width:min(100%,24rem)}.member-profile-header-actions .profile-contact-icons{order:-1}.member-attendance-page .member-record-row{grid-template-columns:minmax(0,1fr)!important}.member-attendance-page .member-record-row>*{min-width:0;grid-column:1!important}.member-attendance-page .member-record-main{align-items:stretch;gap:var(--space-2);flex-direction:column;width:100%;min-width:0;display:flex}.member-attendance-page .member-record-status{order:1;justify-content:space-between;align-items:center;width:100%;min-width:0;display:flex}.member-attendance-page .member-record-details{order:2;gap:.2rem;width:100%;min-width:0;display:grid}.member-attendance-page .member-record-details h2{overflow-wrap:anywhere;width:100%;margin:0;font-size:.95rem;line-height:1.65;display:block}.member-attendance-page .member-record-badges{justify-content:flex-start;min-width:0}.member-attendance-page .member-meeting-countdown{width:100%;margin-top:var(--space-3);text-align:start}}@media (max-width:520px){.member-profile-page>.page-heading{grid-template-columns:1fr}.member-profile-header-actions{justify-self:end;justify-items:end;width:100%}.member-profile-header-actions .heading-actions{width:100%}}body:has(.public-login-page){flex-direction:column;min-height:100dvh;padding-bottom:0;display:flex}body:has(.public-login-page)>.app-content{flex-direction:column;flex:auto;display:flex;min-height:0!important}body:has(.public-login-page)>.app-content>.page-context-header{flex:none;width:max-content;max-width:calc(100% - 2rem);margin:.6rem 1rem 0 auto}.public-login-page{width:100%;padding:max(.75rem,env(safe-area-inset-top)) 1rem .75rem;flex:auto;justify-content:center;align-items:center;min-height:0!important;display:flex!important}.public-login-page>.card{width:min(100%,28rem);margin:0;padding:1.15rem}.public-login-page .login-brand{margin-bottom:1rem}.public-login-page .login-brand .brand-logo{margin:0 auto .55rem;width:82px!important}.public-login-page .login-brand h1{font-size:1.45rem;line-height:var(--line-height-heading)}.public-login-page .login-brand p{font-size:var(--font-size-label);line-height:var(--line-height-caption);margin:.25rem 0 0}.public-login-page form.space-y-4>*+*{margin-top:.7rem}body:has(.public-login-page)>.app-footer{flex:none;gap:.2rem;margin-top:0;padding:.65rem .75rem max(.65rem,env(safe-area-inset-bottom))!important}body:has(.public-login-page)>.app-footer .app-download-links-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;width:min(100%,23rem);margin:0;display:grid}body:has(.public-login-page)>.app-footer .app-download-badge{border-radius:12px;min-width:0;min-height:44px;padding:.35rem .55rem}body:has(.public-login-page)>.app-footer .app-download-badge svg{width:23px;height:23px}body:has(.public-login-page)>.app-footer .footer-social-links{gap:.35rem;margin:.15rem 0}body:has(.public-login-page)>.app-footer .footer-social-links a{min-height:32px;padding:.25rem .5rem;font-size:.64rem}body:has(.public-login-page)>.app-footer .footer-social-links a svg{width:18px;height:18px}body:has(.public-login-page)>.app-footer p{font-size:.62rem;line-height:1.4}@media (max-height:700px){body:has(.public-login-page)>.app-content>.page-context-header{margin-top:.2rem}.public-login-page{align-items:flex-start;padding-block:.2rem}.public-login-page>.card{padding:.7rem .9rem}.public-login-page .login-brand{margin-bottom:.45rem}.public-login-page .login-brand .brand-logo{margin-bottom:.2rem;width:56px!important}.public-login-page .login-brand h1{font-size:1.22rem}.public-login-page .login-brand p{margin-top:.1rem;line-height:1.35}.public-login-page form.space-y-4>*+*{margin-top:.38rem}body:has(.public-login-page)>.app-footer{padding-block:.35rem max(.35rem,env(safe-area-inset-bottom))!important}body:has(.public-login-page)>.app-footer p{font-size:.56rem;line-height:1.25}}.interface-icon{fill:none;stroke:currentColor;flex:none;width:1em;height:1em;display:block}.section-title-with-icon{align-items:center;gap:var(--space-2);display:flex}.section-title-with-icon .interface-icon{width:22px;height:22px;color:var(--color-action-primary)}.attendance-scanner-camera-bar>a .interface-icon,.member-quick-qr-close .interface-icon,.photo-popup-close .interface-icon,.quick-modal-close .interface-icon{width:22px;height:22px}.attendance-scan-check .interface-icon,.attendance-scan-mark .interface-icon,.attendance-scanner-current>span .interface-icon{width:18px;height:18px}.site-confirm-backdrop{overscroll-behavior:contain;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.quick-student-modal,.site-confirm-modal{max-height:calc(100dvh - max(2rem,env(safe-area-inset-top)) - max(2rem,env(safe-area-inset-bottom)));overscroll-behavior:contain;overflow-y:auto}.site-confirm-actions>form{width:100%;display:flex}.site-confirm-actions>form>button{width:100%;min-height:48px}.admin-notifications-page{max-width:760px;margin-inline:auto}.notification-page-heading{margin-bottom:1rem}.notification-center{gap:2rem;display:grid}.notification-center section>h2,.notification-section-heading h2{margin:0;font-size:1.22rem;font-weight:950}.notification-section-heading p{color:var(--muted);margin:.25rem 0 0;font-size:.86rem}.notification-device-status{color:var(--brand-dark);background:#eaf5f7;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.15rem;display:grid}.notification-device-status h2{margin:0;font-size:1rem;font-weight:950}.notification-device-status p{color:#496873;margin:.25rem 0 0;font-size:.78rem;line-height:1.55}.notification-device-status dl{gap:.55rem;margin:0;display:flex}.notification-device-status dl div{text-align:center;background:#fff;border-radius:12px;gap:.12rem;min-width:74px;padding:.55rem .7rem;display:grid}.notification-device-status dt{color:#5d7881;font-size:.7rem;font-weight:800}.notification-device-status dd{color:var(--brand-dark);font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem;font-weight:950}.notification-send-section{background:#fff;border-radius:18px;padding:clamp(1rem,3vw,1.45rem);box-shadow:0 10px 34px #183f520d}.notification-simple-form{gap:1rem;margin-top:1rem;display:grid}.notification-simple-form label{min-width:0}.notification-simple-form textarea{resize:vertical;min-height:112px}.notification-content-fields,.notification-context-fields{gap:1rem;display:grid}.notification-recipient-count{color:#315968;background:#edf7f8;border-radius:12px;margin:-.15rem 0 0;padding:.7rem .85rem;font-size:.86rem}.notification-recipient-count strong{color:var(--brand-dark)}.notification-person-picker{gap:.65rem;display:grid;position:relative}.notification-search-results{z-index:10;border:1px solid var(--line);background:#fff;border-radius:14px;max-height:280px;display:grid;position:absolute;inset:calc(100% - .3rem) 0 auto;overflow:auto;box-shadow:0 16px 36px #173d5024}.notification-search-results button{text-align:start;background:#fff;border-radius:0;justify-items:start;gap:.1rem;min-height:54px;display:grid}.notification-search-results button+button{border-top:1px solid var(--line)}.notification-search-results button:focus-visible,.notification-search-results button:hover{background:#eef7f9}.notification-search-results span{color:var(--muted);direction:ltr;font-size:.75rem}.notification-selected-people{flex-wrap:wrap;gap:.45rem;display:flex}.notification-selected-people>span{min-height:40px;color:var(--brand-dark);background:#e8f3f6;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.82rem;font-weight:900;display:inline-flex}.notification-selected-people button{width:32px;height:32px;min-height:32px;color:var(--brand-dark);background:#fff;border-radius:50%;padding:0;font-size:1.1rem}.notification-send-button{width:100%;min-height:52px;margin-top:.15rem}.notification-automatic-section,.notification-history-section{gap:.85rem;display:grid}.notification-automation-list,.notification-history-list{background:#fff;border-radius:18px;display:grid;overflow:hidden;box-shadow:0 10px 34px #183f520d}.notification-automation-list article,.notification-history-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem 1rem;padding:1rem;display:grid}.notification-automation-list article+article,.notification-history-list article+article{border-top:1px solid var(--line)}.notification-automation-list article>div,.notification-history-list article>div{min-width:0}.notification-automation-list strong,.notification-history-list strong{overflow-wrap:anywhere;display:block}.notification-automation-list p,.notification-history-list p{color:var(--muted);margin:.2rem 0;font-size:.82rem;line-height:1.55}.notification-automation-list small,.notification-history-list small{color:var(--muted);font-size:.74rem}.notification-automation-list article>.secondary,.notification-history-list article>.secondary{grid-column:2;min-height:42px;padding:.5rem .8rem}.notification-switch{cursor:pointer;grid-area:1/2;display:block}.notification-switch input{opacity:0;pointer-events:none;position:absolute}.notification-switch span{background:#c6d0d4;border-radius:999px;width:50px;height:30px;transition:background .18s;display:block;position:relative}.notification-switch span:after{content:"";top:4px;background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .18s;position:absolute;inset-inline-start:4px;box-shadow:0 2px 7px #173d5030}.notification-switch input:checked+span{background:var(--brand)}.notification-switch input:checked+span:after{transform:translate(-20px)}.notification-switch input:focus-visible+span{outline-offset:3px;outline:3px solid #287ba13d}.notification-load-more{width:100%;margin-top:1rem;display:flex}.notification-confirm{justify-items:stretch}.notification-confirm h2,.notification-confirm p{text-align:center}@media (max-width:640px){.notification-device-status{grid-template-columns:1fr}.notification-device-status dl{grid-template-columns:repeat(3,1fr);display:grid}.notification-device-status dl div{min-width:0;padding:.5rem .35rem}}@media (min-width:640px){.notification-context-fields{grid-template-columns:1fr 1fr}.notification-content-fields{grid-template-columns:1fr}.notification-automation-list article{grid-template-columns:minmax(0,1fr) auto auto}.notification-automation-list article>.secondary{grid-area:1/3}.notification-switch{grid-column:2}}@media (max-width:390px){.admin-notifications-page{margin-inline:-.15rem}.notification-center{gap:1.6rem}.notification-send-section{border-radius:16px;padding:.9rem}.notification-automation-list article,.notification-history-list article{padding:.85rem}.notification-automation-list article>.secondary,.notification-history-list article>.secondary{width:100%}.notification-history-list article{grid-template-columns:1fr}.notification-history-list article>.secondary{grid-column:1}.notification-selected-people>span{max-width:100%}}.notification-switch input{inset:0;width:1px!important;height:1px!important;min-height:0!important;margin:0!important}.form-error-summary:focus{outline:2px solid var(--color-focus-ring);outline-offset:2px}[aria-invalid=true]{box-shadow:0 0 0 3px var(--color-status-danger);border-color:var(--color-status-danger)!important}@supports (color:color-mix(in lab,red,red)){[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-status-danger) 14%,transparent)}}.ui-field__error{color:var(--color-status-danger-text);font-size:var(--font-size-caption);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-body);display:block}.admin-more-group>summary:after,.member-more-group>summary:after,.member-trip-toggle>summary:after{content:"";border:0;border-inline-end:2px solid;background:0 0;border-bottom:2px solid;border-radius:0;width:9px;height:9px;transition:transform .18s;display:block;transform:rotate(45deg)}.admin-more-group[open]>summary:after,.member-more-group[open]>summary:after,.member-trip-toggle[open]>summary:after{transform:rotate(225deg)}.member-trip-details-back{align-items:center;gap:var(--space-1);min-height:44px;display:inline-flex}.member-trip-details-back .interface-icon{width:18px;height:18px}.member-trip-state-icon .interface-icon{width:20px;height:20px}body:has(#member-more-menu) .member-floating-qr{visibility:hidden;pointer-events:none}@media (max-width:767px),(pointer:coarse){.footer-social-links a,body:has(.public-login-page)>.app-footer .footer-social-links a{min-height:44px;padding-block:.4rem}.app-footer p:last-child a{align-items:center;min-height:44px;padding-inline:.25rem;display:inline-flex}.header-account>form button,.member-header-account>form button{min-height:44px}.attendance-scanner-camera-bar>a,.compact-button{min-width:44px!important;min-height:44px!important}.member-management-page .student-contact .phone-contact-trigger,.phone-contact-trigger,.student-contact .phone-contact-trigger{min-height:44px}.profile-contact-icons{gap:var(--space-2)}}.payment-history.balances>div,.payment-history.report>div,.report-types .card,.report-types .stack-list>a,.trip-report-name,.trip-report-numbers{min-width:0}.attendee-card strong,.payment-history.balances>div>*,.payment-history.report>div>*,.report-types .stack-list>a>span,.report-types .stack-list>a>strong,.student-summary>div,.trip-report-name strong,.trip-report-numbers b{overflow-wrap:anywhere;min-width:0}.report-identifier{text-align:right;overflow-wrap:anywhere;display:block}.app-footer p:last-child{font-size:max(.75rem,var(--font-size-caption));line-height:1.6}body:has(.public-login-page)>.app-footer p:last-child{font-size:.75rem}.announcement-back{align-items:center;gap:var(--space-1);min-height:44px}.announcement-back .interface-icon,.member-next-meeting>.interface-icon{flex:none;width:18px;height:18px}.member-next-meeting>.interface-icon{color:var(--brand)}.admin-trip-tab-panel .badge.payment-paid{background:var(--color-status-success-surface);color:var(--color-status-success-text)}.admin-trip-tab-panel .badge.payment-partial{background:var(--color-status-warning-surface);color:var(--color-status-warning-text)}.admin-trip-tab-panel .badge.payment-unpaid{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}.member-quick-qr-close{width:44px;height:44px;min-height:44px}#participants>.section-heading,#waiting>.section-heading{border-bottom:1px solid var(--color-border-default)}.member-profile-unified{gap:var(--space-4)}.member-profile-details-heading>div{gap:var(--space-1);display:grid}.member-password-section p,.member-profile-details-heading p{color:var(--color-text-secondary);font-size:var(--font-size-body-sm);line-height:var(--line-height-body);margin:0}.member-profile-edit-trigger{flex:none;min-height:44px}.member-profile-view-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.member-profile-view-fields .member-profile-field:last-child{grid-column:1/-1}.member-profile-locked{grid-template-columns:repeat(3,minmax(0,1fr))}.member-profile-locked>small{align-items:center;gap:var(--space-2);display:flex}.member-profile-locked svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.member-password-section{align-items:start;gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.member-password-section>div{gap:var(--space-1);display:grid}.member-password-section h2{font-size:var(--font-size-section-title);font-weight:var(--font-weight-heading);margin:0}.member-password-section>button{min-height:44px}.member-password-form{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-default);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.member-password-form>.alert,.member-password-form>button,.member-password-form>label:first-child{grid-column:1/-1}.member-password-input input{padding-inline-end:3.4rem}.member-password-form>button{min-height:48px}@media (max-width:560px){.member-profile-details-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.member-profile-view-fields{grid-template-columns:1fr}.member-profile-view-fields .member-profile-field:last-child{grid-column:auto}.member-password-section,.member-profile-locked{grid-template-columns:1fr}.member-password-section>button{width:100%}.member-password-form{grid-template-columns:1fr}.member-password-form>*{grid-column:1!important}}@media (max-width:359px){.member-profile-details-heading{grid-template-columns:1fr}.member-profile-edit-trigger{width:100%}}.admin-notification-inbox{margin-bottom:2rem}@media (any-pointer:coarse),(max-width:767px){[contenteditable=""],[contenteditable=true],input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]),select,textarea{font-size:max(16px,1em)!important}}.attendance-inline-search>input{min-height:var(--touch-target-min)}.meeting-attendance-disclosure>summary{min-height:var(--touch-target-min);padding:var(--space-3) 0;color:var(--color-text-brand);font-weight:var(--font-weight-heading);cursor:pointer}.meeting-attendance-disclosure>summary>span{color:var(--color-text-secondary);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-regular)}.meeting-attendance-disclosure[open]>summary{margin-bottom:var(--space-3);border-bottom:1px solid var(--color-border-default)}.member-management-page .student-filter-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.member-management-page .member-search-field{grid-column:auto;position:relative}.member-management-page .member-search-field:before{content:"";border:2px solid var(--color-text-secondary);pointer-events:none;width:17px;height:17px;top:50%;border-radius:50%;position:absolute;inset-inline-start:var(--space-3);transform:translateY(-60%)}.member-management-page .member-search-field:after{content:"";background:var(--color-text-secondary);pointer-events:none;width:8px;height:2px;top:calc(50% + 5px);position:absolute;inset-inline-start:calc(var(--space-3) - 4px);transform:rotate(-45deg)}.member-management-page .member-search-field input{padding-inline-start:calc(var(--space-6) + var(--space-3))}.member-management-page .member-search-submit{min-height:var(--touch-target-min)}.member-filter-disclosure{grid-column:1/-1;min-width:0}.member-filter-disclosure>summary{min-height:var(--touch-target-min);width:max-content;max-width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-brand);cursor:pointer;font-weight:var(--font-weight-emphasis);align-items:center;display:flex}.member-filter-disclosure>summary:focus-visible,.student-more-actions>summary:focus-visible{outline:3px solid var(--color-action-primary);outline-offset:2px}.member-filter-options{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.member-filter-options>*{min-width:0}.member-active-filters{align-items:center;gap:var(--space-2);margin:calc(-1 * var(--space-2)) 0 var(--space-4);flex-wrap:wrap;display:flex}.member-active-filters>span{border:1px solid var(--color-border-default);padding:var(--space-1) var(--space-3);background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-label);border-radius:999px}.member-active-filters>a{min-height:var(--touch-target-min);color:var(--color-text-brand);font-weight:var(--font-weight-emphasis);align-items:center;display:inline-flex}.member-management-page .student-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.member-management-page .student-actions>.quick{min-height:var(--touch-target-min)}.student-more-actions{min-width:0;position:relative}.student-more-actions>summary{min-height:var(--touch-target-min);padding:var(--space-2) var(--space-3);color:var(--color-text-brand);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis);cursor:pointer;justify-content:center;align-items:center;display:flex}.student-more-actions>div,.student-more-actions>summary{border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.student-more-actions>div{z-index:8;inset-inline-end:0;top:calc(100% + var(--space-1));gap:var(--space-1);width:min(270px,78vw);padding:var(--space-2);background:var(--color-surface-raised);box-shadow:var(--elevation-overlay);display:grid;position:absolute}.student-more-actions>div>*{justify-content:flex-start;align-items:center;gap:var(--space-2);min-height:var(--touch-target-min);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis);display:flex}.student-more-actions .edit{background:var(--color-action-primary-subtle);color:var(--color-text-brand)}.student-more-actions .remove{background:var(--color-status-danger-surface);color:var(--color-status-danger-text)}@media (max-width:767px){.member-management-page .student-filter-grid{grid-template-columns:minmax(0,1fr) auto}.member-management-page .student-filter-grid .member-search-field{grid-column:auto}.member-management-page .student-filter-grid .member-search-submit{width:auto;padding-inline:var(--space-3)}.member-filter-options,.member-management-page .student-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.member-management-page .student-actions .remove{grid-column:auto}}@media (max-width:359px){.member-filter-options{grid-template-columns:1fr}}.member-home-hero{border-color:var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--elevation-none)}.member-home-hero-profile{min-height:0;padding:var(--space-4);gap:var(--space-3)}.member-home-hero-profile>div{padding-top:0}.member-home-hero-profile .member-home-hero-avatar{border:2px solid var(--color-surface-default);margin-top:0;width:68px!important;height:68px!important}.member-home-hero-profile h1{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:var(--line-height-heading);overflow:visible}.member-home-hero-actions>.member-home-change-photo,.member-home-hero-actions>.member-home-profile-button{min-height:var(--touch-target-min);border-radius:var(--radius-md)}.member-home-hero-actions>.member-home-profile-button,.member-home-hero-actions>.member-home-profile-button:focus-visible,.member-home-hero-actions>.member-home-profile-button:hover{color:var(--color-text-on-primary)!important}.member-meeting-empty{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-default);display:flex}.member-meeting-empty-icon{border-radius:var(--radius-md);background:var(--color-action-primary-subtle);width:40px;height:40px;color:var(--color-text-brand);flex:none;place-items:center;display:grid}.member-meeting-empty-icon svg,.member-next-meeting-icon svg{width:22px;height:22px}.member-meeting-empty>div{gap:var(--space-1);min-width:0;display:grid}.member-meeting-empty strong{font-size:var(--font-size-body-sm);line-height:var(--line-height-heading)}.member-meeting-empty>div>span{color:var(--color-text-secondary);font-size:var(--font-size-label);line-height:var(--line-height-body)}.member-home-priority-trips{margin-bottom:var(--space-4);border-radius:var(--radius-lg)}.member-home-priority-trips>.member-section-heading{margin-bottom:var(--space-3);flex-direction:row;align-items:center}.member-home-priority-trips>.member-section-heading>a{min-height:var(--touch-target-min);align-items:center;margin-inline-start:auto;display:inline-flex}.member-home-trip-content>.member-trip-home-meta{color:var(--color-text-secondary);font-size:var(--font-size-label);display:block}.member-home-payment-state{color:var(--color-status-warning-text);font-size:var(--font-size-label);font-weight:var(--font-weight-emphasis);line-height:var(--line-height-label)}.member-home-quick-grid{margin:0 0 var(--space-4);gap:var(--space-2)}.member-attendance-glance{margin-bottom:var(--space-4)}.member-home-quick-grid>a{gap:var(--space-2);min-height:64px;padding:var(--space-2) var(--space-3);border-color:var(--color-border-default);border-radius:var(--radius-md);box-shadow:none;flex-direction:row}.member-home-quick-grid>a>span{border-radius:var(--radius-sm);width:34px;height:34px}.member-home-quick-grid svg{width:20px;height:20px}.member-home-quick-grid strong{white-space:normal;overflow-wrap:anywhere;font-size:var(--font-size-label);line-height:var(--line-height-label)}@media (max-width:699px){.member-home-hero-profile{padding:var(--space-3);grid-template-columns:auto minmax(0,1fr)}.member-home-hero-profile>.member-home-hero-actions{margin:0;padding:0}.member-home-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:359px){.member-home-news .member-announcement-topline{justify-content:flex-start;gap:var(--space-1);flex-wrap:wrap}.member-home-news .member-announcement-topline b{white-space:nowrap}}.notification-list>form{margin:0}.notification-list>form>button{width:100%;min-height:44px;color:inherit;text-align:start;background:#fff;border:1px solid #dce8eb;border-radius:14px;padding:.85rem 1rem;display:block}.notification-list>form>button:hover{background:#f7fbfc}.notification-list>form>button.unread{background:#f0fbfd;border-color:#8acddd}.notification-list>form>button:focus-visible{outline-offset:2px;outline:3px solid #287ba13d}@media (min-width:768px){.member-header{min-height:64px;padding-inline:max(1rem,50vw - 640px);grid-template-columns:minmax(0,1fr) auto!important;display:grid!important}.admin-desktop-navigation.member-primary-navigation{display:flex}.admin-mobile-nav.member-primary-navigation{display:none!important}.member-main{padding-top:var(--space-5)!important}}.public-home-responsive-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}@media (min-width:768px){.responsive-primary-navigation{width:min(var(--content-max-width),calc(100% - var(--space-6)))!important;min-height:0!important;padding:var(--space-2)!important;border:1px solid var(--color-border-default)!important;border-radius:var(--radius-lg)!important;background:var(--color-surface-raised)!important;box-shadow:var(--elevation-raised)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;display:flex!important;position:static!important;inset:auto!important}.responsive-primary-navigation>a,.responsive-primary-navigation>button{gap:var(--space-2)!important;min-height:48px!important;padding:var(--space-2) var(--space-4)!important;border-radius:var(--radius-md)!important;font-size:var(--font-size-body-sm)!important;flex-direction:row!important}.responsive-primary-navigation.member-primary-navigation{display:flex!important}}@media (max-width:767px){.responsive-primary-navigation{display:grid!important}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}