html[data-attendance-theme=light]{color-scheme:light;--att-bg: #f4f6f8;--att-surface: #ffffff;--att-surface-soft: #f8fafc;--att-surface-raised: #ffffff;--att-ink: #101418;--att-muted: #667085;--att-subtle: #98a2b3;--att-line: #e4e7ec;--att-line-strong: #d0d5dd;--att-primary: #101418;--att-primary-ink: #ffffff;--att-accent: #047857;--att-accent-soft: #ecfdf3;--att-accent-line: #a6f4c5;--att-blue: #175cd3;--att-blue-soft: #eff8ff;--att-warning: #b54708;--att-warning-soft: #fffaeb;--att-danger: #b42318;--att-danger-soft: #fef3f2;--att-console-bg: #111820;--att-console-line: #2a3846;--att-console-ink: #f8fafc;--att-console-muted: #aebdcb;--att-shadow: 0 8px 30px rgba(16, 24, 40, .08);--att-shadow-large: 0 24px 70px rgba(16, 24, 40, .13)}html[data-attendance-theme=dark]{color-scheme:dark;--att-bg: #0c0f12;--att-surface: #15191e;--att-surface-soft: #1b2026;--att-surface-raised: #20262d;--att-ink: #f5f7fa;--att-muted: #a8b0bd;--att-subtle: #7d8794;--att-line: #2b323a;--att-line-strong: #3a444f;--att-primary: #f5f7fa;--att-primary-ink: #101418;--att-accent: #34d399;--att-accent-soft: #102a23;--att-accent-line: #176c50;--att-blue: #84adff;--att-blue-soft: #17243a;--att-warning: #fdb022;--att-warning-soft: #302610;--att-danger: #f97066;--att-danger-soft: #331b1b;--att-console-bg: #090d11;--att-console-line: #283441;--att-console-ink: #f8fafc;--att-console-muted: #aebdcb;--att-shadow: 0 8px 30px rgba(0, 0, 0, .28);--att-shadow-large: 0 24px 70px rgba(0, 0, 0, .42)}body.attendance-body,body.attendance-body *{box-sizing:border-box}body.attendance-body{min-width:320px;min-height:100vh;min-height:100dvh;margin:0;color:var(--att-ink);background:var(--att-bg);font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,Inter,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}html.attendance-large-text body.attendance-body{font-size:17px}body.attendance-body button,body.attendance-body input,body.attendance-body textarea,body.attendance-body select{font:inherit}body.attendance-body button,body.attendance-body a{-webkit-tap-highlight-color:transparent}body.attendance-body button:not(:disabled),body.attendance-body a,body.attendance-body label:has(input:not(:disabled)){cursor:pointer}body.attendance-body button:disabled,body.attendance-body input:disabled,body.attendance-body textarea:disabled,body.attendance-body select:disabled{cursor:not-allowed;opacity:.56}body.attendance-body [x-cloak]{display:none!important}body.attendance-body .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body.attendance-body svg{width:18px;height:18px;stroke-width:2}body.attendance-body .spin{animation:attendance-spin .9s linear infinite}@keyframes attendance-spin{to{transform:rotate(360deg)}}body.attendance-body .attendance-app{min-height:100vh;min-height:100dvh}body.attendance-body .attendance-kicker{margin:0 0 5px;color:var(--att-accent);font-size:.72rem;font-weight:800;letter-spacing:.12em}body.attendance-body .attendance-brand{display:inline-flex;align-items:center;min-width:0;gap:11px;color:var(--att-ink);text-decoration:none}body.attendance-body .attendance-brand-mark{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;overflow:hidden;border-radius:11px;background:#075985}body.attendance-body .attendance-brand-mark img{width:23px;height:29px;-o-object-fit:contain;object-fit:contain}body.attendance-body .attendance-brand>span:last-child{display:grid;min-width:0}body.attendance-body .attendance-brand strong{overflow:hidden;font-size:.98rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-brand small{color:var(--att-muted);font-size:.73rem}body.attendance-body .attendance-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;gap:8px;border:1px solid transparent;border-radius:11px;font-weight:750;line-height:1.2;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}body.attendance-body .attendance-button:not(:disabled):active{transform:translateY(1px)}body.attendance-body .attendance-button:focus-visible,body.attendance-body .attendance-icon-button:focus-visible,body.attendance-body input:focus-visible,body.attendance-body textarea:focus-visible,body.attendance-body select:focus-visible,body.attendance-body .attendance-event-card:focus-visible{outline:3px solid color-mix(in srgb,var(--att-accent) 34%,transparent);outline-offset:2px}body.attendance-body .attendance-button.primary{color:var(--att-primary-ink);background:var(--att-primary);box-shadow:0 1px 2px rgba(16,24,40,.16)}body.attendance-body .attendance-button.primary:not(:disabled):hover{box-shadow:0 5px 16px rgba(16,24,40,.18)}body.attendance-body .attendance-button.secondary{color:var(--att-ink);border-color:var(--att-line-strong);background:var(--att-surface)}body.attendance-body .attendance-button.secondary:not(:disabled):hover,body.attendance-body .attendance-button.ghost:not(:disabled):hover{border-color:var(--att-ink);background:var(--att-surface-soft)}body.attendance-body .attendance-button.ghost{color:var(--att-muted);border-color:transparent;background:transparent}body.attendance-body .attendance-button.danger{color:#fff;background:var(--att-danger)}body.attendance-body .attendance-button.compact{min-height:38px;padding:0 12px;font-size:.85rem}body.attendance-body .attendance-button.wide{width:100%}body.attendance-body .attendance-icon-button{display:inline-grid;flex:0 0 auto;place-items:center;width:44px;height:44px;padding:0;color:var(--att-muted);border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface)}body.attendance-body .attendance-icon-button:not(:disabled):hover{color:var(--att-ink);border-color:var(--att-line-strong)}body.attendance-body .attendance-icon-button.danger{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 22%,var(--att-line));background:var(--att-danger-soft)}body.attendance-body .font-size-icon{font-weight:850}body.attendance-body .mobile-only{display:none}body.attendance-body .attendance-boot,body.attendance-body .attendance-auth-shell{display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:24px}body.attendance-body .attendance-boot{align-content:center;gap:8px;color:var(--att-muted);text-align:center}body.attendance-body .attendance-boot strong{margin-top:6px;color:var(--att-ink);font-size:1.1rem}body.attendance-body .attendance-loader{display:grid;place-items:center;width:56px;height:56px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:18px;background:var(--att-accent-soft)}body.attendance-body .attendance-loader svg{width:27px;height:27px;animation:attendance-spin 1s linear infinite}body.attendance-body .attendance-auth-shell{background:radial-gradient(circle at 8% 10%,color-mix(in srgb,var(--att-accent) 9%,transparent),transparent 25%),radial-gradient(circle at 92% 90%,color-mix(in srgb,var(--att-blue) 7%,transparent),transparent 28%),var(--att-bg)}body.attendance-body .attendance-auth-card{width:min(100%,480px);padding:38px;border:1px solid var(--att-line);border-radius:24px;background:var(--att-surface);box-shadow:var(--att-shadow-large);text-align:center}body.attendance-body .auth-brand{display:flex;width:-moz-fit-content;width:fit-content;margin:0 auto 28px;text-align:left}body.attendance-body .attendance-auth-visual{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 24px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:25px;background:var(--att-accent-soft)}body.attendance-body .attendance-auth-visual.error{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 25%,transparent);background:var(--att-danger-soft)}body.attendance-body .attendance-auth-visual svg{width:40px;height:40px}body.attendance-body .attendance-auth-card h1{margin:0;font-size:clamp(1.55rem,4vw,2rem);line-height:1.25;letter-spacing:-.04em}body.attendance-body .attendance-auth-copy{margin:14px 0 24px;color:var(--att-muted);line-height:1.7}body.attendance-body .auth-button{width:100%;min-height:52px;margin-top:8px}body.attendance-body .attendance-auth-note{display:block;margin-top:14px;color:var(--att-subtle)}body.attendance-body .error-card .attendance-button{width:100%;margin-top:8px}body.attendance-body .attendance-toast{position:fixed;z-index:100;top:76px;left:50%;display:flex;align-items:center;width:min(calc(100% - 32px),620px);min-height:50px;padding:10px 12px 10px 15px;gap:10px;border:1px solid;border-radius:13px;background:var(--att-surface);box-shadow:var(--att-shadow-large);transform:translate(-50%)}body.attendance-body .attendance-toast.success{color:var(--att-accent);border-color:var(--att-accent-line)}body.attendance-body .attendance-toast.error{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 28%,var(--att-line))}body.attendance-body .attendance-toast span{flex:1;color:var(--att-ink);font-weight:650}body.attendance-body .attendance-toast button,body.attendance-body .attendance-alert button{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;padding:0;color:inherit;border:0;border-radius:8px;background:transparent}body.attendance-body .attendance-alert{display:flex;align-items:flex-start;padding:13px 14px;gap:10px;border:1px solid;border-radius:12px;font-size:.9rem}body.attendance-body .attendance-alert>svg{flex:0 0 auto;margin-top:1px}body.attendance-body .attendance-alert>span{flex:1}body.attendance-body .attendance-alert.error{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 26%,var(--att-line));background:var(--att-danger-soft)}body.attendance-body .attendance-alert.info{color:var(--att-blue);border-color:color-mix(in srgb,var(--att-blue) 25%,var(--att-line));background:var(--att-blue-soft)}body.attendance-body .attendance-alert.warning{color:var(--att-warning);border-color:color-mix(in srgb,var(--att-warning) 28%,var(--att-line));background:var(--att-warning-soft)}body.attendance-body .attendance-teacher-shell{height:100vh;height:100dvh;overflow:hidden;background:var(--att-bg)}body.attendance-body .attendance-topbar,body.attendance-body .attendance-student-topbar{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 22px;gap:20px;border-bottom:1px solid var(--att-line);background:color-mix(in srgb,var(--att-surface) 94%,transparent);backdrop-filter:blur(12px)}body.attendance-body .attendance-topbar-left,body.attendance-body .attendance-topbar-actions{display:flex;align-items:center;min-width:0;gap:8px}body.attendance-body .attendance-user{display:grid;min-width:0;margin:0 4px 0 8px;text-align:right}body.attendance-body .attendance-user strong,body.attendance-body .attendance-user span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-user strong{font-size:.85rem}body.attendance-body .attendance-user span{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-workspace{display:grid;height:calc(100vh - 68px);height:calc(100dvh - 68px);grid-template-columns:294px minmax(0,1fr);overflow:hidden}body.attendance-body .attendance-event-sidebar{display:flex;min-height:0;padding:20px 15px 16px;flex-direction:column;border-right:1px solid var(--att-line);background:var(--att-surface)}body.attendance-body .attendance-sidebar-head,body.attendance-body .attendance-section-heading,body.attendance-body .attendance-subsection-head,body.attendance-body .attendance-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}body.attendance-body .attendance-sidebar-head{padding:0 5px 14px}body.attendance-body .attendance-sidebar-head h2,body.attendance-body .attendance-section-heading h2,body.attendance-body .attendance-subsection-head h3,body.attendance-body .attendance-preview-head h3{margin:0;line-height:1.25;letter-spacing:-.025em}body.attendance-body .attendance-sidebar-head h2{font-size:1.35rem}body.attendance-body .new-event-button{width:100%;margin-bottom:12px}body.attendance-body .attendance-search input,body.attendance-body .attendance-field input,body.attendance-body .attendance-field textarea,body.attendance-body .attendance-field select,body.attendance-body .attendance-student-question textarea{width:100%;min-width:0;color:var(--att-ink);border:1px solid var(--att-line-strong);border-radius:10px;background:var(--att-surface);outline:none}body.attendance-body .attendance-search input{height:42px;padding:0 13px}body.attendance-body .attendance-check{display:inline-flex;align-items:center;gap:8px;color:var(--att-muted);font-size:.87rem}body.attendance-body .attendance-check input{width:17px;height:17px;margin:0;accent-color:var(--att-accent)}body.attendance-body .compact-check{padding:10px 3px}body.attendance-body .attendance-event-list{min-height:0;padding:4px 2px 20px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}body.attendance-body .attendance-event-card{display:grid;width:100%;margin-bottom:9px;padding:13px;gap:9px;color:var(--att-ink);border:1px solid var(--att-line);border-radius:13px;background:var(--att-surface);text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}body.attendance-body .attendance-event-card:hover{border-color:var(--att-line-strong);transform:translateY(-1px)}body.attendance-body .attendance-event-card.active{border-color:var(--att-ink);background:var(--att-surface-soft);box-shadow:0 0 0 1px var(--att-ink)}body.attendance-body .attendance-event-card-top,body.attendance-body .attendance-event-meta,body.attendance-body .attendance-event-progress{display:flex;align-items:center;justify-content:space-between;gap:8px}body.attendance-body .attendance-event-card-top>small,body.attendance-body .attendance-event-meta{color:var(--att-muted);font-size:.75rem}body.attendance-body .attendance-event-card>strong{overflow:hidden;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-event-progress{padding-top:9px;border-top:1px solid var(--att-line);justify-content:flex-start}body.attendance-body .attendance-event-progress>span{display:flex;align-items:baseline;gap:3px}body.attendance-body .attendance-event-progress b{font-size:.91rem}body.attendance-body .attendance-event-progress small{color:var(--att-muted);font-size:.7rem}body.attendance-body .attendance-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:999px;background:var(--att-surface-soft);font-size:.7rem;font-weight:800;white-space:nowrap}body.attendance-body .attendance-status.open,body.attendance-body .attendance-status.ready,body.attendance-body .attendance-status.completed,body.attendance-body .attendance-status.succeeded{color:var(--att-accent);border-color:var(--att-accent-line);background:var(--att-accent-soft)}body.attendance-body .attendance-status.closed{color:var(--att-muted)}body.attendance-body .attendance-status.transferred{color:var(--att-blue);border-color:color-mix(in srgb,var(--att-blue) 25%,var(--att-line));background:var(--att-blue-soft)}body.attendance-body .attendance-status.conflict,body.attendance-body .attendance-status.failed{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 25%,var(--att-line));background:var(--att-danger-soft)}body.attendance-body .attendance-main-panel{min-width:0;min-height:0;overflow:hidden}body.attendance-body .attendance-welcome{display:grid;align-content:center;justify-items:center;width:min(100% - 40px,890px);height:100%;margin:auto;text-align:center}body.attendance-body .attendance-welcome-art{display:grid;place-items:center;width:96px;height:96px;margin-bottom:22px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:30px;background:var(--att-accent-soft);transform:rotate(-3deg)}body.attendance-body .attendance-welcome-art svg{width:48px;height:48px}body.attendance-body .attendance-welcome h1{max-width:660px;margin:0;font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;letter-spacing:-.06em}body.attendance-body .attendance-welcome>p:not(.attendance-kicker){max-width:700px;margin:18px 0 24px;color:var(--att-muted);font-size:1.02rem;line-height:1.75}body.attendance-body .attendance-feature-row{display:grid;width:min(100%,730px);margin-bottom:28px;grid-template-columns:repeat(3,1fr);gap:10px}body.attendance-body .attendance-feature-row>span{display:grid;justify-items:center;padding:17px 12px;gap:6px;border:1px solid var(--att-line);border-radius:14px;background:var(--att-surface)}body.attendance-body .attendance-feature-row svg{margin-bottom:2px;color:var(--att-accent)}body.attendance-body .attendance-feature-row small{color:var(--att-muted);font-size:.74rem}body.attendance-body .attendance-event-home{height:100%;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}body.attendance-body .attendance-event-home-inner{width:min(100%,1180px);min-height:100%;margin:0 auto;padding:clamp(28px,4vw,54px)}body.attendance-body .attendance-event-home-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px;padding-bottom:22px;gap:24px;border-bottom:1px solid var(--att-line)}body.attendance-body .attendance-event-home-head h1,body.attendance-body .attendance-event-home-head p{margin:0}body.attendance-body .attendance-event-home-head h1{font-size:clamp(1.85rem,3.2vw,2.65rem);line-height:1.12;letter-spacing:-.045em}body.attendance-body .attendance-event-home-head>div>p:last-child{margin-top:8px;color:var(--att-muted)}body.attendance-body .attendance-event-home-create{flex:0 0 auto;min-width:238px;min-height:60px;padding:0 28px;border-radius:14px;font-size:1.02rem;box-shadow:0 12px 28px rgba(16,20,24,.16)}body.attendance-body .attendance-event-home-create svg{width:21px;height:21px}body.attendance-body .attendance-event-home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));align-content:start;gap:14px}body.attendance-body .attendance-event-home-card{min-height:158px;margin:0;padding:18px;gap:12px;border-radius:16px;background:var(--att-surface);box-shadow:0 5px 18px rgba(16,24,40,.055)}body.attendance-body .attendance-event-home-card:hover{border-color:var(--att-ink);box-shadow:0 12px 28px rgba(16,24,40,.1);transform:translateY(-2px)}body.attendance-body .attendance-event-home-card>strong{display:-webkit-box;min-height:2.5em;overflow:hidden;font-size:1.08rem;line-height:1.25;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}body.attendance-body .attendance-event-home-card .attendance-event-progress{margin-top:auto}body.attendance-body .attendance-event-home-card .attendance-event-progress>svg{width:17px;height:17px;margin-left:auto;color:var(--att-muted);transition:transform .15s ease}body.attendance-body .attendance-event-home-card:hover .attendance-event-progress>svg{transform:translate(3px)}body.attendance-body .attendance-event-home-empty{min-height:250px;align-content:center}body.attendance-body .attendance-editor{display:grid;height:100%;grid-template-rows:auto auto minmax(0,1fr);background:var(--att-surface)}body.attendance-body .attendance-editor-head{display:flex;align-items:center;justify-content:space-between;min-height:90px;padding:14px clamp(18px,3vw,36px);gap:22px;border-bottom:1px solid var(--att-line)}body.attendance-body .attendance-editor-title,body.attendance-body .attendance-editor-actions,body.attendance-body .attendance-title-line{display:flex;align-items:center;min-width:0;gap:9px}body.attendance-body .attendance-editor-title h1{max-width:min(48vw,680px);margin:4px 0 0;overflow:hidden;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.2;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-title-line small{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-editor-actions{justify-content:flex-end}body.attendance-body .attendance-step-nav{display:flex;min-width:0;padding:0 clamp(18px,3vw,36px);gap:4px;border-bottom:1px solid var(--att-line);background:var(--att-surface);overflow-x:auto;scrollbar-width:none}body.attendance-body .attendance-step-nav::-webkit-scrollbar{display:none}body.attendance-body .attendance-step-nav button{position:relative;display:flex;align-items:center;min-height:54px;padding:0 15px;gap:8px;color:var(--att-muted);border:0;background:transparent;font-weight:700;white-space:nowrap}body.attendance-body .attendance-step-nav button:after{position:absolute;right:10px;bottom:-1px;left:10px;height:2px;border-radius:2px 2px 0 0;background:transparent;content:""}body.attendance-body .attendance-step-nav button.active{color:var(--att-ink)}body.attendance-body .attendance-step-nav button.active:after{background:var(--att-ink)}body.attendance-body .attendance-step-number{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--att-line-strong);border-radius:50%;font-size:.68rem}body.attendance-body .attendance-step-nav button.active .attendance-step-number{color:var(--att-primary-ink);border-color:var(--att-primary);background:var(--att-primary)}body.attendance-body .attendance-step-nav button>svg{display:none}body.attendance-body .attendance-editor-scroll{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}body.attendance-body .attendance-step-panel{width:min(100% - 44px,1120px);margin:0 auto;padding:34px 0 64px}body.attendance-body .attendance-section-heading{align-items:center;margin-bottom:26px}body.attendance-body .attendance-section-heading h2{font-size:1.55rem}body.attendance-body .attendance-section-heading p:not(.attendance-kicker),body.attendance-body .attendance-subsection-head p{margin:5px 0 0;color:var(--att-muted);font-size:.9rem}body.attendance-body .attendance-form-grid{display:grid;gap:18px}body.attendance-body .attendance-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-form-grid .span-2{grid-column:span 2}body.attendance-body .attendance-field{display:grid;min-width:0;align-content:start;gap:7px}body.attendance-body .attendance-field>span{color:var(--att-ink);font-size:.84rem;font-weight:750}body.attendance-body .attendance-field>span b,body.attendance-body .attendance-student-section h2 b{color:var(--att-danger)}body.attendance-body .attendance-field>small{color:var(--att-muted);font-size:.75rem}body.attendance-body .attendance-field input,body.attendance-body .attendance-field select{height:46px;padding:0 13px}body.attendance-body .attendance-field textarea,body.attendance-body .attendance-student-question textarea{min-height:92px;padding:11px 13px;line-height:1.55;resize:vertical}body.attendance-body .attendance-subsection{margin-top:30px;padding-top:26px;border-top:1px solid var(--att-line)}body.attendance-body .attendance-subsection>h3{margin:0 0 13px;font-size:.96rem}body.attendance-body .attendance-choice-grid{display:grid;gap:10px}body.attendance-body .attendance-choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}body.attendance-body .attendance-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:22px}body.attendance-body .attendance-choice-grid>label{position:relative;display:flex;align-items:center;min-width:0;min-height:78px;padding:14px;gap:12px;border:1px solid var(--att-line);border-radius:13px;background:var(--att-surface);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}body.attendance-body .attendance-choice-grid>label.selected{border-color:var(--att-ink);background:var(--att-surface-soft);box-shadow:0 0 0 1px var(--att-ink)}body.attendance-body .attendance-choice-grid input{position:absolute;opacity:0;pointer-events:none}body.attendance-body .attendance-choice-grid>label>input[type=radio]{top:0;left:0;width:1px!important;height:1px!important;margin:-1px;padding:0;overflow:hidden;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);opacity:0!important;pointer-events:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}body.attendance-body .attendance-choice-grid>label:has(input:focus-visible){border-color:var(--att-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--att-accent) 24%,transparent)}body.attendance-body .attendance-choice-grid svg{flex:0 0 auto;color:var(--att-accent)}body.attendance-body .attendance-choice-grid label>span{display:grid;min-width:0}body.attendance-body .attendance-choice-grid small{color:var(--att-muted);font-size:.76rem}body.attendance-body .attendance-switch-row{display:flex;align-items:center;margin-bottom:15px;gap:12px}body.attendance-body .attendance-switch-row>input{position:absolute;opacity:0}body.attendance-body .attendance-switch{position:relative;flex:0 0 auto;width:44px;height:25px;border-radius:999px;background:var(--att-line-strong);transition:background .15s ease}body.attendance-body .attendance-switch:after{position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.24);content:"";transition:transform .15s ease}body.attendance-body .attendance-switch-row>input:checked+.attendance-switch{background:var(--att-accent)}body.attendance-body .attendance-switch-row>input:checked+.attendance-switch:after{transform:translate(19px)}body.attendance-body .attendance-switch-row>span:last-child{display:grid}body.attendance-body .attendance-switch-row small{color:var(--att-muted);font-size:.78rem}body.attendance-body .attendance-count-badge{display:inline-flex;align-items:baseline;padding:8px 13px;gap:3px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:999px;background:var(--att-accent-soft)}body.attendance-body .attendance-count-badge b{font-size:1.05rem}body.attendance-body .attendance-roster-help{padding:13px 15px;border:1px solid var(--att-line);border-bottom:0;border-radius:12px 12px 0 0;background:var(--att-surface-soft)}body.attendance-body .attendance-roster-help p{margin:4px 0 0;color:var(--att-muted);font-size:.8rem}body.attendance-body .attendance-roster-textarea{border-radius:0 0 12px 12px!important;font-family:SFMono-Regular,Consolas,monospace!important;font-size:.84rem!important;white-space:pre}body.attendance-body .attendance-roster-preview{margin-top:22px}body.attendance-body .attendance-roster-preview>small{display:block;margin-top:8px;color:var(--att-muted);text-align:right}body.attendance-body .attendance-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--att-line);border-radius:12px}body.attendance-body table{width:100%;border-collapse:collapse;font-size:.84rem}body.attendance-body th,body.attendance-body td{padding:11px 13px;border-bottom:1px solid var(--att-line);text-align:left;white-space:nowrap}body.attendance-body th{color:var(--att-muted);background:var(--att-surface-soft);font-size:.74rem;font-weight:750}body.attendance-body tbody tr:last-child td{border-bottom:0}body.attendance-body td>strong,body.attendance-body td>small{display:block}body.attendance-body td>small{color:var(--att-muted);font-size:.7rem}body.attendance-body .attendance-question-list{display:grid;gap:12px}body.attendance-body .attendance-question-card{display:grid;padding:17px;grid-template-columns:48px minmax(0,1fr) 40px;gap:14px;border:1px solid var(--att-line);border-radius:15px;background:var(--att-surface)}body.attendance-body .attendance-question-order{display:grid;align-content:start;justify-items:center;gap:8px}body.attendance-body .attendance-question-order>b{display:grid;place-items:center;width:34px;height:34px;color:var(--att-primary-ink);border-radius:10px;background:var(--att-primary)}body.attendance-body .attendance-question-order>div{display:grid;gap:3px}body.attendance-body .attendance-question-order button,body.attendance-body .attendance-ranking button{display:grid;place-items:center;width:30px;height:27px;padding:0;color:var(--att-muted);border:1px solid var(--att-line);border-radius:7px;background:var(--att-surface-soft)}body.attendance-body .attendance-question-order svg,body.attendance-body .attendance-ranking button svg{width:14px;height:14px}body.attendance-body .attendance-question-fields{display:grid;min-width:0;gap:13px}body.attendance-body .attendance-question-meta{display:grid;align-items:end;grid-template-columns:minmax(150px,.7fr) minmax(170px,.9fr) auto;gap:12px}body.attendance-body .attendance-question-meta .attendance-check{min-height:46px;padding:0 12px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-empty{display:grid;justify-items:center;padding:46px 20px;gap:7px;color:var(--att-muted);border:1px dashed var(--att-line-strong);border-radius:15px;background:var(--att-surface-soft);text-align:center}body.attendance-body .attendance-empty>svg{width:32px;height:32px;margin-bottom:5px;color:var(--att-subtle)}body.attendance-body .attendance-empty strong{color:var(--att-ink)}body.attendance-body .attendance-empty span{max-width:540px;font-size:.85rem}body.attendance-body .attendance-empty .attendance-button{margin-top:10px}body.attendance-body .attendance-empty.compact{padding:24px 14px}body.attendance-body .attendance-empty.compact>svg{width:25px;height:25px}body.attendance-body .attendance-event-sidebar .attendance-event-list-empty{min-height:126px;align-content:center;border-style:solid}body.attendance-body .attendance-event-sidebar .attendance-event-list-empty>svg{color:#64b5ff}body.attendance-body .operate-empty{min-height:330px;align-content:center}body.attendance-body .attendance-live-stats{display:grid;margin-bottom:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}body.attendance-body .attendance-live-stats article{display:flex;align-items:baseline;padding:16px;gap:5px;border:1px solid var(--att-line);border-radius:13px;background:var(--att-surface)}body.attendance-body .attendance-live-stats article.accent{border-color:var(--att-accent-line);background:var(--att-accent-soft)}body.attendance-body .attendance-live-stats span{margin-right:auto;color:var(--att-muted);font-size:.76rem}body.attendance-body .attendance-live-stats strong{font-size:1.55rem;line-height:1}body.attendance-body .attendance-live-stats small{color:var(--att-muted);font-size:.7rem}body.attendance-body .attendance-qr-layout{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(320px,1.1fr);gap:16px}body.attendance-body .attendance-qr-card,body.attendance-body .attendance-operation-guide,body.attendance-body .attendance-transfer-form,body.attendance-body .attendance-transfer-preview{padding:22px;border:1px solid var(--att-line);border-radius:16px;background:var(--att-surface)}body.attendance-body .attendance-qr-card{display:grid;justify-items:center}body.attendance-body .attendance-phase-toggle{display:grid;width:100%;padding:4px;grid-template-columns:repeat(2,1fr);border-radius:11px;background:var(--att-surface-soft)}body.attendance-body .attendance-phase-toggle button{min-height:37px;color:var(--att-muted);border:0;border-radius:8px;background:transparent;font-weight:750}body.attendance-body .attendance-phase-toggle button.active{color:var(--att-ink);background:var(--att-surface);box-shadow:0 1px 4px rgba(16,24,40,.12)}body.attendance-body .attendance-qr-canvas-wrap{display:grid;place-items:center;width:min(100%,390px);margin:17px auto 10px;padding:14px;border:1px solid var(--att-line);border-radius:18px;background:#fff}body.attendance-body #attendance-qr-canvas{display:block;width:min(100%,360px)!important;height:auto!important}body.attendance-body .attendance-qr-label{margin-bottom:13px;font-size:1.03rem}body.attendance-body .attendance-inline-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}body.attendance-body .attendance-operation-guide h3{margin:0;font-size:1.3rem}body.attendance-body .attendance-operation-guide ol{display:grid;margin:20px 0;padding:0;gap:16px;list-style:none}body.attendance-body .attendance-operation-guide li{display:flex;align-items:center;gap:12px}body.attendance-body .attendance-operation-guide li>b{display:grid;flex:0 0 auto;place-items:center;width:34px;height:34px;color:var(--att-primary-ink);border-radius:50%;background:var(--att-primary)}body.attendance-body .attendance-operation-guide li>span{display:grid}body.attendance-body .attendance-operation-guide li small{color:var(--att-muted);font-size:.78rem}body.attendance-body .attendance-phase-controls{display:grid;margin:20px 0;padding:14px;gap:10px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-phase-controls>div{display:grid}body.attendance-body .attendance-phase-controls>div small{color:var(--att-muted);font-size:.74rem}body.attendance-body .attendance-phase-controls label{display:grid;align-items:center;grid-template-columns:42px minmax(0,1fr);gap:8px}body.attendance-body .attendance-phase-controls label>span{color:var(--att-muted);font-size:.8rem;font-weight:750}body.attendance-body .attendance-phase-controls select{width:100%;min-width:0;height:39px;padding:0 10px;color:var(--att-ink);border:1px solid var(--att-line-strong);border-radius:9px;background:var(--att-surface)}body.attendance-body .attendance-submissions{margin-top:24px}body.attendance-body .attendance-subsection-head{margin-bottom:12px}body.attendance-body .attendance-mini-status{display:inline-flex;padding:3px 8px;color:var(--att-subtle);border-radius:999px;background:var(--att-surface-soft);font-size:.72rem;font-weight:750}body.attendance-body .attendance-mini-status.done{color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-table-action{display:grid;place-items:center;width:32px;height:32px;padding:0;color:var(--att-muted);border:1px solid var(--att-line);border-radius:8px;background:var(--att-surface)}body.attendance-body .attendance-table-action:hover{color:var(--att-ink);border-color:var(--att-line-strong)}body.attendance-body .attendance-table-action svg{width:15px;height:15px}body.attendance-body .attendance-modal-backdrop{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:rgba(15,23,42,.58);backdrop-filter:blur(4px)}body.attendance-body .attendance-modal{display:grid;width:min(100%,610px);max-height:min(820px,calc(100vh - 40px));max-height:min(820px,calc(100dvh - 40px));grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--att-line);border-radius:19px;background:var(--att-surface);box-shadow:var(--att-shadow-large)}body.attendance-body .attendance-modal>header,body.attendance-body .attendance-modal>footer{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;gap:12px}body.attendance-body .attendance-modal>header{border-bottom:1px solid var(--att-line)}body.attendance-body .attendance-modal>header h2{margin:0;font-size:1.25rem}body.attendance-body .attendance-modal>header span{color:var(--att-muted);font-size:.78rem}body.attendance-body .attendance-modal>footer{justify-content:flex-end;border-top:1px solid var(--att-line);padding-bottom:calc(17px + env(safe-area-inset-bottom))}body.attendance-body .attendance-modal-body{display:grid;min-height:0;padding:20px;gap:18px;overflow-y:auto;-webkit-overflow-scrolling:touch}body.attendance-body .correction-void{margin:0;padding:12px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-upload-evidence{display:grid;padding:14px;gap:10px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-upload-evidence>header{display:flex;align-items:start;justify-content:space-between;gap:12px}body.attendance-body .attendance-upload-evidence>header>div{display:grid;gap:2px}body.attendance-body .attendance-upload-evidence>header small,body.attendance-body .attendance-upload-evidence button small{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-upload-evidence>header>span{padding:3px 7px;color:var(--att-blue);border-radius:999px;background:var(--att-blue-soft);font-size:.72rem;font-weight:800;white-space:nowrap}body.attendance-body .attendance-upload-evidence>div{display:grid;gap:7px}body.attendance-body .attendance-upload-evidence button{display:flex;align-items:center;min-height:48px;padding:9px 11px;gap:10px;color:var(--att-ink);border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface);text-align:left}body.attendance-body .attendance-upload-evidence button:hover:not(:disabled){border-color:var(--att-blue)}body.attendance-body .attendance-upload-evidence button>svg{width:18px;color:var(--att-blue)}body.attendance-body .attendance-upload-evidence button>span{display:grid;min-width:0;margin-right:auto}body.attendance-body .attendance-upload-evidence button>b{color:var(--att-blue);font-size:.76rem;white-space:nowrap}body.attendance-body .attendance-field-error{margin:0;color:var(--att-danger);font-size:.78rem}body.attendance-body .attendance-json-editor{font-family:SFMono-Regular,Consolas,monospace!important;font-size:.8rem!important}body.attendance-body .attendance-transfer-grid{display:grid;align-items:start;grid-template-columns:minmax(0,1fr) minmax(340px,.86fr);gap:16px}body.attendance-body .disabled-panel{opacity:.62}body.attendance-body .attendance-transfer-form>h3{margin:0 0 18px}body.attendance-body .attendance-transfer-questions{display:grid;margin:24px 0 18px;padding-top:20px;gap:8px;border-top:1px solid var(--att-line)}body.attendance-body .attendance-transfer-questions>div{display:grid;margin-bottom:2px}body.attendance-body .attendance-transfer-questions>div small{color:var(--att-muted);font-size:.76rem}body.attendance-body .question-transfer-check{align-items:flex-start;padding:10px 11px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .question-transfer-check>span{display:grid}body.attendance-body .question-transfer-check small{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-transfer-preview{min-height:380px}body.attendance-body .attendance-transfer-preview>.attendance-empty{min-height:334px;align-content:center}body.attendance-body .attendance-preview-counts{display:grid;margin:22px 0;grid-template-columns:repeat(4,1fr);gap:8px}body.attendance-body .attendance-preview-counts>span{display:grid;padding:13px 8px;border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft);text-align:center}body.attendance-body .attendance-preview-counts b{font-size:1.35rem}body.attendance-body .attendance-preview-counts small{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-preview-counts>span.danger-count{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 38%,var(--att-line));background:var(--att-danger-soft)}body.attendance-body .attendance-status.removal{color:var(--att-warning);border-color:color-mix(in srgb,var(--att-warning) 40%,var(--att-line));background:var(--att-warning-soft)}body.attendance-body .attendance-conflicts{display:grid;margin-bottom:16px;gap:7px}body.attendance-body .attendance-conflicts>strong{color:var(--att-danger);font-size:.8rem}body.attendance-body .attendance-conflicts p{display:flex;margin:0;padding:9px 10px;gap:8px;color:var(--att-danger);border-radius:9px;background:var(--att-danger-soft);font-size:.8rem}body.attendance-body .attendance-conflicts p>span{display:grid;gap:2px}body.attendance-body .attendance-conflicts p small{color:color-mix(in srgb,var(--att-danger) 72%,var(--att-muted));font-size:.7rem}body.attendance-body .attendance-removal-warning{display:flex;margin-bottom:16px;padding:13px;gap:11px;color:var(--att-warning);border:1px solid color-mix(in srgb,var(--att-warning) 55%,var(--att-line));border-radius:11px;background:var(--att-warning-soft)}body.attendance-body .attendance-removal-warning>svg{flex:0 0 auto;width:20px}body.attendance-body .attendance-removal-warning>div{display:grid;gap:7px}body.attendance-body .attendance-removal-warning p{margin:0;font-size:.78rem;line-height:1.55}body.attendance-body .attendance-removal-warning label{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:750}body.attendance-body .attendance-removal-warning input{width:17px;height:17px;margin:0;accent-color:var(--att-danger)}body.attendance-body .attendance-transfer-sample{display:grid;margin-bottom:16px;border:1px solid var(--att-line);border-radius:11px;overflow:hidden}body.attendance-body .attendance-transfer-sample>header{display:flex;align-items:start;justify-content:space-between;padding:10px 12px;gap:10px;border-bottom:1px solid var(--att-line);background:var(--att-surface-soft)}body.attendance-body .attendance-transfer-sample>header>div{display:grid}body.attendance-body .attendance-transfer-sample>header small,body.attendance-body .attendance-transfer-sample>header>span{color:var(--att-muted);font-size:.7rem}body.attendance-body .attendance-transfer-sample>div{display:grid;max-height:260px;overflow-y:auto}body.attendance-body .attendance-transfer-sample article{display:grid;padding:9px 12px;gap:3px;border-bottom:1px solid var(--att-line)}body.attendance-body .attendance-transfer-sample article:last-child{border-bottom:0}body.attendance-body .attendance-transfer-sample article b{font-size:.78rem}body.attendance-body .attendance-transfer-sample article p{margin:0;color:var(--att-muted);font-size:.74rem;line-height:1.45;white-space:pre-wrap}body.attendance-body .attendance-transfer-status{display:grid;justify-items:center;padding:20px 0;text-align:center}body.attendance-body .attendance-transfer-status-icon{display:grid;place-items:center;width:70px;height:70px;margin-bottom:18px;color:var(--att-blue);border-radius:22px;background:var(--att-blue-soft)}body.attendance-body .attendance-transfer-status-icon.completed,body.attendance-body .attendance-transfer-status-icon.succeeded{color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-transfer-status-icon.failed{color:var(--att-danger);background:var(--att-danger-soft)}body.attendance-body .attendance-transfer-status-icon svg{width:34px;height:34px}body.attendance-body .attendance-transfer-status h3{margin:0;font-size:1.3rem}body.attendance-body .attendance-transfer-status>p{margin:8px 0 20px;color:var(--att-muted)}body.attendance-body .attendance-transfer-status dl{width:100%;margin:0 0 18px}body.attendance-body .attendance-transfer-status dl div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--att-line)}body.attendance-body .attendance-transfer-status dt{color:var(--att-muted)}body.attendance-body .attendance-transfer-status dd{margin:0;font-weight:750}body.attendance-body .attendance-transfer-status .attendance-button{width:100%;margin-top:7px}body.attendance-body .attendance-mobile-step-actions{display:none}body.attendance-body .attendance-student-shell{min-height:100vh;min-height:100dvh;background:var(--att-bg)}body.attendance-body .attendance-student-topbar{position:sticky;top:0;height:62px;padding:0 max(15px,env(safe-area-inset-right)) 0 max(15px,env(safe-area-inset-left))}body.attendance-body .attendance-student-page{width:min(100% - 28px,720px);margin:0 auto;padding:28px 0 calc(50px + env(safe-area-inset-bottom))}body.attendance-body .attendance-student-event-head{position:relative;padding:28px;overflow:hidden;border:1px solid var(--att-line);border-radius:20px;background:var(--att-surface);box-shadow:var(--att-shadow)}body.attendance-body .attendance-student-event-head:after{position:absolute;top:-50px;right:-45px;width:160px;height:160px;border-radius:50%;background:color-mix(in srgb,var(--att-accent) 7%,transparent);content:""}body.attendance-body .attendance-event-date{display:grid;width:-moz-fit-content;width:fit-content;margin-bottom:24px;padding:9px 12px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:10px;background:var(--att-accent-soft)}body.attendance-body .attendance-event-date span{font-weight:800}body.attendance-body .attendance-event-date small{font-size:.72rem}body.attendance-body .attendance-student-event-head h1{position:relative;z-index:1;margin:0;font-size:clamp(1.65rem,7vw,2.5rem);line-height:1.2;letter-spacing:-.05em}body.attendance-body .attendance-student-event-head>p:not(.attendance-kicker){position:relative;z-index:1;margin:12px 0 22px;color:var(--att-muted);line-height:1.7;white-space:pre-wrap}body.attendance-body .attendance-student-identity{position:relative;z-index:1;display:flex;align-items:center;padding:12px;gap:11px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-student-identity>svg{color:var(--att-accent)}body.attendance-body .attendance-student-identity>span{display:grid;min-width:0;margin-right:auto}body.attendance-body .attendance-student-identity small{overflow:hidden;color:var(--att-muted);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-student-identity>b{padding:4px 8px;color:var(--att-accent);border-radius:999px;background:var(--att-accent-soft);font-size:.7rem;white-space:nowrap}body.attendance-body .student-alert{margin-top:14px}body.attendance-body .attendance-student-form{display:grid;margin-top:14px;gap:14px}body.attendance-body .attendance-student-phase{display:grid;align-items:center;padding:8px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px;border:1px solid var(--att-line);border-radius:14px;background:var(--att-surface)}body.attendance-body .attendance-student-phase>svg{color:var(--att-subtle)}body.attendance-body .attendance-student-phase button{display:grid;min-width:0;min-height:76px;padding:9px;grid-template-columns:auto minmax(0,1fr);align-content:center;gap:1px 8px;color:var(--att-muted);border:1px solid transparent;border-radius:10px;background:transparent;text-align:left}body.attendance-body .attendance-student-phase button.active{color:var(--att-ink);border-color:var(--att-line-strong);background:var(--att-surface-soft)}body.attendance-body .attendance-student-phase button>span{display:grid;grid-row:span 2;place-items:center;width:27px;height:27px;color:var(--att-primary-ink);border-radius:50%;background:var(--att-primary)}body.attendance-body .attendance-student-phase button small{overflow:hidden;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-student-section{padding:22px;border:1px solid var(--att-line);border-radius:16px;background:var(--att-surface)}body.attendance-body .attendance-student-section.phase-summary{display:flex;align-items:center;gap:14px}body.attendance-body .attendance-phase-icon{display:grid;flex:0 0 auto;place-items:center;width:50px;height:50px;color:var(--att-accent);border-radius:15px;background:var(--att-accent-soft)}body.attendance-body .attendance-student-section.phase-summary>div:nth-child(2){min-width:0;margin-right:auto}body.attendance-body .attendance-student-section h2{margin:0;font-size:1.18rem;line-height:1.3}body.attendance-body .attendance-student-section.phase-summary p:not(.attendance-kicker){margin:3px 0 0;color:var(--att-muted);font-size:.78rem}body.attendance-body .attendance-student-section-head{display:flex;align-items:flex-start;margin-bottom:17px;gap:11px}body.attendance-body .student-section-number{display:grid;flex:0 0 auto;place-items:center;width:28px;height:28px;color:var(--att-primary-ink);border-radius:9px;background:var(--att-primary);font-size:.78rem;font-weight:800}body.attendance-body .attendance-student-section-head p{margin:3px 0 0;color:var(--att-muted);font-size:.8rem}body.attendance-body .attendance-location-button{display:flex;align-items:center;width:100%;min-height:70px;padding:14px;gap:12px;color:var(--att-ink);border:1px solid var(--att-line-strong);border-radius:12px;background:var(--att-surface-soft);text-align:left}body.attendance-body .attendance-location-button.ready{color:var(--att-accent);border-color:var(--att-accent-line);background:var(--att-accent-soft)}body.attendance-body .attendance-location-button>svg{flex:0 0 auto;width:24px;height:24px}body.attendance-body .attendance-location-button>span{display:grid}body.attendance-body .attendance-location-button small{color:var(--att-muted);font-size:.73rem}body.attendance-body .attendance-student-questions{display:grid;gap:22px}body.attendance-body .attendance-student-question{min-width:0;padding-top:20px;border-top:1px solid var(--att-line)}body.attendance-body .attendance-student-question:first-child{padding-top:0;border-top:0}body.attendance-body .attendance-student-question-label{display:flex;align-items:flex-start;margin-bottom:11px;gap:8px}body.attendance-body .attendance-student-question-label>span{flex:0 0 auto;color:var(--att-muted);font-size:.78rem;font-weight:800}body.attendance-body .attendance-student-question-label>strong{flex:1;font-size:.97rem}body.attendance-body .attendance-student-question-label>b{padding:2px 6px;color:var(--att-danger);border-radius:999px;background:var(--att-danger-soft);font-size:.64rem}body.attendance-body .attendance-option-list{display:grid;gap:7px}body.attendance-body .attendance-option-list label{display:flex;align-items:center;min-height:48px;padding:10px 12px;gap:9px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-option-list label.selected{border-color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-option-list input{width:18px;height:18px;margin:0;accent-color:var(--att-accent)}body.attendance-body .attendance-option-list label>span{flex:1}body.attendance-body .attendance-option-list label>svg{display:none;color:var(--att-accent)}body.attendance-body .attendance-option-list label.selected>svg{display:block}body.attendance-body .attendance-rating{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}body.attendance-body .attendance-rating button{display:grid;min-width:0;min-height:58px;place-items:center;padding:6px 2px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-rating button.selected{color:var(--att-primary-ink);border-color:var(--att-primary);background:var(--att-primary)}body.attendance-body .attendance-rating b{font-size:1.2rem}body.attendance-body .attendance-rating small{min-height:12px;font-size:.55rem}body.attendance-body .attendance-ranking{display:grid;margin:0;padding:0;gap:7px;list-style:none}body.attendance-body .attendance-ranking li{display:flex;align-items:center;min-height:47px;padding:7px 8px 7px 11px;gap:7px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-ranking li>b{color:var(--att-accent)}body.attendance-body .attendance-ranking li>span{flex:1}body.attendance-body .attendance-file-input{display:flex;align-items:center;min-height:74px;padding:14px;gap:12px;border:1px dashed var(--att-line-strong);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-file-input.selected{color:var(--att-accent);border-style:solid;border-color:var(--att-accent-line);background:var(--att-accent-soft)}body.attendance-body .attendance-file-input input{position:absolute;width:1px;height:1px;opacity:0}body.attendance-body .attendance-file-input svg{flex:0 0 auto;width:24px;height:24px}body.attendance-body .attendance-file-input>span{display:grid;min-width:0}body.attendance-body .attendance-file-input strong,body.attendance-body .attendance-file-input small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-file-input small{color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-student-submit-wrap{padding:18px;border:1px solid var(--att-line);border-radius:16px;background:var(--att-surface)}body.attendance-body .attendance-privacy-note{display:flex;align-items:flex-start;margin-bottom:13px;gap:8px;color:var(--att-muted);font-size:.75rem}body.attendance-body .attendance-privacy-note svg{flex:0 0 auto;color:var(--att-accent)}body.attendance-body .student-submit{width:100%;min-height:56px;font-size:1rem}body.attendance-body .attendance-student-success{display:grid;justify-items:center;margin-top:14px;padding:36px 24px;border:1px solid var(--att-accent-line);border-radius:20px;background:var(--att-surface);box-shadow:var(--att-shadow);text-align:center}body.attendance-body .attendance-success-icon{display:grid;place-items:center;width:76px;height:76px;margin-bottom:20px;color:#fff;border-radius:50%;background:var(--att-accent);box-shadow:0 0 0 10px var(--att-accent-soft)}body.attendance-body .attendance-success-icon svg{width:38px;height:38px;stroke-width:2.5}body.attendance-body .attendance-student-success h2{margin:0;font-size:1.55rem;letter-spacing:-.035em}body.attendance-body .attendance-student-success>p:not(.attendance-kicker){max-width:500px;margin:10px 0 20px;color:var(--att-muted)}body.attendance-body .attendance-receipt{display:grid;width:100%;margin-bottom:20px;padding:15px;grid-template-columns:auto minmax(0,1fr);gap:9px 16px;border-radius:12px;background:var(--att-surface-soft);text-align:left}body.attendance-body .attendance-receipt span{color:var(--att-muted);font-size:.8rem}body.attendance-body .attendance-receipt strong{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1180px){body.attendance-body .attendance-workspace{grid-template-columns:255px minmax(0,1fr)}body.attendance-body .attendance-event-sidebar{padding-right:11px;padding-left:11px}body.attendance-body .attendance-step-nav button{padding:0 11px;font-size:.86rem}body.attendance-body .attendance-step-number{display:none}body.attendance-body .attendance-step-nav button>svg{display:block}body.attendance-body .attendance-qr-layout,body.attendance-body .attendance-transfer-grid{grid-template-columns:1fr}body.attendance-body .attendance-qr-canvas-wrap{width:min(100%,360px)}body.attendance-body .attendance-question-meta{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-question-meta .attendance-check{grid-column:span 2;width:-moz-fit-content;width:fit-content}}@media(max-width:760px){body.attendance-body{font-size:15px}html.attendance-large-text body.attendance-body{font-size:17px}body.attendance-body .mobile-only{display:inline-grid}body.attendance-body .desktop-only{display:none!important}body.attendance-body .attendance-topbar{height:60px;padding:0 max(10px,env(safe-area-inset-right)) 0 max(10px,env(safe-area-inset-left));gap:8px}body.attendance-body .attendance-topbar .attendance-brand-mark{display:none}body.attendance-body .attendance-topbar .attendance-brand>span:last-child small{display:none}body.attendance-body .attendance-topbar-actions{gap:5px}body.attendance-body .attendance-topbar .attendance-icon-button{width:37px;height:37px}body.attendance-body .attendance-workspace{height:calc(100vh - 60px);height:calc(100dvh - 60px);grid-template-columns:minmax(0,1fr)}body.attendance-body .attendance-sidebar-backdrop{position:fixed;z-index:39;top:60px;right:0;bottom:0;left:0;background:rgba(15,23,42,.46);backdrop-filter:blur(2px)}body.attendance-body .attendance-event-sidebar{position:fixed;z-index:40;top:60px;bottom:0;left:0;width:min(88vw,340px);border-right:1px solid var(--att-line);box-shadow:var(--att-shadow-large);transform:translate(-105%);transition:transform .18s ease}body.attendance-body .attendance-event-sidebar.is-open{transform:translate(0)}body.attendance-body .attendance-main-panel{height:100%}body.attendance-body .attendance-welcome{width:calc(100% - 28px);padding:30px 0;overflow-y:auto}body.attendance-body .attendance-welcome-art{width:76px;height:76px;border-radius:23px}body.attendance-body .attendance-welcome-art svg{width:37px;height:37px}body.attendance-body .attendance-feature-row{grid-template-columns:1fr}body.attendance-body .attendance-feature-row>span{grid-template-columns:auto minmax(0,1fr);justify-items:start;text-align:left}body.attendance-body .attendance-feature-row svg{grid-row:span 2}body.attendance-body .attendance-editor{grid-template-rows:auto auto minmax(0,1fr) auto}body.attendance-body .attendance-editor-head{min-height:69px;padding:9px 12px}body.attendance-body .attendance-editor-title h1{max-width:53vw;font-size:1.05rem}body.attendance-body .attendance-title-line small,body.attendance-body .attendance-editor-actions .attendance-button.secondary,body.attendance-body .attendance-editor-actions .attendance-button.danger,body.attendance-body .attendance-editor-actions .owner-delete{display:none}body.attendance-body .attendance-editor-actions .attendance-button.primary{min-height:39px;max-width:126px;padding:0 11px;overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-step-nav{padding:0 7px}body.attendance-body .attendance-step-nav button{flex:0 0 auto;min-height:49px;padding:0 10px;font-size:.77rem}body.attendance-body .attendance-step-nav button>svg{width:16px;height:16px}body.attendance-body .attendance-editor-scroll{padding-bottom:4px}body.attendance-body .attendance-step-panel{width:calc(100% - 24px);padding:22px 0 32px}body.attendance-body .attendance-section-heading{align-items:flex-start;margin-bottom:20px}body.attendance-body .attendance-section-heading h2{font-size:1.3rem}body.attendance-body .attendance-section-heading .attendance-button{min-height:38px;padding:0 10px;font-size:.77rem}body.attendance-body .attendance-form-grid.two,body.attendance-body .attendance-choice-grid.three,body.attendance-body .attendance-choice-grid.two{grid-template-columns:1fr}body.attendance-body .attendance-form-grid .span-2{grid-column:auto}body.attendance-body .attendance-field input,body.attendance-body .attendance-field select,body.attendance-body .attendance-field textarea{font-size:16px}body.attendance-body .attendance-choice-grid>label{min-height:66px}body.attendance-body .attendance-question-card{padding:13px;grid-template-columns:36px minmax(0,1fr) 34px;gap:8px}body.attendance-body .attendance-question-order>b{width:32px;height:32px}body.attendance-body .attendance-question-meta{grid-template-columns:1fr}body.attendance-body .attendance-question-meta .attendance-check{grid-column:auto}body.attendance-body .attendance-live-stats,body.attendance-body .attendance-preview-counts{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-live-stats article{padding:13px}body.attendance-body .attendance-live-stats strong{font-size:1.3rem}body.attendance-body .attendance-qr-card,body.attendance-body .attendance-operation-guide,body.attendance-body .attendance-transfer-form,body.attendance-body .attendance-transfer-preview{padding:15px}body.attendance-body .attendance-inline-actions .attendance-button{min-height:39px;padding:0 10px;font-size:.75rem}body.attendance-body .attendance-mobile-step-actions{display:flex;align-items:center;justify-content:space-between;min-height:63px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--att-line);background:var(--att-surface)}body.attendance-body .attendance-mobile-step-actions .attendance-button{min-height:41px;padding:0 13px}body.attendance-body .attendance-mobile-step-actions>span{color:var(--att-muted);font-size:.75rem}body.attendance-body .attendance-toast{top:68px}body.attendance-body .attendance-modal-backdrop{align-items:end;padding:max(8px,env(safe-area-inset-top)) 8px 0}body.attendance-body .attendance-modal{max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));border-radius:18px 18px 0 0}body.attendance-body .attendance-modal>header,body.attendance-body .attendance-modal>footer,body.attendance-body .attendance-modal-body{padding-right:15px;padding-left:15px}body.attendance-body .attendance-auth-shell{padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))}body.attendance-body .attendance-auth-card{padding:27px 20px;border-radius:20px}body.attendance-body .attendance-student-page{width:calc(100% - 20px);padding-top:12px}body.attendance-body .attendance-student-event-head,body.attendance-body .attendance-student-section,body.attendance-body .attendance-student-submit-wrap{padding:17px;border-radius:15px}body.attendance-body .attendance-event-date{margin-bottom:18px}body.attendance-body .attendance-student-section.phase-summary{align-items:flex-start;flex-wrap:wrap}body.attendance-body .attendance-student-section.phase-summary>.attendance-status{margin-left:64px}body.attendance-body .attendance-student-phase button{min-height:69px}body.attendance-body .attendance-student-phase button small{max-width:27vw}body.attendance-body .attendance-student-question textarea,body.attendance-body .attendance-option-list label,body.attendance-body .attendance-file-input{font-size:16px}}body.attendance-body .attendance-topbar .attendance-brand-mark{border:1px solid #3d5062;background:#243746;box-shadow:none}body.attendance-body .attendance-event-sidebar .new-event-button{min-height:46px;margin-bottom:13px;border:1px solid rgba(224,236,247,.34);box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}body.attendance-body .attendance-event-sidebar .attendance-search{display:block;margin-bottom:12px}body.attendance-body .attendance-event-sidebar .attendance-search input{min-height:44px;border-color:#526377}body.attendance-body .attendance-event-sidebar .attendance-event-filters{margin-bottom:14px;border-color:#3c4b5d}body.attendance-body .attendance-event-sidebar .attendance-event-list{padding-top:0}body.attendance-body .attendance-participant-policy{min-width:0;margin:0 0 20px;padding:0;border:0}body.attendance-body .attendance-participant-policy>legend{margin-bottom:10px;color:var(--att-ink);font-size:.85rem;font-weight:750}body.attendance-body .attendance-participant-policy>legend b{color:var(--att-danger)}body.attendance-body .attendance-participant-policy .attendance-choice-grid>label{cursor:pointer}body.attendance-body .attendance-participant-policy .attendance-choice-grid>label:has(input:disabled){cursor:default}body.attendance-body .attendance-open-policy-note,body.attendance-body .attendance-live-policy-action{margin-bottom:18px}body.attendance-body .attendance-open-policy-note span,body.attendance-body .attendance-live-policy-action span{min-width:0}body.attendance-body .attendance-open-policy-note strong,body.attendance-body .attendance-live-policy-action strong{display:block;margin-bottom:2px;color:var(--att-ink)}body.attendance-body .attendance-live-policy-action .attendance-button{flex:0 0 auto;min-height:38px}html.attendance-large-text body.attendance-body .attendance-dashboard-snapshot{display:flex;flex-wrap:wrap;justify-content:center}html.attendance-large-text body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button{flex:0 1 178px}body.attendance-body .attendance-dashboard-snapshot article.walk-in{border-color:color-mix(in srgb,var(--att-accent) 38%,var(--att-line));background:color-mix(in srgb,var(--att-accent-soft) 72%,var(--att-surface))}body.attendance-body .attendance-dashboard-command .attendance-qr-launch-card{min-height:390px;align-content:start;justify-items:stretch}body.attendance-body .attendance-qr-launch-visual{position:relative;display:grid;place-items:center;width:112px;height:112px;margin:24px auto 18px;color:#f8fafc;border:1px solid #31485f;border-radius:28px;background:#1c3145;box-shadow:0 14px 30px rgba(19,35,51,.16)}body.attendance-body .attendance-qr-launch-visual>svg:first-child{width:64px;height:64px;stroke-width:1.4}body.attendance-body .attendance-qr-launch-visual>svg:last-child{position:absolute;right:15px;bottom:15px;width:28px;height:28px;padding:4px;color:#1c3145;border-radius:7px;background:#fff}body.attendance-body .attendance-qr-launch-copy{text-align:center}body.attendance-body .attendance-qr-launch-copy h3{margin:0 0 7px;font-size:1.08rem}body.attendance-body .attendance-qr-launch-copy p{max-width:480px;margin:0 auto 10px;color:var(--att-muted);font-size:.82rem;line-height:1.6}body.attendance-body .attendance-qr-launch-copy small{display:inline-flex;align-items:center;gap:5px;color:var(--att-accent);font-weight:700}body.attendance-body .attendance-qr-launch-copy small svg{width:15px;height:15px}body.attendance-body .attendance-qr-launch-card>.attendance-inline-actions{justify-content:center;margin-top:20px}body.attendance-body .attendance-participant-filters{display:grid;margin-bottom:14px;padding:13px;gap:10px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-participant-filters>div{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:9px}body.attendance-body .attendance-participant-filters>div>span{color:var(--att-muted);font-size:.74rem;font-weight:750}body.attendance-body .attendance-participant-filters>div>div{display:flex;min-width:0;flex-wrap:wrap;gap:6px}body.attendance-body .attendance-participant-filters button{min-height:32px;padding:0 11px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:999px;background:var(--att-surface);font-size:.73rem;font-weight:750}body.attendance-body .attendance-participant-filters button.active{color:#fff;border-color:#243746;background:#243746}body.attendance-body .attendance-participant-status,body.attendance-body .attendance-registration-status{display:inline-flex;min-height:25px;align-items:center;padding:3px 9px;border-radius:999px;font-size:.71rem;font-weight:800}body.attendance-body .attendance-participant-status.absent{color:#b42318;background:#fee4e2}body.attendance-body .attendance-participant-status.pending{color:#475467;background:#eaecf0}body.attendance-body .attendance-participant-status.checkin_only,body.attendance-body .attendance-participant-status.checkout_only{color:#b54708;background:#fef0c7}body.attendance-body .attendance-participant-status.complete{color:#027a48;background:#d1fadf}body.attendance-body .attendance-registration-status.target{color:#344054;background:#eaecf0}body.attendance-body .attendance-registration-status.unregistered{color:#175cd3;background:#dbeafe}body.attendance-body .attendance-registration-status.open{color:#475467;background:#f2f4f7}@media(max-width:760px){body.attendance-body .attendance-participant-policy .attendance-choice-grid.three{grid-template-columns:1fr}body.attendance-body .attendance-participant-policy .attendance-choice-grid>label{min-height:70px}body.attendance-body .attendance-live-policy-action{align-items:stretch;flex-direction:column}body.attendance-body .attendance-live-policy-action .attendance-button{width:100%}body.attendance-body .attendance-dashboard-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-qr-launch-card>.attendance-inline-actions{display:grid;grid-template-columns:1fr}body.attendance-body .attendance-participant-filters>div{grid-template-columns:1fr}}@media(max-width:420px){body.attendance-body .attendance-topbar .attendance-brand strong{max-width:132px}body.attendance-body .attendance-editor-actions .attendance-button.primary svg{display:none}body.attendance-body .attendance-question-card{grid-template-columns:32px minmax(0,1fr)}body.attendance-body .attendance-question-card>.attendance-icon-button.danger{grid-column:2;justify-self:end}body.attendance-body .attendance-student-topbar .attendance-brand-mark{width:35px;height:35px}body.attendance-body .attendance-student-topbar .attendance-brand strong{font-size:.86rem}body.attendance-body .attendance-student-topbar .attendance-brand small{display:none}body.attendance-body .attendance-student-topbar .attendance-icon-button{width:35px;height:35px}body.attendance-body .attendance-student-identity>b{display:none}body.attendance-body .attendance-rating{gap:4px}}@media(prefers-reduced-motion:reduce){body.attendance-body *,body.attendance-body *:before,body.attendance-body *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html[data-attendance-theme=light]{--att-bg: #f5f6f7;--att-ink: #111418;--att-muted: #475467;--att-subtle: #667085;--att-line: #dfe3e8;--att-line-strong: #c6ccd3}body.attendance-body .attendance-event-filters{display:grid;padding:3px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-event-filters button{display:flex;align-items:center;justify-content:center;min-height:34px;padding:0 7px;gap:4px;color:var(--att-muted);border:0;border-radius:7px;background:transparent;font-size:.73rem;font-weight:750}body.attendance-body .attendance-event-filters button.active{color:var(--att-ink);background:var(--att-surface);box-shadow:0 1px 4px rgba(16,24,40,.1)}body.attendance-body .attendance-event-filters svg{width:14px;height:14px}body.attendance-body .attendance-welcome h1>span{display:block}body.attendance-body .attendance-first-event-cta{min-width:230px;min-height:58px;padding:0 28px;border-radius:14px;font-size:1.03rem;box-shadow:0 12px 28px rgba(16,20,24,.18)}body.attendance-body .attendance-first-event-cta svg{width:21px;height:21px}body.attendance-body .attendance-detail-nav button{min-width:155px;justify-content:center}body.attendance-body .attendance-detail-nav button>svg{display:block}body.attendance-body .attendance-edit-subnav{position:sticky;z-index:3;top:0;display:flex;justify-content:flex-start;padding:0 max(22px,calc((100% - 1220px)/2));gap:28px;border-bottom:1px solid var(--att-line);background:color-mix(in srgb,var(--att-surface) 94%,transparent);backdrop-filter:blur(12px)}body.attendance-body .attendance-edit-subnav button{position:relative;display:flex;align-items:center;min-height:54px;padding:0 2px;gap:8px;color:var(--att-muted);border:1px solid transparent;border-radius:0;background:transparent;white-space:nowrap}body.attendance-body .attendance-edit-subnav button span{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--att-line-strong);border-radius:50%;font-size:.67rem}body.attendance-body .attendance-edit-subnav button.active{color:var(--att-ink);border-color:transparent;background:transparent}body.attendance-body .attendance-edit-subnav button.active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:999px;background:var(--att-accent);content:""}body.attendance-body .attendance-edit-subnav button.active span{color:var(--att-primary-ink);border-color:var(--att-primary);background:var(--att-primary)}body.attendance-body .attendance-chip-field{min-width:0;margin:0;padding:0;border:0}body.attendance-body .attendance-chip-field legend{margin-bottom:8px;color:var(--att-ink);font-size:.8rem;font-weight:760}body.attendance-body .attendance-chip-field legend b,body.attendance-body .attendance-field>span b{color:var(--att-danger)}body.attendance-body .attendance-chip-options{display:flex;min-height:46px;padding:5px;gap:5px;overflow-x:auto;border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft)}body.attendance-body .attendance-chip-options button{min-height:34px;padding:0 14px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:8px;background:var(--att-surface);font-weight:720;white-space:nowrap}body.attendance-body .attendance-chip-options button.selected{color:var(--att-primary-ink);border-color:var(--att-primary);background:var(--att-primary)}body.attendance-body .attendance-chip-field>small{display:block;margin-top:6px;color:var(--att-muted);font-size:.72rem}body.attendance-body .attendance-offset-input{display:grid;align-items:center;grid-template-columns:auto minmax(70px,110px) auto;gap:8px}body.attendance-body .attendance-offset-input b{color:var(--att-muted);font-size:.8rem}body.attendance-body .attendance-roster-v2{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:18px}body.attendance-body .attendance-roster-input-pane,body.attendance-body .attendance-roster-result-pane{min-width:0;padding:18px;border:1px solid var(--att-line);border-radius:16px;background:var(--att-surface)}body.attendance-body .attendance-roster-input-pane{display:grid;align-content:start;gap:14px}body.attendance-body .attendance-roster-v2 .attendance-roster-help{margin:-18px -18px 0;border-radius:15px 15px 0 0}body.attendance-body .attendance-roster-v2 .attendance-roster-textarea{border-radius:11px!important;line-height:1.75;white-space:pre-wrap}body.attendance-body .attendance-roster-result-pane>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}body.attendance-body .attendance-roster-result-pane>header strong,body.attendance-body .attendance-roster-result-pane>header small{display:block}body.attendance-body .attendance-roster-result-pane>header small{color:var(--att-muted);font-size:.73rem}body.attendance-body .attendance-roster-result-pane>header>span{padding:5px 10px;color:var(--att-accent);border:1px solid var(--att-accent-line);border-radius:999px;background:var(--att-accent-soft);font-size:.75rem;font-weight:800}body.attendance-body .attendance-roster-cards{display:grid;max-height:520px;padding-right:4px;gap:7px;overflow-y:auto}body.attendance-body .attendance-roster-cards article{display:flex;align-items:center;min-width:0;padding:10px 10px 10px 12px;gap:10px;border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft)}body.attendance-body .attendance-roster-cards article>span{display:grid;min-width:0;grid-template-columns:70px minmax(80px,.65fr) minmax(150px,1.35fr);align-items:center;gap:9px}body.attendance-body .attendance-roster-cards article b{font-variant-numeric:tabular-nums}body.attendance-body .attendance-roster-cards article small{overflow:hidden;color:var(--att-muted);text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-roster-cards article>button{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;margin-left:auto;color:var(--att-muted);border:1px solid var(--att-line);border-radius:8px;background:var(--att-surface)}body.attendance-body .attendance-roster-errors{display:grid;padding:12px;gap:8px;color:var(--att-danger);border:1px solid color-mix(in srgb,var(--att-danger) 28%,var(--att-line));border-radius:11px;background:var(--att-danger-soft)}body.attendance-body .attendance-roster-errors p{display:grid;margin:0;font-size:.76rem}body.attendance-body .attendance-question-columns{display:grid;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}body.attendance-body .attendance-question-lane{min-width:0;padding:18px;border:1px solid var(--att-line);border-radius:17px;background:var(--att-surface-soft)}body.attendance-body .attendance-question-lane.enabled{border-color:var(--att-line-strong);background:var(--att-surface);box-shadow:0 8px 24px rgba(16,24,40,.05)}body.attendance-body .attendance-question-lane>header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;gap:12px}body.attendance-body .attendance-question-lane>header>div>span{color:var(--att-accent);font-size:.68rem;font-weight:800;letter-spacing:.08em}body.attendance-body .attendance-question-lane h3,body.attendance-body .attendance-question-lane p{margin:0}body.attendance-body .attendance-question-lane h3{font-size:1.12rem}body.attendance-body .attendance-question-lane p{color:var(--att-muted);font-size:.76rem}body.attendance-body .attendance-mini-switch{display:grid;justify-items:center;flex:0 0 auto;gap:4px}body.attendance-body .attendance-mini-switch input{position:absolute;opacity:0}body.attendance-body .attendance-mini-switch>span{position:relative;width:42px;height:24px;border-radius:999px;background:var(--att-line-strong);transition:background .15s ease}body.attendance-body .attendance-mini-switch>span:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.3);content:"";transition:transform .15s ease}body.attendance-body .attendance-mini-switch input:checked+span{background:var(--att-accent)}body.attendance-body .attendance-mini-switch input:checked+span:after{transform:translate(18px)}body.attendance-body .attendance-mini-switch>b{color:var(--att-muted);font-size:.64rem}body.attendance-body .attendance-question-card.compact-card{padding:13px;grid-template-columns:38px minmax(0,1fr) 34px;gap:9px;border-radius:12px}body.attendance-body .attendance-question-card.compact-card .attendance-question-meta{grid-template-columns:minmax(120px,1fr) auto}body.attendance-body .attendance-question-card.compact-card .attendance-question-meta .attendance-check{grid-column:auto}body.attendance-body .attendance-response-route{display:grid;margin-bottom:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body.attendance-body .attendance-response-route button{display:flex;align-items:center;min-width:0;min-height:66px;padding:10px;gap:8px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft);text-align:left}body.attendance-body .attendance-response-route button.selected{color:var(--att-ink);border-color:var(--att-primary);background:var(--att-surface);box-shadow:inset 0 0 0 1px var(--att-primary)}body.attendance-body .attendance-response-route button span,body.attendance-body .attendance-response-route button b,body.attendance-body .attendance-response-route button small{display:block;min-width:0}body.attendance-body .attendance-response-route button small{color:var(--att-muted);font-size:.67rem}body.attendance-body .attendance-record2-editor{display:grid;gap:10px}body.attendance-body .attendance-record2-question{display:grid;padding:13px;grid-template-columns:38px minmax(0,1fr) 34px;gap:9px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface)}body.attendance-body .attendance-record2-question>div:nth-child(2){display:grid;min-width:0;gap:10px}body.attendance-body .attendance-record2-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}body.attendance-body .attendance-record2-meta .attendance-check{min-height:38px;padding:0 10px;border:1px solid var(--att-line);border-radius:9px;background:var(--att-surface-soft)}body.attendance-body .attendance-length-input{display:flex;align-items:center;gap:5px;color:var(--att-muted)}body.attendance-body .attendance-length-input input{width:86px;min-height:38px;padding:0 9px;color:var(--att-ink);border:1px solid var(--att-line);border-radius:9px;background:var(--att-surface)}body.attendance-body .attendance-legacy-questions{display:grid;margin-top:18px;gap:7px}body.attendance-body .attendance-legacy-questions>article{display:flex;justify-content:space-between;padding:10px 12px;border:1px solid var(--att-line);border-radius:9px;background:var(--att-surface-soft)}body.attendance-body .attendance-live-stats{grid-template-columns:repeat(5,minmax(0,1fr))}body.attendance-body .attendance-live-stats article.warning{border-color:color-mix(in srgb,var(--att-warning) 30%,var(--att-line));background:var(--att-warning-soft)}body.attendance-body .attendance-single-qr-status{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:14px;padding:9px 11px;gap:8px;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface-soft)}body.attendance-body .attendance-single-qr-status span{display:flex;align-items:center;gap:6px;font-weight:750}body.attendance-body .attendance-single-qr-status b{padding:4px 8px;color:var(--att-blue);border-radius:999px;background:var(--att-blue-soft);font-size:.7rem}body.attendance-body .attendance-single-qr-status b.checkout{color:var(--att-warning);background:var(--att-warning-soft)}body.attendance-body .attendance-event-danger-zone{display:flex;align-items:center;justify-content:space-between;margin-top:28px;padding:16px;gap:16px;border:1px solid color-mix(in srgb,var(--att-danger) 25%,var(--att-line));border-radius:13px;background:var(--att-danger-soft)}body.attendance-body .attendance-event-danger-zone p{margin:3px 0 0;color:var(--att-muted);font-size:.76rem}body.attendance-body .attendance-management-sheet{width:min(100%,560px)}body.attendance-body .attendance-management-actions{display:grid;gap:11px}body.attendance-body .attendance-management-actions>article{padding:14px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-management-actions>article>div,body.attendance-body .attendance-management-action{display:flex;align-items:center;gap:11px}body.attendance-body .attendance-management-actions>article span,body.attendance-body .attendance-management-actions>article strong,body.attendance-body .attendance-management-actions>article small,body.attendance-body .attendance-management-action span,body.attendance-body .attendance-management-action strong,body.attendance-body .attendance-management-action small{display:block;min-width:0}body.attendance-body .attendance-management-actions>article p{margin:9px 0 0 29px;color:var(--att-muted);font-size:.78rem}body.attendance-body .attendance-management-action{width:100%;min-height:66px;padding:11px 13px;color:var(--att-ink);border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface);text-align:left}body.attendance-body .attendance-management-action>span{flex:1}body.attendance-body .attendance-management-action small{color:var(--att-muted)}body.attendance-body .attendance-management-action.danger{color:var(--att-danger);border-color:color-mix(in srgb,var(--att-danger) 28%,var(--att-line));background:var(--att-danger-soft)}body.attendance-body .attendance-event-confirmation{display:grid;justify-items:center;text-align:center}body.attendance-body .attendance-confirm-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:13px;color:var(--att-blue);border-radius:18px;background:var(--att-blue-soft)}body.attendance-body .attendance-confirm-icon.delete{color:var(--att-danger);background:var(--att-danger-soft)}body.attendance-body .attendance-event-confirmation h3,body.attendance-body .attendance-event-confirmation p{margin:0}body.attendance-body .attendance-event-confirmation p{margin-top:7px;color:var(--att-muted)}body.attendance-body .attendance-confirm-event{display:grid;width:100%;margin:18px 0;padding:13px;border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft)}body.attendance-body .attendance-confirm-event span,body.attendance-body .attendance-confirm-event small{color:var(--att-muted);font-size:.73rem}body.attendance-body .attendance-event-confirmation .attendance-field{width:100%;text-align:left}body.attendance-body .attendance-single-qr-note{margin:14px 0 0;color:var(--att-muted);font-size:.82rem}@media(max-width:1000px){body.attendance-body .attendance-roster-v2,body.attendance-body .attendance-question-columns{grid-template-columns:1fr}body.attendance-body .attendance-live-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){body.attendance-body .attendance-welcome h1{font-size:clamp(1.85rem,9vw,2.5rem)}body.attendance-body .attendance-first-event-cta{width:min(100%,330px)}body.attendance-body .attendance-event-home-inner{padding:24px 16px 32px}body.attendance-body .attendance-event-home-head{align-items:stretch;margin-bottom:18px;padding-bottom:18px;flex-direction:column;gap:18px}body.attendance-body .attendance-event-home-head h1{font-size:2rem}body.attendance-body .attendance-event-home-create{width:100%;min-width:0}body.attendance-body .attendance-event-home-grid{grid-template-columns:minmax(0,1fr)}body.attendance-body .attendance-editor-actions .attendance-manage-button{display:inline-grid;width:39px;min-width:39px;padding:0;place-items:center;font-size:0}body.attendance-body .attendance-detail-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}body.attendance-body .attendance-detail-nav button{min-width:0;justify-content:center;padding:0 5px;font-size:.72rem}body.attendance-body .attendance-edit-subnav{justify-content:flex-start;padding:0 12px;gap:20px;overflow-x:auto}body.attendance-body .attendance-edit-subnav button{flex:0 0 auto;min-height:48px}body.attendance-body .attendance-chip-options{font-size:16px}body.attendance-body .attendance-roster-input-pane,body.attendance-body .attendance-roster-result-pane,body.attendance-body .attendance-question-lane{padding:14px}body.attendance-body .attendance-roster-v2 .attendance-roster-help{margin:-14px -14px 0}body.attendance-body .attendance-roster-cards article>span{grid-template-columns:62px minmax(90px,1fr)}body.attendance-body .attendance-roster-cards article small{grid-column:1 / -1}body.attendance-body .attendance-response-route{grid-template-columns:1fr}body.attendance-body .attendance-question-card.compact-card,body.attendance-body .attendance-record2-question{grid-template-columns:32px minmax(0,1fr)}body.attendance-body .attendance-question-card.compact-card>.attendance-icon-button,body.attendance-body .attendance-record2-question>.attendance-icon-button{grid-column:2;justify-self:end}body.attendance-body .attendance-question-card.compact-card .attendance-question-meta{grid-template-columns:1fr}body.attendance-body .attendance-event-danger-zone{align-items:stretch;flex-direction:column}body.attendance-body .attendance-management-backdrop{align-items:end}body.attendance-body .attendance-management-sheet{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));border-radius:18px 18px 0 0}}@media(max-width:430px){body.attendance-body .attendance-live-stats{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-editor-title h1{max-width:43vw}}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar{color:#edf3f8;border-right-color:#202a35;background:#12181f}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-kicker{color:#64b5ff}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar h2,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-card,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-empty strong{color:#f7fafc}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-search input{color:#f7fafc;border-color:#344151;background:#1b2530}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-search input::-moz-placeholder{color:#9eabba}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-search input::placeholder,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-card-top>small,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-meta,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-progress small,html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-empty{color:#9eabba}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-list-empty{color:#b7c2ce;border-color:#3c4b5d;background:#18212b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.024)}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-card{border-color:#2c3744;background:#18212b}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-card:hover{border-color:#4c6278;background:#1c2834}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-card.active{border-color:#2795df;background:#163346;box-shadow:0 0 0 1px #2795df}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-progress{border-top-color:#2d3946}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-filters button{color:#b7c2ce;border-color:#344151;background:transparent}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-filters button.active{color:#d9efff;border-color:#2979b8;background:#173449}html[data-attendance-theme=light] body.attendance-body .attendance-editor{background:#f4f6f8}html[data-attendance-theme=light] body.attendance-body .attendance-editor-head,html[data-attendance-theme=light] body.attendance-body .attendance-step-nav{background:#fff}body.attendance-body .attendance-dashboard-command{display:grid;gap:18px}body.attendance-body .attendance-command-hero{display:grid;align-items:stretch;min-height:220px;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);border:1px solid #101820;border-radius:18px;background:#111820;box-shadow:0 13px 29px rgba(16,24,32,.14)}body.attendance-body .attendance-command-hero-copy{display:grid;align-content:center;padding:clamp(26px,4vw,42px);gap:5px}body.attendance-body .attendance-command-hero-copy>p{margin:0 0 4px;color:#62b9ff;font-size:.7rem;font-weight:850;letter-spacing:.14em}body.attendance-body .attendance-command-hero-copy h3,body.attendance-body .attendance-command-hero-copy strong,body.attendance-body .attendance-command-hero-copy span{margin:0}body.attendance-body .attendance-command-hero-copy h3{color:#c5ced7;font-size:.95rem;font-weight:700}body.attendance-body .attendance-command-hero-copy strong{color:#fff;font-size:clamp(1.75rem,3vw,2.65rem);line-height:1.16;letter-spacing:-.055em}body.attendance-body .attendance-command-hero-copy span{max-width:480px;margin-top:7px;color:#aebbc8;font-size:.83rem;line-height:1.65}body.attendance-body .attendance-command-phase-rail{display:grid;align-content:center;padding:22px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.09))}body.attendance-body .attendance-command-phase-rail>svg{align-self:center;color:#6f7d8c}body.attendance-body .attendance-command-phase{display:grid;min-height:126px;padding:17px 14px;align-content:center;justify-items:center;gap:3px;color:#718090;border:1px solid #344353;border-radius:15px;background:#17212b;text-align:center}body.attendance-body .attendance-command-phase b{display:grid;place-items:center;width:26px;height:26px;margin-bottom:5px;color:#c4cfda;border-radius:50%;background:#293746;font-size:.72rem}body.attendance-body .attendance-command-phase strong{color:#dce5ed;font-size:.96rem}body.attendance-body .attendance-command-phase small{color:inherit;font-size:.72rem}body.attendance-body .attendance-command-phase.active{color:#bde4ff;border-color:#39a8f6;background:#123d5a;box-shadow:inset 0 0 0 1px rgba(124,205,255,.12)}body.attendance-body .attendance-command-phase.active b{color:#063657;background:#72c7ff}body.attendance-body .attendance-command-phase.active strong{color:#fff}body.attendance-body .attendance-command-phase.unavailable{opacity:.5}body.attendance-body .attendance-dashboard-snapshot{margin-bottom:2px;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}body.attendance-body .attendance-dashboard-snapshot article{min-height:88px;padding:15px 16px;align-items:flex-end;flex-wrap:wrap;border-color:var(--att-line);background:var(--att-surface);box-shadow:0 1px 2px rgba(16,24,40,.02)}body.attendance-body .attendance-dashboard-snapshot article>span{width:100%;margin:0;font-weight:700}body.attendance-body .attendance-dashboard-snapshot strong{font-size:1.75rem;letter-spacing:-.045em}body.attendance-body .attendance-dashboard-command .attendance-qr-layout{grid-template-columns:minmax(340px,.82fr) minmax(360px,1.18fr);gap:18px}body.attendance-body .attendance-dashboard-command .attendance-qr-card,body.attendance-body .attendance-dashboard-command .attendance-operation-guide{border-color:#d9e0e7;border-radius:17px;box-shadow:0 2px 7px rgba(16,24,40,.03)}body.attendance-body .attendance-dashboard-command .attendance-qr-card{min-height:470px;align-content:center}body.attendance-body .attendance-dashboard-command .attendance-operation-guide{display:grid;align-content:start}body.attendance-body .attendance-dashboard-command .attendance-single-qr-status{border-color:#d9e0e7;background:#f5f8fb}body.attendance-body .attendance-dashboard-command .attendance-submissions{padding:22px;border:1px solid #d9e0e7;border-radius:17px;background:var(--att-surface)}@media(max-width:1180px){body.attendance-body .attendance-command-hero{grid-template-columns:1fr}body.attendance-body .attendance-command-phase-rail{padding-top:0}body.attendance-body .attendance-dashboard-snapshot{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){body.attendance-body .attendance-command-hero{min-height:0;border-radius:15px}body.attendance-body .attendance-command-hero-copy{padding:25px 20px 18px}body.attendance-body .attendance-command-hero-copy strong{font-size:1.72rem}body.attendance-body .attendance-command-phase-rail{padding:0 16px 17px}body.attendance-body .attendance-command-phase{min-height:105px;padding:13px 8px}body.attendance-body .attendance-dashboard-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body.attendance-body .attendance-dashboard-snapshot article{min-height:80px;padding:12px}body.attendance-body .attendance-dashboard-snapshot strong{font-size:1.45rem}body.attendance-body .attendance-dashboard-command .attendance-qr-card,body.attendance-body .attendance-dashboard-command .attendance-operation-guide,body.attendance-body .attendance-dashboard-command .attendance-submissions{border-radius:14px}body.attendance-body .attendance-dashboard-command .attendance-qr-card{min-height:0}}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-search input{border-color:#526377}html[data-attendance-theme=light] body.attendance-body .attendance-event-sidebar .attendance-event-filters{border-color:#3c4b5d}body.attendance-body .attendance-dashboard-snapshot{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));justify-content:center}body.attendance-body .attendance-dashboard-command .attendance-qr-launch-card{min-height:390px}@media(max-width:760px){body.attendance-body .attendance-dashboard-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}html.attendance-large-text body.attendance-body .attendance-dashboard-snapshot{display:grid;grid-template-columns:1fr}body.attendance-body .attendance-dashboard-command .attendance-qr-launch-card{min-height:0}}body.attendance-body .attendance-live-edit-note{display:flex;align-items:center;margin:0 0 16px;gap:9px;color:var(--att-accent);font-size:.84rem;font-weight:760}body.attendance-body .attendance-live-edit-note>svg{flex:0 0 auto;width:18px;height:18px}body.attendance-body .attendance-live-editable-field>input,body.attendance-body .attendance-live-editable-field>textarea,body.attendance-body .attendance-live-editable-field .attendance-field>input{border-color:color-mix(in srgb,var(--att-accent) 76%,var(--att-line-strong));box-shadow:none}body.attendance-body .attendance-settings-gps.attendance-live-editable-field{border-color:color-mix(in srgb,var(--att-accent) 58%,var(--att-line));background:color-mix(in srgb,var(--att-accent-soft) 18%,var(--att-surface-soft))}body.attendance-body .attendance-settings-panel .attendance-live-locked-group input:disabled,body.attendance-body .attendance-settings-panel .attendance-live-locked-group textarea:disabled,body.attendance-body .attendance-settings-panel .attendance-live-locked-group select:disabled,body.attendance-body .attendance-settings-panel .attendance-live-locked-group button:disabled{opacity:1;color:var(--att-muted)}body.attendance-body .attendance-live-locked-group .attendance-chip-options,body.attendance-body .attendance-live-locked-group>input:disabled,body.attendance-body .attendance-live-locked-group>textarea:disabled,body.attendance-body .attendance-live-locked-group .attendance-offset-input,body.attendance-body .attendance-live-locked-group .attendance-choice-grid>label{border-color:var(--att-line);background:color-mix(in srgb,var(--att-surface-soft) 78%,var(--att-line))}body.attendance-body .attendance-live-locked-group .attendance-choice-grid>label{color:var(--att-muted);box-shadow:none}body.attendance-body .attendance-live-locked-group .attendance-chip-options button.selected:disabled{color:var(--att-muted);border-color:var(--att-line-strong);background:color-mix(in srgb,var(--att-surface-soft) 62%,var(--att-line));box-shadow:none}body.attendance-body .attendance-live-locked-group .attendance-choice-grid svg{color:var(--att-subtle)}body.attendance-body .attendance-live-locked-note{display:flex;align-items:flex-start;margin:-8px 0 18px;padding:9px 11px;gap:9px;color:var(--att-muted);border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface-soft);font-size:.8rem}body.attendance-body .attendance-live-locked-note>svg{flex:0 0 auto;margin-top:1px}body.attendance-body .attendance-settings-text-grid{margin-top:14px}body.attendance-body .attendance-settings-datetime-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}body.attendance-body .attendance-settings-datetime-grid>.attendance-field{min-width:0;max-width:100%}body.attendance-body .attendance-settings-datetime-grid input[type=datetime-local]{display:block;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;inline-size:100%!important;min-inline-size:0!important;max-inline-size:100%!important;-webkit-min-logical-width:0!important}body.attendance-body .attendance-settings-datetime-grid input[type=datetime-local]::-webkit-date-and-time-value,body.attendance-body .attendance-settings-datetime-grid input[type=datetime-local]::-webkit-datetime-edit{display:inline-flex;align-items:center;min-height:100%;height:100%;min-width:0;line-height:1;text-align:left}body.attendance-body .attendance-settings-datetime-grid input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{display:inline-flex;align-items:center;min-height:100%}body.attendance-body .attendance-settings-operation-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}body.attendance-body .attendance-settings-operation-grid>*{min-width:0}body.attendance-body .attendance-settings-operation-grid>.span-2{grid-column:1 / -1}body.attendance-body .attendance-settings-gps{display:grid;align-content:start;min-width:0;padding:11px 13px;gap:8px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-settings-gps .attendance-switch-row{margin:0}body.attendance-body .attendance-settings-gps .attendance-field{padding-top:8px;border-top:1px solid var(--att-line)}@media(min-width:1181px){html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel{width:min(100% - 44px,1220px);padding-top:16px;padding-bottom:22px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel>.attendance-section-heading{margin-bottom:10px}html:not(.attendance-large-text) body.attendance-body .attendance-live-edit-note{margin-bottom:11px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-form-grid{-moz-column-gap:14px;column-gap:14px;row-gap:9px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-field{gap:4px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-field input,html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-field select{height:40px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-field textarea{min-height:58px;padding-top:8px;padding-bottom:8px;line-height:1.35}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-chip-field legend{margin-bottom:4px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-chip-options{min-height:40px;padding:3px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-chip-options button{min-height:32px;padding:0 12px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-text-grid{margin-top:9px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-datetime-grid{gap:14px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-subsection{margin-top:12px;padding-top:11px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-mode>h3{margin-bottom:7px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-mode .attendance-choice-grid>label{min-height:56px;padding:9px 12px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-operation-grid{gap:12px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-gps{padding:8px 11px;gap:5px}html:not(.attendance-large-text) body.attendance-body .attendance-settings-panel .attendance-event-danger-zone{min-height:54px;margin-top:12px;padding:9px 12px}}@media(max-width:1366px){body.attendance-body .attendance-settings-panel .attendance-chip-options{flex-wrap:wrap;overflow-x:visible}body.attendance-body .attendance-settings-panel .attendance-chip-options button{padding-right:8px!important;padding-left:8px!important}body.attendance-body .attendance-settings-datetime-grid input[type=datetime-local]{font-size:16px}body.attendance-body .attendance-settings-datetime-grid{grid-template-columns:minmax(0,1fr);gap:12px}}@media(min-width:761px){body.attendance-body .attendance-editor.attendance-dashboard-active .attendance-editor-head{min-height:74px;padding-top:10px;padding-bottom:10px}body.attendance-body .attendance-editor.attendance-dashboard-active .attendance-step-nav button{min-height:46px}}body.attendance-body .attendance-dashboard-panel{padding-top:18px}body.attendance-body .attendance-dashboard-panel>.attendance-section-heading{margin-bottom:13px}body.attendance-body .attendance-dashboard-panel>.attendance-section-heading .attendance-button{flex:0 0 auto;white-space:nowrap}body.attendance-body .attendance-dashboard-panel>.attendance-section-heading .attendance-kicker{margin-bottom:2px}body.attendance-body .attendance-dashboard-command{gap:10px}body.attendance-body .attendance-field-console{display:grid;padding:14px;gap:11px;overflow:hidden;color:var(--att-ink);border:1px solid var(--att-console-line);border-radius:16px;background:var(--att-surface);box-shadow:0 7px 22px rgba(16,24,40,.08)}body.attendance-body .attendance-field-console-head,body.attendance-body .attendance-field-console-status,body.attendance-body .attendance-field-console-actions,body.attendance-body .attendance-console-section-head,body.attendance-body .attendance-phase-controls-head,body.attendance-body .attendance-submission-head-actions{display:flex;align-items:center;min-width:0}body.attendance-body .attendance-field-console-head{justify-content:space-between;margin:-14px -14px 0;padding:13px 14px;gap:14px;color:var(--att-console-ink);border-bottom:1px solid var(--att-console-line);background:var(--att-console-bg);box-shadow:inset 0 -1px rgba(255,255,255,.024)}body.attendance-body .attendance-field-console-status{gap:10px}body.attendance-body .attendance-live-indicator{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;color:#a9c9ff;border:1px solid #405873;border-radius:12px;background:#1b2a3a}body.attendance-body .attendance-field-console.completed .attendance-live-indicator,body.attendance-body .attendance-field-console.closed .attendance-live-indicator{color:#6ee7b7;border-color:#2f735f;background:#15342c}body.attendance-body .attendance-field-console-status>span:last-child{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:0 8px}body.attendance-body .attendance-field-console-status small,body.attendance-body .attendance-field-console-status em{color:var(--att-console-muted);font-size:.76rem;font-style:normal;white-space:nowrap}body.attendance-body .attendance-field-console-status strong{color:var(--att-console-ink);font-size:1.14rem;line-height:1.2;letter-spacing:-.025em;word-break:keep-all;white-space:nowrap}body.attendance-body .attendance-field-console-status em{grid-column:1 / -1;margin-top:1px}body.attendance-body .attendance-field-console-actions{flex:0 0 auto;justify-content:flex-end;flex-wrap:wrap;gap:6px}body.attendance-body .attendance-field-console-actions .attendance-button{min-height:37px;padding:0 11px;font-size:.76rem}body.attendance-body .attendance-field-console-head .attendance-button.primary{color:#101820;border-color:#f8fafc;background:#f8fafc;box-shadow:0 1px 2px rgba(0,0,0,.28)}body.attendance-body .attendance-field-console-head .attendance-button.secondary{color:#f8fafc;border-color:#465869;background:#1b2631}body.attendance-body .attendance-field-console-head .attendance-button.ghost{color:#cad5df;border-color:transparent;background:transparent}body.attendance-body .attendance-field-console-head .attendance-button.primary:not(:disabled):hover{border-color:#fff;background:#fff;box-shadow:0 5px 16px rgba(0,0,0,.3)}body.attendance-body .attendance-field-console-head .attendance-button.secondary:not(:disabled):hover,body.attendance-body .attendance-field-console-head .attendance-button.ghost:not(:disabled):hover{color:#fff;border-color:#66788a;background:#273440}body.attendance-body .attendance-field-console-grid{display:grid;min-width:0;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:10px}body.attendance-body .attendance-operation-flow-wrap,body.attendance-body .attendance-phase-controls{min-width:0;margin:0;padding:11px;gap:9px;border:1px solid var(--att-line);border-radius:12px;background:var(--att-surface-soft)}body.attendance-body .attendance-operation-flow-wrap{display:grid}body.attendance-body .attendance-console-section-head,body.attendance-body .attendance-phase-controls-head{justify-content:space-between;gap:10px}body.attendance-body .attendance-console-section-head>span,body.attendance-body .attendance-phase-controls-head>span{display:grid;min-width:0}body.attendance-body .attendance-console-section-head small,body.attendance-body .attendance-phase-controls-head small{color:var(--att-accent);font-size:.61rem;font-weight:850;letter-spacing:.11em}body.attendance-body .attendance-console-section-head strong,body.attendance-body .attendance-phase-controls-head strong{font-size:.96rem;line-height:1.25}body.attendance-body .attendance-console-section-head>b{flex:0 0 auto;padding:3px 8px;color:var(--att-blue);border-radius:999px;background:var(--att-blue-soft);font-size:.66rem}body.attendance-body .attendance-operation-flow{display:grid;margin:0;padding:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;list-style:none}body.attendance-body .attendance-operation-flow li{position:relative;min-width:0;color:var(--att-muted);text-align:center}body.attendance-body .attendance-operation-flow li:not(:last-child):after{position:absolute;z-index:3;top:27px;left:calc(100% + 8px);display:grid;width:16px;height:18px;place-items:center;color:var(--att-muted);background:var(--att-surface-soft);content:"→";font-size:.88rem;font-weight:900;line-height:1;pointer-events:none;transform:translate(-50%,-50%)}body.attendance-body .attendance-operation-step-button{position:relative;z-index:1;display:grid;width:100%;min-width:0;min-height:72px;padding:6px 3px 7px;justify-items:center;gap:3px;color:inherit;border:1px solid var(--att-line);border-radius:10px;background:var(--att-surface);box-shadow:0 1px 2px color-mix(in srgb,var(--att-ink) 7%,transparent);cursor:pointer;text-align:inherit;transition:color .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}body.attendance-body .attendance-operation-step-button>span:last-child{display:grid;min-width:0}body.attendance-body .attendance-operation-step-button:hover:not(:disabled){color:var(--att-blue);border-color:color-mix(in srgb,var(--att-blue) 58%,var(--att-line));background:color-mix(in srgb,var(--att-blue-soft) 70%,var(--att-surface));box-shadow:0 5px 12px color-mix(in srgb,var(--att-blue) 16%,transparent);transform:translateY(-2px)}body.attendance-body .attendance-operation-step-button:hover:not(:disabled) .attendance-operation-step-icon{color:var(--att-primary-ink);border-color:var(--att-blue);background:var(--att-blue)}body.attendance-body .attendance-operation-step-button:focus-visible{border-color:var(--att-blue);outline:3px solid color-mix(in srgb,var(--att-blue) 34%,transparent);outline-offset:2px}body.attendance-body .attendance-operation-step-button:disabled{cursor:not-allowed;box-shadow:none}body.attendance-body .attendance-operation-step-icon{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;color:var(--att-muted);border:1.5px solid var(--att-line-strong);border-radius:50%;background:var(--att-surface);transition:color .15s ease,border-color .15s ease,background .15s ease}body.attendance-body .attendance-operation-step-icon svg{width:14px;height:14px}body.attendance-body .attendance-operation-flow li strong{color:var(--att-ink);font-size:.75rem;line-height:1.2;white-space:nowrap}body.attendance-body .attendance-operation-flow li small{color:inherit;font-size:.62rem;line-height:1.25;white-space:nowrap}body.attendance-body .attendance-operation-flow li.completed .attendance-operation-step-icon{color:var(--att-accent);border-color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-operation-flow li.completed .attendance-operation-step-button{border-color:color-mix(in srgb,var(--att-accent) 44%,var(--att-line))}body.attendance-body .attendance-operation-flow li.completed:not(:last-child):after{color:var(--att-accent)}body.attendance-body .attendance-operation-flow li.active{color:var(--att-blue)}body.attendance-body .attendance-operation-flow li.active .attendance-operation-step-icon{color:var(--att-primary-ink);border-color:var(--att-blue);background:var(--att-blue);box-shadow:0 0 0 4px color-mix(in srgb,var(--att-blue-soft) 88%,transparent)}body.attendance-body .attendance-operation-flow li.active .attendance-operation-step-button{border-color:var(--att-blue);background:color-mix(in srgb,var(--att-blue-soft) 62%,var(--att-surface));box-shadow:0 3px 10px color-mix(in srgb,var(--att-blue) 14%,transparent)}body.attendance-body .attendance-operation-flow li.active .attendance-operation-step-button:hover:not(:disabled){background:color-mix(in srgb,var(--att-blue-soft) 82%,var(--att-surface));box-shadow:0 6px 14px color-mix(in srgb,var(--att-blue) 22%,transparent)}body.attendance-body .attendance-operation-flow li.active strong{color:var(--att-blue)}body.attendance-body .attendance-operation-flow li.unavailable{opacity:.44}body.attendance-body .attendance-operation-flow li.unavailable .attendance-operation-step-icon{border-style:dashed}body.attendance-body .attendance-phase-controls{display:grid;align-content:start}body.attendance-body .attendance-phase-controls-head>em{color:var(--att-muted);font-size:.65rem;font-style:normal;text-align:right}body.attendance-body .attendance-phase-option-grid{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}body.attendance-body .attendance-phase-option-grid button{display:grid;align-items:center;min-width:0;min-height:62px;padding:8px 10px;grid-template-columns:auto minmax(0,1fr);gap:7px;color:var(--att-muted);border:1px solid var(--att-line-strong);border-radius:9px;background:var(--att-surface);text-align:left}body.attendance-body .attendance-phase-option-grid button>svg{width:16px;height:16px}body.attendance-body .attendance-phase-option-grid button>span{display:grid;min-width:0}body.attendance-body .attendance-phase-option-grid button strong{overflow:hidden;color:var(--att-ink);font-size:.83rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-phase-option-grid button small{margin-top:2px;color:inherit;font-size:.68rem;line-height:1.3;white-space:nowrap}body.attendance-body .attendance-phase-option-grid button:hover:not(:disabled){border-color:var(--att-subtle);transform:translateY(-1px)}body.attendance-body .attendance-phase-option-grid button.active{color:var(--att-primary-ink);border-color:var(--att-primary);background:var(--att-primary);box-shadow:0 5px 14px color-mix(in srgb,var(--att-primary) 18%,transparent)}body.attendance-body .attendance-phase-option-grid button.active strong{color:var(--att-primary-ink)}body.attendance-body .attendance-phase-option-grid button.is-guided{border-color:var(--att-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--att-blue) 24%,transparent);animation:attendance-phase-guide-pulse .9s ease-in-out 2}body.attendance-body .attendance-phase-guide{display:flex;align-items:center;min-height:30px;margin:0;padding:5px 9px;gap:7px;color:var(--att-blue);border-radius:8px;background:var(--att-blue-soft);font-size:.7rem;font-weight:750}body.attendance-body .attendance-phase-guide svg{flex:0 0 auto;width:15px;height:15px}@keyframes attendance-phase-guide-pulse{50%{transform:translateY(-2px)}}body.attendance-body .attendance-phase-option-grid button.unavailable{border-style:dashed}body.attendance-body .attendance-phase-option-grid button:disabled{opacity:.48}body.attendance-body .attendance-phase-option-grid button:focus-visible,body.attendance-body .attendance-view-toggle button:focus-visible,body.attendance-body .attendance-participant-card:focus-visible,body.attendance-body .attendance-operation-details summary:focus-visible{outline:3px solid color-mix(in srgb,var(--att-blue) 42%,transparent);outline-offset:2px}body.attendance-body .attendance-operation-details{border-top:1px solid var(--att-line)}body.attendance-body .attendance-operation-details summary{display:flex;align-items:center;justify-content:space-between;min-height:35px;padding:7px 2px 0;gap:10px;color:var(--att-muted);list-style:none;border-radius:7px}body.attendance-body .attendance-operation-details summary::-webkit-details-marker{display:none}body.attendance-body .attendance-operation-details summary>span{display:flex;align-items:center;min-width:0;gap:7px}body.attendance-body .attendance-operation-details summary strong{color:var(--att-ink);font-size:.75rem}body.attendance-body .attendance-operation-details summary small{font-size:.68rem}body.attendance-body .attendance-operation-details summary>svg{transition:transform .15s ease}body.attendance-body .attendance-operation-details[open] summary>svg{transform:rotate(180deg)}body.attendance-body .attendance-operation-detail-grid{display:grid;padding:10px 0 2px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}body.attendance-body .attendance-operation-detail-grid p{display:grid;min-width:0;margin:0;padding:9px;gap:2px;border-radius:9px;background:var(--att-surface-soft)}body.attendance-body .attendance-operation-detail-grid strong{font-size:.72rem}body.attendance-body .attendance-operation-detail-grid span{color:var(--att-muted);font-size:.66rem;line-height:1.45}body.attendance-body .attendance-console-gps{display:flex;align-items:center;min-height:31px;padding:5px 9px;gap:7px;color:var(--att-blue);border-radius:8px;background:var(--att-blue-soft);font-size:.7rem;font-weight:700}body.attendance-body .attendance-console-gps svg{flex:0 0 auto;width:15px;height:15px}body.attendance-body .attendance-console-warning{margin:0;padding:8px 10px}body.attendance-body .attendance-dashboard-snapshot{margin:0;padding:7px;gap:7px;border:1px solid var(--att-line);border-radius:15px;background:var(--att-surface-soft)}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;min-height:59px;padding:8px 7px;gap:5px;color:var(--att-ink);border:1px solid var(--att-line);border-radius:13px;background:var(--att-surface);text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button>span{width:100%;min-width:0;margin-right:0;overflow:hidden;color:var(--att-muted);font-size:.69rem;font-weight:700;justify-self:start;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button.walk-in>span{font-size:.64rem;letter-spacing:-.015em}body.attendance-body .attendance-dashboard-snapshot strong{font-size:1.32rem;font-variant-numeric:tabular-nums;justify-self:end;line-height:1}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button>small{color:var(--att-muted);font-size:.7rem;justify-self:start;line-height:1}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button>svg{align-self:center;width:14px;height:14px;margin-left:0;color:var(--att-subtle);justify-self:end}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button.accent{border-color:var(--att-accent-line);background:var(--att-accent-soft)}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button.warning{border-color:color-mix(in srgb,var(--att-warning) 30%,var(--att-line));background:var(--att-warning-soft)}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button.walk-in{border-color:color-mix(in srgb,var(--att-accent) 38%,var(--att-line));background:color-mix(in srgb,var(--att-accent-soft) 72%,var(--att-surface))}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button:hover{border-color:var(--att-line-strong);box-shadow:0 5px 12px rgba(16,24,40,.08);transform:translateY(-1px)}body.attendance-body .attendance-dashboard-snapshot .attendance-summary-button:focus-visible{outline:3px solid color-mix(in srgb,var(--att-blue) 42%,transparent);outline-offset:2px}body.attendance-body .attendance-dashboard-command .attendance-submissions{margin-top:0;padding:14px;border-radius:14px}body.attendance-body .attendance-dashboard-command .attendance-subsection-head{align-items:center;margin-bottom:9px}body.attendance-body .attendance-dashboard-command .attendance-subsection-head p{margin-top:2px;font-size:.78rem}body.attendance-body .attendance-submission-head-actions{flex:0 0 auto;gap:8px}body.attendance-body .attendance-view-toggle{display:grid;padding:3px;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--att-line);border-radius:9px;background:var(--att-surface-soft)}body.attendance-body .attendance-view-toggle button{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:0 9px;gap:5px;color:var(--att-muted);border:0;border-radius:6px;background:transparent;font-size:.7rem;font-weight:750;white-space:nowrap}body.attendance-body .attendance-view-toggle button svg{width:14px;height:14px}body.attendance-body .attendance-view-toggle button.active{color:var(--att-ink);background:var(--att-surface);box-shadow:0 1px 3px rgba(16,24,40,.11)}body.attendance-body .attendance-dashboard-command .attendance-participant-filters{margin-bottom:9px;padding:8px 10px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px}body.attendance-body .attendance-dashboard-command .attendance-participant-filters>div{grid-template-columns:auto minmax(0,1fr);gap:7px}body.attendance-body .attendance-dashboard-command .attendance-participant-filters button{min-height:29px;padding:0 9px;font-size:.68rem}body.attendance-body .attendance-participant-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}body.attendance-body .attendance-participant-card{position:relative;display:grid;min-width:0;min-height:132px;padding:11px 12px 10px;align-content:start;gap:7px;overflow:hidden;color:var(--att-ink);border:1px solid var(--att-line);border-left:4px solid var(--att-line-strong);border-radius:12px;background:var(--att-surface);text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}body.attendance-body .attendance-participant-card.complete{border-left-color:var(--att-accent);background:linear-gradient(135deg,var(--att-surface) 64%,var(--att-accent-soft))}body.attendance-body .attendance-participant-card.checkin_only,body.attendance-body .attendance-participant-card.checkout_only{border-left-color:var(--att-warning);background:linear-gradient(135deg,var(--att-surface) 64%,var(--att-warning-soft))}body.attendance-body .attendance-participant-card.absent{border-left-color:var(--att-danger);background:linear-gradient(135deg,var(--att-surface) 64%,var(--att-danger-soft))}body.attendance-body .attendance-participant-card:hover:not(:disabled){border-color:var(--att-line-strong);box-shadow:0 7px 17px rgba(16,24,40,.09);transform:translateY(-1px)}body.attendance-body .attendance-participant-card:disabled{cursor:default;opacity:1}body.attendance-body .attendance-participant-card-top,body.attendance-body .attendance-participant-card-main{display:flex;align-items:center;justify-content:space-between;min-width:0;gap:7px}body.attendance-body .attendance-participant-card-top>small{overflow:hidden;color:var(--att-muted);font-size:.69rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-participant-card-main>strong{overflow:hidden;font-size:1.02rem;line-height:1.25;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-participant-card .attendance-registration-status,body.attendance-body .attendance-participant-card .attendance-participant-status{flex:0 0 auto;min-height:22px;padding:2px 7px;font-size:.63rem;white-space:nowrap}body.attendance-body .attendance-participant-card-phases{display:flex;min-width:0;gap:6px}body.attendance-body .attendance-participant-card-phases>span{display:flex;flex:1 1 0;align-items:center;justify-content:space-between;min-width:0;min-height:28px;padding:4px 7px;gap:5px;color:var(--att-muted);border-radius:7px;background:var(--att-surface-soft);font-size:.66rem}body.attendance-body .attendance-participant-card-phases b,body.attendance-body .attendance-participant-card-phases em{overflow:hidden;font-size:inherit;font-style:normal;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-participant-card-phases>span.done{color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-participant-card-phases>span.missing{color:var(--att-danger);background:var(--att-danger-soft)}body.attendance-body .attendance-participant-card-action{display:flex;align-items:center;margin-top:auto;gap:4px;color:var(--att-blue);font-size:.62rem;font-weight:700}body.attendance-body .attendance-participant-card-action svg{width:12px;height:12px}body.attendance-body .attendance-participant-status.absent{color:var(--att-danger);background:var(--att-danger-soft)}body.attendance-body .attendance-participant-status.pending{color:var(--att-muted);background:var(--att-surface-soft)}body.attendance-body .attendance-participant-status.checkin_only,body.attendance-body .attendance-participant-status.checkout_only{color:var(--att-warning);background:var(--att-warning-soft)}body.attendance-body .attendance-participant-status.complete{color:var(--att-accent);background:var(--att-accent-soft)}body.attendance-body .attendance-registration-status.target{color:var(--att-ink);background:var(--att-surface-soft)}body.attendance-body .attendance-registration-status.unregistered{color:var(--att-blue);background:var(--att-blue-soft)}body.attendance-body .attendance-registration-status.open{color:var(--att-muted);background:var(--att-surface-soft)}body.attendance-body .attendance-participant-card-grid{grid-template-columns:repeat(6,minmax(0,1fr))}body.attendance-body .attendance-participant-card{--participant-color: var(--att-line-strong);--participant-tint: var(--att-surface-soft);min-height:96px;padding:0;grid-template-columns:minmax(0,.9fr) minmax(94px,1.1fr);align-content:stretch;gap:0;border-left-width:5px;border-left-color:var(--participant-color);background:var(--att-surface)}body.attendance-body .attendance-participant-card.complete{--participant-color: var(--att-accent);--participant-tint: var(--att-accent-soft);background:var(--att-surface)}body.attendance-body .attendance-participant-card.checkin_only,body.attendance-body .attendance-participant-card.checkout_only{--participant-color: var(--att-warning);--participant-tint: var(--att-warning-soft);background:var(--att-surface)}body.attendance-body .attendance-participant-card.absent{--participant-color: var(--att-danger);--participant-tint: var(--att-danger-soft);background:var(--att-surface)}body.attendance-body .attendance-participant-card.pending{--participant-color: var(--att-line-strong);--participant-tint: var(--att-surface-soft)}body.attendance-body .attendance-participant-card-info,body.attendance-body .attendance-participant-card-highlight{position:relative;display:grid;min-width:0;align-content:center}body.attendance-body .attendance-participant-card-info{z-index:1;padding:10px 7px 10px 11px;justify-items:start}body.attendance-body .attendance-participant-card-info>small,body.attendance-body .attendance-participant-card-info>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-participant-card-info>small{color:var(--att-muted);font-size:.67rem;font-weight:750}body.attendance-body .attendance-participant-card-info>strong{margin:1px 0 5px;font-size:1rem;line-height:1.15;letter-spacing:-.025em}body.attendance-body .attendance-participant-card-highlight{isolation:isolate;padding:9px 9px 9px 18px;justify-items:end;gap:7px}body.attendance-body .attendance-participant-card-highlight:before{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:var(--participant-tint);clip-path:polygon(17% 0,100% 0,100% 100%,0 100%);content:""}body.attendance-body .attendance-participant-card-highlight .attendance-participant-status{max-width:100%;gap:4px;white-space:nowrap}body.attendance-body .attendance-participant-card-highlight .attendance-participant-status svg{flex:0 0 auto;width:12px;height:12px}body.attendance-body .attendance-participant-card-phase-summary{position:relative;z-index:1;display:flex;align-items:center;min-width:0;gap:4px;color:var(--att-muted);font-size:.65rem;white-space:nowrap}body.attendance-body .attendance-participant-card-phase-summary>span{display:inline-flex;align-items:center;gap:3px}body.attendance-body .attendance-participant-card-phase-summary b{color:var(--att-ink)}body.attendance-body .attendance-participant-card-phase-summary em,body.attendance-body .attendance-participant-card-phase-summary>i{font-style:normal}body.attendance-body .attendance-participant-card-phase-summary em{color:var(--participant-color);font-weight:850}body.attendance-body .attendance-participant-summary-modal{width:min(100%,760px);height:min(760px,calc(100dvh - 40px))}body.attendance-body .attendance-participant-summary-body{display:flex;min-height:0;padding:14px 16px;flex-direction:column;gap:10px;overflow:hidden}body.attendance-body .attendance-participant-summary-loading{display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-height:160px;gap:9px;color:var(--att-muted)}body.attendance-body .attendance-participant-summary-list{display:grid;min-height:0;padding-right:3px;align-content:start;gap:8px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}body.attendance-body .attendance-participant-summary-row{display:grid;min-width:0;padding:10px 11px;grid-template-columns:minmax(110px,1fr) auto minmax(150px,auto) auto;align-items:center;gap:10px;border:1px solid var(--att-line);border-radius:11px;background:var(--att-surface)}body.attendance-body .attendance-participant-summary-identity{display:grid;min-width:0}body.attendance-body .attendance-participant-summary-identity strong,body.attendance-body .attendance-participant-summary-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.attendance-body .attendance-participant-summary-identity strong{font-size:.9rem}body.attendance-body .attendance-participant-summary-identity small{color:var(--att-muted);font-size:.7rem}body.attendance-body .attendance-participant-summary-meta,body.attendance-body .attendance-participant-summary-phases,body.attendance-body .attendance-participant-summary-actions{display:flex;align-items:center;gap:6px}body.attendance-body .attendance-participant-summary-phases>span{display:grid;min-width:58px;padding:4px 7px;border-radius:7px;background:var(--att-surface-soft);font-size:.65rem;text-align:center}body.attendance-body .attendance-participant-summary-phases b{color:var(--att-muted)}body.attendance-body .attendance-participant-summary-phases em{color:var(--att-danger);font-style:normal;font-weight:800}body.attendance-body .attendance-participant-summary-phases .done em{color:var(--att-accent)}body.attendance-body .attendance-participant-summary-actions{justify-content:flex-end}body.attendance-body .attendance-participant-summary-actions button{display:inline-flex;align-items:center;min-height:32px;padding:0 9px;gap:5px;color:var(--att-blue);border:1px solid color-mix(in srgb,var(--att-blue) 25%,var(--att-line));border-radius:8px;background:var(--att-blue-soft);font-size:.68rem;font-weight:750;white-space:nowrap}body.attendance-body .attendance-participant-summary-actions button:hover{border-color:var(--att-blue)}body.attendance-body .attendance-participant-summary-actions button:focus-visible{outline:3px solid color-mix(in srgb,var(--att-blue) 42%,transparent);outline-offset:2px}body.attendance-body .attendance-participant-summary-actions svg{width:14px;height:14px}body.attendance-body .attendance-participant-summary-modal>footer{gap:8px}body.attendance-body .attendance-participant-summary-progress{margin-right:auto;color:var(--att-muted);font-size:.72rem}@media(max-width:1180px){body.attendance-body .attendance-field-console-head{align-items:stretch;flex-direction:column}body.attendance-body .attendance-field-console-actions{justify-content:flex-start}body.attendance-body .attendance-field-console-grid,body.attendance-body .attendance-dashboard-command .attendance-participant-filters{grid-template-columns:1fr}body.attendance-body .attendance-operation-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.attendance-body .attendance-participant-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){body.attendance-body .attendance-phase-option-grid{grid-template-columns:1fr}body.attendance-body .attendance-phase-option-grid button{min-height:50px}}@media(max-width:760px){body.attendance-body .attendance-settings-operation-grid{grid-template-columns:1fr}body.attendance-body .attendance-settings-operation-grid>.span-2{grid-column:auto}body.attendance-body .attendance-dashboard-panel{padding-top:15px}body.attendance-body .attendance-dashboard-panel>.attendance-section-heading{margin-bottom:11px}body.attendance-body .attendance-dashboard-panel>.attendance-section-heading p:not(.attendance-kicker){display:none}body.attendance-body .attendance-field-console{padding:10px;gap:9px;border-radius:13px}body.attendance-body .attendance-field-console-head{align-items:stretch;margin:-10px -10px 0;padding:12px 10px;flex-direction:column}body.attendance-body .attendance-field-console-status em{white-space:normal}body.attendance-body .attendance-field-console-actions{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,.8fr))}body.attendance-body .attendance-field-console-actions .attendance-button{min-width:0;padding:0 7px;font-size:.69rem}body.attendance-body .attendance-operation-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 7px}body.attendance-body .attendance-operation-flow li{text-align:left}body.attendance-body .attendance-operation-step-button{position:relative;grid-template-columns:30px minmax(0,1fr);align-items:center;justify-items:stretch;-moz-column-gap:10px;column-gap:10px;padding-inline:12px;text-align:left}body.attendance-body .attendance-operation-flow li:not(:last-child):after{display:none}body.attendance-body .attendance-operation-step-button>span:last-child{justify-self:stretch;text-align:left}body.attendance-body .attendance-operation-step-button .attendance-operation-step-icon{position:relative;left:auto;top:auto;transform:none}body.attendance-body .attendance-phase-option-grid{grid-template-columns:1fr}body.attendance-body .attendance-phase-option-grid button{position:relative;grid-template-columns:18px minmax(0,1fr);justify-items:stretch;gap:10px;min-height:50px;padding-inline:12px;text-align:left}body.attendance-body .attendance-phase-option-grid button>span{width:auto;text-align:left}body.attendance-body .attendance-phase-option-grid button>svg{position:relative;left:auto;top:auto;transform:none}body.attendance-body .attendance-operation-details summary small{display:none}body.attendance-body .attendance-operation-detail-grid{grid-template-columns:1fr}body.attendance-body .attendance-dashboard-snapshot article{min-height:56px}body.attendance-body .attendance-dashboard-command .attendance-submissions{padding:11px}body.attendance-body .attendance-dashboard-command .attendance-subsection-head{align-items:flex-start;flex-direction:column}body.attendance-body .attendance-submission-head-actions{width:100%;justify-content:space-between}body.attendance-body .attendance-dashboard-command .attendance-participant-filters>div{grid-template-columns:1fr}body.attendance-body .attendance-participant-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.attendance-large-text body.attendance-body .attendance-participant-card-grid{grid-template-columns:1fr}body.attendance-body .attendance-participant-summary-modal{width:100%;height:calc(100dvh - max(8px,env(safe-area-inset-top)));border-radius:18px 18px 0 0}body.attendance-body .attendance-participant-summary-body{padding:11px}body.attendance-body .attendance-participant-summary-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}body.attendance-body .attendance-participant-summary-phases{grid-column:1}body.attendance-body .attendance-participant-summary-actions{grid-column:2}}@media(max-width:480px){body.attendance-body .attendance-field-console-status>span:last-child{grid-template-columns:1fr}body.attendance-body .attendance-field-console-status em{grid-column:auto}body.attendance-body .attendance-field-console-actions{grid-template-columns:1fr 1fr}body.attendance-body .attendance-field-console-actions .attendance-button:first-child{grid-column:1 / -1}body.attendance-body .attendance-console-section-head>b,body.attendance-body .attendance-phase-controls-head>em{display:none}body.attendance-body .attendance-operation-step-icon{width:32px;height:32px}}@media(max-width:350px){body.attendance-body .attendance-participant-card-grid,body.attendance-body .attendance-participant-summary-row{grid-template-columns:1fr}body.attendance-body .attendance-participant-summary-meta,body.attendance-body .attendance-participant-summary-phases,body.attendance-body .attendance-participant-summary-actions{grid-column:1;justify-content:flex-start}}@media(prefers-reduced-motion:reduce){body.attendance-body .attendance-phase-option-grid button,body.attendance-body .attendance-operation-step-button,body.attendance-body .attendance-operation-step-icon,body.attendance-body .attendance-operation-details summary>svg,body.attendance-body .attendance-participant-card{transition:none}body.attendance-body .attendance-phase-option-grid button.is-guided{animation:none}}
