:root{--hub-styles-ready:1;--primary:#0062fe;--primary-strong:#0050d6;--primary-soft:#eaf2ff;--primary-softer:#f5f9ff;--primary-line:#cfe0ff;--accent-navy:#0b2a6b;--on-primary:#fff;--ink:#111827;--ink-2:#374151;--muted:#667085;--subtle:#9aa3b5;--surface:#f5f7fa;--line:#e6eaf0;--line-strong:#d5dbe5;--overlay:#0f172a7a;--success:#067647;--success-vivid:#12b76a;--success-soft:#e7f8ef;--danger:#b42318;--danger-vivid:#f04438;--danger-soft:#fef0f0;--warning:#b54708;--warning-vivid:#f79009;--warning-soft:#fff6e5;--purple:#6941c6;--purple-vivid:#9e77ed;--purple-soft:#f4ebff;--line-green:#06c755;--unread:var(--primary);--alert-dot:#f04438;--cat-practice:#12b76a;--cat-match:#f04438;--cat-meeting:#9e77ed;--cat-event:#f79009;--cat-other:#98a2b3;--r-xs:6px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--shadow-card:0 1px 2px #1018280f;--shadow-pop:0 8px 24px #1018281f;--shadow-fab:0 8px 20px #0062fe52;--bottom-nav-h:64px;--fab-size:56px;--mobile-frame-max:430px;--side-nav:240px;--content-max:760px}@media (max-width:760px){:root{--dash-fs-6:12px;--dash-fs-7:12px;--dash-fs-8:12px;--dash-fs-9:12px;--dash-fs-10:12px;--dash-fs-11:12px}}*{box-sizing:border-box}html,body{width:100%;max-width:100%;color:var(--ink);background:#fff;margin:0;overflow-x:clip}body{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Noto Sans JP,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button,a,input,textarea,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.connectivity-status{z-index:90;top:max(8px, env(safe-area-inset-top));border:1px solid var(--success);background:var(--success-soft);width:min(560px,100% - 24px);color:var(--success);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.connectivity-status.is-offline{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.connectivity-status button{min-width:72px;min-height:40px;color:inherit;background:#fff;border:1px solid;font-weight:800}.accessible-dialog-overlay{z-index:80;background:var(--overlay);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.accessible-dialog{border-radius:var(--r-lg);width:min(560px,100%);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-pop);background:#fff;border:0;padding:20px;overflow:auto}.accessible-dialog-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.accessible-dialog-header h2{margin:0;font-size:18px}.accessible-dialog-header button{min-width:44px;min-height:44px;color:var(--primary);background:0 0;border:0;font-size:24px}.bulk-selection-start,.bulk-selection-toolbar button{min-height:44px}.bulk-selection-toolbar{z-index:25;bottom:calc(var(--bottom-nav-h) + 12px + env(safe-area-inset-bottom));border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex;position:sticky}.app-frame{height:calc(100dvh - var(--bottom-nav-h));width:100%;min-height:0;max-width:var(--mobile-frame-max);padding-bottom:calc(24px + env(safe-area-inset-bottom));--shell-topbar-height:calc(max(8px, env(safe-area-inset-top)) + 52px);background:#fff;margin:0 auto;position:relative;overflow:hidden auto}.topbar{z-index:20;min-height:56px;padding:max(6px, env(safe-area-inset-top)) 12px 6px 16px;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:8px;display:flex;position:sticky;top:0}.desktop-only-topbar{display:none}.brand{color:var(--ink);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:8px;font-size:17px;font-weight:900;display:flex}.brand-mark{width:30px;height:30px;color:var(--primary);place-items:center;display:grid}.brand-mark svg{width:100%;height:100%}.top-actions{align-items:center;gap:0;display:flex}.top-actions-slot{display:contents}.icon-button{border-radius:var(--r-pill);width:44px;height:44px;color:var(--ink);background:0 0;border:0;place-items:center;display:grid;position:relative}.icon-button svg{width:24px;height:24px}.page,.page-wide{width:100%;min-width:0;max-width:100%;padding:16px 16px 96px}.narrow-page{max-width:720px;padding-top:max(16px, calc(env(safe-area-inset-top) + 8px));margin:0 auto}.narrow-page .card{padding:4px 16px 12px}.narrow-page .card h2{font-size:17px}.narrow-page .card h3{margin-bottom:4px;font-size:15px}.narrow-page .card a{color:var(--primary);text-underline-offset:3px;font-weight:700;text-decoration:underline}#main-content{min-width:0;max-width:100%}img,video,canvas{max-width:100%}.conversation-frame{flex-direction:column;height:100dvh;padding-bottom:0;display:flex;overflow:hidden}.conversation-frame>#main-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.conversation-frame:not(.group-conversation-frame) .page{flex-direction:column;height:100%;min-height:0;padding-bottom:0;display:flex;overflow-y:auto}.conversation-frame .page-wide{padding-bottom:32px}.group-conversation-frame{flex-direction:column;height:100dvh;padding-bottom:0;display:flex;overflow:hidden}.group-conversation-frame>.topbar{flex:none}.group-conversation-frame>#main-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.group-conversation-frame .page{height:100%;min-height:0;padding:8px 8px max(8px, env(safe-area-inset-bottom))}.group-conversation-frame[data-keyboard=open] .page{padding-bottom:8px}.page-title{color:var(--ink);letter-spacing:0;margin:0;font-size:22px;font-weight:800;line-height:1.35}.page-subtitle{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.65}.kicker{display:none}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 12px;display:flex}.section-heading h2{color:var(--ink);margin:0;font-size:17px;font-weight:800}.section-heading a,.text-button{color:var(--primary);background:0 0;border:0;padding:0;font-size:13px;font-weight:700}@media (max-width:899px){.section-heading a,.text-button{position:relative}.section-heading a:after,.text-button:after{content:"";position:absolute;inset:-10px 0}}.card.is-read{color:var(--muted)}.card.is-read .post-author{font-weight:400}.schedule-entry{align-items:center;min-height:32px;padding:4px 0;display:inline-flex}.bottom-nav{z-index:30;width:min(var(--mobile-frame-max), 100%);height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));box-sizing:border-box;padding:6px 4px calc(env(safe-area-inset-bottom) + 6px);border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{color:#8b93a3;text-align:center;align-content:center;justify-items:center;gap:3px;min-height:0;padding:4px 2px;font-size:10px;font-weight:600;line-height:1.1;display:grid;position:relative}.nav-item>span{max-width:100%;display:block;position:relative}.nav-item.active{color:var(--primary);font-weight:800}.nav-item.disabled{color:var(--subtle)}.nav-item.disabled .nav-icon{opacity:.55}.nav-icon{width:24px;height:24px;margin:0 auto;display:block}.nav-item.active:before{display:none}.nav-badge{background:var(--alert-dot);pointer-events:none;border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:-2px;right:-9px}.fab{right:max(16px, calc((100vw - var(--mobile-frame-max)) / 2 + 16px));bottom:calc(var(--bottom-nav-h) + 16px + env(safe-area-inset-bottom));z-index:25;width:var(--fab-size);height:var(--fab-size);background:var(--primary);box-shadow:var(--shadow-fab);color:#fff;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:fixed}.fab svg{width:28px;height:28px}.fab-label{display:none}.tabs,.profile-tabs{border:0;border-bottom:1px solid var(--line);background:#fff;border-radius:0;margin:12px 0 16px;display:grid;overflow:visible}.tabs{grid-template-columns:repeat(3,1fr)}.profile-tabs{grid-template-columns:repeat(4,1fr)}.tab,.profile-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;font-size:14px;font-weight:700}.tab.active,.profile-tabs button.active{border-bottom-color:var(--primary);color:var(--primary);background:0 0;font-weight:800}.card{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);background:#fff}.card+.card{margin-top:9px}.post-card{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:13px 0 9px}.post-head{align-items:center;gap:9px;display:flex}.avatar{background:var(--primary-soft);width:40px;height:40px;color:var(--primary-strong);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid;overflow:hidden}.avatar.tan{background:var(--primary-soft);color:var(--ink-2)}.avatar.green{background:var(--success-vivid)}.post-author,.student-name{color:var(--ink);font-size:14px;font-weight:800}.post-meta{color:var(--muted);margin-top:2px;font-size:12px}.post-spacer{flex:1}.badge,.memo-folder{border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary-strong);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge.tan,.memo-folder{background:var(--surface);color:var(--ink-2)}.badge.green{background:var(--success-soft);color:var(--success)}.badge.gray{background:var(--surface);color:var(--muted)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.post-title{color:var(--ink);margin:10px 0 6px;font-size:16px;line-height:1.5}.post-body,.memo-body{color:var(--ink-2);white-space:pre-wrap;margin:0;font-size:15px;line-height:1.75}.tag-row{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.tag{border-radius:var(--r-xs);background:var(--primary-soft);color:var(--primary-strong);padding:3px 9px;font-size:12px;font-weight:600}.reason{background:var(--surface);color:var(--ink-2);border-radius:2px;margin-top:8px;padding:7px;font-size:10px}.post-actions{border-top:1px solid var(--line);grid-template-columns:1.25fr 1.35fr 1fr 28px;gap:2px;margin-top:9px;padding-top:4px;display:grid}.action-button{border-radius:var(--r-sm);min-height:40px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:4px 2px;font-size:13px;font-weight:600;display:inline-flex}.action-button svg{width:20px;height:20px}.action-button:hover{background:var(--surface)}.action-button.liked{color:var(--primary)}.action-button:disabled{color:var(--subtle);cursor:not-allowed}.reaction-action{position:relative}.reaction-summary{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.reaction-summary button{border:1px solid var(--line);min-height:23px;color:var(--ink-2);background:#fff;border-radius:999px;padding:2px 6px;font-size:10px}.reaction-summary button.is-mine{border-color:var(--primary-line);background:var(--surface)}.primary-button,.secondary-button,.ghost-button,.danger-button,.demo-button{border-radius:var(--r-md);border:0;min-height:40px;padding:9px 16px;font-size:14px;font-weight:800;line-height:1.3}.primary-button,.demo-button{background:var(--primary);color:#fff}.secondary-button{background:var(--primary-soft);color:var(--primary-strong)}.ghost-button{border:1px solid var(--line-strong);color:var(--primary);background:#fff}.danger-button{background:var(--danger);color:#fff}a.primary-button,a.secondary-button,a.ghost-button,a.danger-button{justify-content:center;align-items:center;display:inline-flex}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.45}.button-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.button-row>*{text-align:center;flex:none;min-width:0}.button-row:not([role=tablist])>.primary-button{order:1}.button-row[role=tablist],fieldset.button-row,.button-row[aria-label]{justify-content:flex-start}.team-admin-topbar{z-index:20;min-height:56px;padding:max(8px, env(safe-area-inset-top)) 16px 7px;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:8px;display:flex;position:sticky;top:0}.team-admin-account-menu{position:relative}.team-admin-account-menu>summary{list-style:none}.team-admin-account-menu>summary::-webkit-details-marker{display:none}.team-admin-account-menu>.page{border:1px solid var(--line);background:#fff;width:max-content;padding:0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #1018281f}.team-admin-account-menu .text-button{white-space:nowrap;min-height:38px;padding:10px 12px;display:block}.team-admin-account-menu .help{width:240px;margin:0;padding:0 12px 10px}.team-admin-content{width:100%;max-width:800px;margin-inline:auto}#main-content:has(>.team-admin-content>[data-chat-standalone]){flex-direction:column;height:100dvh;display:flex;overflow:hidden}#main-content:has(>.team-admin-content>[data-chat-standalone])>.team-admin-topbar{flex:none}#main-content:has(>.team-admin-content>[data-chat-standalone])>.team-admin-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.team-admin-content:has(>[data-chat-standalone])>.page:first-child{flex:none}.team-admin-content>[data-chat-standalone]{min-height:0;padding-bottom:max(8px, env(safe-area-inset-bottom));flex:1;overflow:hidden}.team-admin-navigation{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:center;gap:2px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.team-admin-nav-link,.team-admin-nav-more>summary{min-height:44px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 10px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.team-admin-nav-more>summary svg:last-child{width:13px;height:13px}.team-admin-nav-link:hover,.team-admin-nav-more>summary:hover{background:var(--primary-soft);color:var(--primary)}.team-admin-nav-link.is-active{border-bottom-color:var(--primary);color:var(--primary)}.team-admin-return{border-right:1px solid var(--line);margin-right:4px}.team-admin-nav-more{flex:none;position:relative}.team-admin-nav-more>summary{cursor:pointer;list-style:none}.team-admin-nav-more>summary::-webkit-details-marker{display:none}.team-admin-nav-more[open]>summary{background:var(--primary-soft);color:var(--primary)}.team-admin-nav-tools{z-index:40;border:1px solid var(--line);border-radius:var(--r-md);min-width:180px;box-shadow:var(--shadow-pop);background:#fff;display:grid;position:fixed;top:120px;right:8px;overflow:hidden}.team-admin-nav-tools a{border-bottom:1px solid var(--line);min-height:44px;color:var(--ink);align-items:center;padding:0 16px;font-size:14px;font-weight:700;display:flex}.team-admin-nav-tools a:last-child{border-bottom:0}.team-admin-nav-tools a:hover{background:var(--primary-soft)}.managed-member-disclosure{width:18px;height:18px;color:var(--muted)}.team-managed-member-detail>.card{margin-top:10px}.team-member-profile-header{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-top:16px;padding:0 0 15px;display:flex}.team-member-profile-avatar{background:var(--primary-soft);width:56px;height:56px;color:var(--primary);object-fit:cover;border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:800;display:grid;overflow:hidden}.team-member-profile-body{min-width:0}.team-member-profile-name{align-items:center;gap:6px;display:flex}.team-member-profile-name .page-title{margin:0}.team-member-profile-body p{color:var(--muted);margin:3px 0 0;font-size:11px}.team-member-groups{margin-top:17px}.team-member-group-list{border-top:1px solid var(--line)}.team-member-group-row{border-bottom:1px solid var(--line);min-height:48px;color:inherit;justify-content:space-between;align-items:center;gap:10px;text-decoration:none;display:flex}.team-member-group-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.team-member-group-row span{color:var(--muted);flex:none;font-size:10px}.team-member-actions{margin-top:14px}.form-card{padding:12px}form label:has(+input:required:not([type=radio]):not([type=checkbox]),+select:required,+textarea:required){justify-self:start;width:fit-content;max-width:100%}form .field:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required)>label{justify-self:start;width:fit-content;max-width:100%}form label:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required){grid-template-columns:max-content max-content minmax(0,1fr);column-gap:2px;display:grid}form label:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required)>:is(input,select,textarea){grid-column:1/-1}form label:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required):after{color:var(--danger);content:"*";vertical-align:super;margin-left:2px;font-size:10px;font-weight:800;line-height:1;display:inline-block}form label:has(+input:required:not([type=radio]):not([type=checkbox]),+select:required,+textarea:required):after{color:var(--danger);content:"*";vertical-align:super;margin-left:2px;font-size:10px;font-weight:800;line-height:1;display:inline-block}form .field:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required)>label:after{color:var(--danger);content:"*";vertical-align:super;margin-left:2px;font-size:10px;font-weight:800;line-height:1;display:inline-block}form fieldset:has(input:required:is([type=radio],[type=checkbox]))>legend:after{color:var(--danger);content:"*";vertical-align:super;margin-left:2px;font-size:10px;font-weight:800;line-height:1;display:inline-block}form label:has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required):after{grid-area:1/2;align-self:start;margin-top:-1px;margin-left:0}@media (max-width:767px){.form-card{padding:8px}}.activity-composer-page>.page-title{margin-bottom:12px}.activity-composer-page>.notice,.activity-drafts-page>.notice{margin-bottom:10px}.activity-composer-card{display:grid}.activity-composer-toolbar,.activity-composer-tools,.activity-drafts-header,.activity-draft-meta,.activity-draft-actions,.activity-composer-actions,.activity-attachment-field,.activity-file-list li{align-items:center;display:flex}.activity-composer-toolbar,.activity-drafts-header,.activity-draft-meta{justify-content:space-between}.activity-composer-toolbar{min-height:40px;margin:-6px -4px 8px 0}.activity-composer-tools{gap:2px}.activity-composer-progress{gap:4px;display:flex}.activity-composer-progress span{background:var(--line);width:26px;height:2px}.activity-composer-progress span.is-active{background:var(--primary)}.activity-icon-button,.activity-step-button,.activity-attachment-trigger,.activity-file-remove,.activity-draft-delete{width:40px;height:40px;color:var(--primary);background:#fff;border:0;border-radius:2px;flex:none;place-items:center;display:grid}.activity-icon-button:hover,.activity-step-button:hover,.activity-attachment-trigger:hover,.activity-file-remove:hover,.activity-draft-delete:hover{background:var(--primary-soft)}.activity-icon-button[aria-disabled=true],.activity-file-input:disabled+.activity-attachment-trigger,.activity-file-remove:disabled,.activity-draft-delete:disabled{cursor:not-allowed;opacity:.45}.activity-icon-button svg,.activity-step-button svg,.activity-attachment-trigger svg,.activity-file-remove svg,.activity-draft-delete svg{width:18px;height:18px}.activity-attachment-field{flex-wrap:wrap;gap:6px;margin:-2px 0 11px}.activity-file-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.activity-file-input:focus-visible+.activity-attachment-trigger{outline:2px solid var(--primary);outline-offset:2px}.activity-attachment-trigger{border:1px solid var(--line);cursor:pointer}.activity-file-list{gap:4px;width:100%;margin:0;padding:0;list-style:none;display:grid}.activity-file-list li{background:var(--surface);min-width:0;color:var(--ink-2);justify-content:space-between;gap:8px;padding:4px 4px 4px 8px;font-size:10px}.activity-file-list li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-file-remove{width:32px;height:32px}.activity-visibility-field{border:0;min-width:0;margin:0 0 11px;padding:0}.activity-visibility-field legend{color:var(--ink-2);margin-bottom:5px;font-size:11px;font-weight:800}.activity-visibility-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.activity-visibility-option{cursor:pointer;min-width:0;position:relative}.activity-visibility-option input{opacity:0;width:1px;height:1px;position:absolute}.activity-visibility-option>span{border:1px solid var(--line);min-height:42px;color:var(--ink-2);justify-content:center;align-items:center;gap:6px;padding:7px;display:flex}.activity-visibility-option svg{width:16px;height:16px}.activity-visibility-option strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.activity-visibility-option input:checked+span{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.activity-visibility-option input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.activity-visibility-option input:disabled+span{cursor:not-allowed;opacity:.55}.activity-composer-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.activity-composer-actions>.primary-button{width:auto;min-height:40px}.activity-step-button{border:1px solid var(--line)}.activity-drafts-header{margin-bottom:12px}.activity-draft-list{gap:9px;display:grid}.activity-draft-card{padding:12px}.activity-draft-card .post-body{margin:10px 0 12px}.activity-draft-meta{min-height:20px;margin-bottom:4px}.activity-draft-meta time{color:var(--muted);font-size:9px}.activity-draft-actions{grid-template-columns:minmax(0,1fr) 40px;gap:8px;display:grid}.activity-draft-actions>.primary-button{place-items:center;min-height:40px;display:grid}.activity-draft-delete{color:var(--danger)}.field{gap:5px;margin-bottom:11px;display:grid}.field label{color:var(--ink);font-size:13px;font-weight:800}.input,.textarea,.select{border:1px solid var(--line-strong);border-radius:var(--r-md);width:100%;min-height:44px;color:var(--ink);background:#fff;outline:none;padding:10px 14px;font-size:14px}.textarea{resize:vertical;min-height:100px;line-height:1.6}.long-textarea{min-height:200px}.activity-composer-body{min-height:max(240px,45dvh)}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary)}.help,.muted,.small{color:var(--muted);font-size:12px;line-height:1.6}.split{justify-content:space-between;align-items:center;gap:10px;display:flex}.spacer-8{height:8px}.spacer-16{height:16px}.radio-grid{gap:8px;display:grid}.radio-card{border:1px solid var(--line-strong);border-radius:var(--r-md);grid-template-columns:22px 1fr;align-items:start;gap:10px;padding:14px;display:grid}.radio-card:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.radio-card strong,.radio-card span{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.5}.radio-card strong{color:var(--ink);font-size:14px}.radio-card span{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.5}.message-filters{scrollbar-width:none;gap:8px;margin:0 0 12px;display:flex;overflow-x:auto}.message-filters button{border:1px solid var(--line-strong);border-radius:var(--r-pill);min-height:34px;color:var(--ink-2);white-space:nowrap;background:#fff;flex:none;padding:0 14px;font-size:13px;font-weight:700}.message-filters button.is-active{border-color:var(--accent-navy);background:var(--accent-navy);color:#fff}.action-label{display:none}.notice{border-radius:var(--r-md);background:var(--surface);color:var(--ink-2);border:0;padding:12px 14px;font-size:13px;line-height:1.6}.notice.navy{border-left-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.notice.green{border-left-color:var(--success);background:var(--success-soft);color:var(--success)}.notice.danger{background:var(--danger-soft);color:var(--danger)}.notice.warning{background:var(--warning-soft);color:var(--warning)}.invitation-code{border:1px solid var(--primary-line);border-radius:var(--r-md);background:var(--primary-softer);color:var(--primary-strong);letter-spacing:.1em;text-align:center;word-break:break-all;-webkit-user-select:all;user-select:all;margin:8px 0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;font-weight:800}.empty-state{border:1px solid var(--line);border-radius:var(--r-lg);color:var(--muted);text-align:center;background:#fff;gap:8px;padding:28px 16px;font-size:13px;display:grid}.empty-state strong{color:var(--ink)}.student-card,.message-list-item{border-width:0 0 1px;border-radius:0;grid-template-columns:auto 1fr;gap:9px;padding:11px 0;display:grid}.student-card .button-row{grid-column:1/-1}.student-meta,.student-bio,.message-preview{color:var(--muted);font-size:12px}.approval-blocked-note{display:block}.student-bio{margin:6px 0 0;line-height:1.6}.message-list-item{grid-template-columns:auto 1fr auto;align-items:center}.message-preview{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.message-time{color:var(--muted);font-size:12px}.message-thread{gap:10px;padding-bottom:64px;display:grid}.bubble{border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;background:#fff;border-radius:18px;max-width:82%;padding:10px 14px;font-size:13px;line-height:1.55}.phrase-text{vertical-align:top;word-break:keep-all;overflow-wrap:anywhere;line-break:strict;max-width:100%;display:inline-block}.bubble.mine{background:var(--primary-soft);color:var(--ink);border-color:var(--primary-soft);justify-self:end}.composer{z-index:31;width:min(var(--mobile-frame-max), 100%);padding:10px 12px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;gap:8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.composer .input{flex:1}.profile-hero{border-bottom:1px solid var(--line);background:#fff;padding:18px 20px}.profile-top{align-items:center;gap:12px;display:flex}.profile-hero .avatar{background:var(--primary);border:0;width:54px;height:54px}.profile-hero h1{color:var(--ink);margin:0;font-size:19px}.profile-hero p{color:var(--muted);margin:5px 0 0;font-size:11px}.profile-copy{color:var(--ink-2);margin-top:12px;font-size:12px;line-height:1.65}.profile-stats{grid-template-columns:repeat(3,1fr);margin-top:13px;display:grid}.profile-stat{border-right:1px solid var(--line);color:var(--ink-2);text-align:center;padding:5px;font-size:10px}.profile-stat:last-child{border:0}.profile-stat strong{color:var(--ink);font-size:14px;display:block}.profile-diagnosis{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding:12px;display:flex}.profile-diagnosis span,.profile-diagnosis strong{display:block}.profile-diagnosis span{color:var(--primary);font-size:9px;font-weight:800}.profile-diagnosis strong{margin-top:3px;font-size:13px}.profile-diagnosis p{color:var(--muted);margin:4px 0 0;font-size:10px}.memo-card{padding:12px}.memo-title{color:var(--ink);margin:8px 0 4px;font-size:14px}.diagnosis-panel h2{color:var(--ink);margin:0;font-size:15px}.diagnosis-source{color:var(--muted);margin:5px 0 12px;font-size:10px}.diagnosis-top{border:1px solid var(--line);border-left:2px solid var(--success);padding:10px}.diagnosis-top span,.diagnosis-top strong{display:block}.diagnosis-top span{color:var(--muted);font-size:10px}.diagnosis-top strong{color:var(--success);margin-top:4px;font-size:14px}.diagnosis-grid{border:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(2,1fr);gap:1px;margin-top:10px;display:grid}.diagnosis-score{background:#fff;padding:10px}.diagnosis-score span,.diagnosis-score strong{display:block}.diagnosis-score span{color:var(--muted);font-size:10px}.diagnosis-score strong{color:var(--ink);margin-top:4px;font-size:18px}.profile-cover{background:linear-gradient(135deg,#0b2a6b 0%,#0062fe 55%,#6aa8ff 100%);height:100px;position:relative}.profile-avatar-large{width:64px;height:64px;color:var(--primary);background:linear-gradient(135deg,#eaf2ff,#cfe0ff);border:3px solid #fff;border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid;position:absolute;bottom:-28px;left:20px}.privacy-control{z-index:3;position:absolute;top:10px;right:14px}.privacy-button{color:var(--primary);background:#ffffffeb;border:0;border-radius:999px;padding:6px 10px;font-size:10px}.privacy-menu{border:1px solid var(--line);background:#fff;border-radius:6px;width:200px;position:absolute;top:32px;right:0;overflow:hidden}.privacy-menu button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink-2);text-align:left;background:#fff;gap:2px;padding:9px 12px;font-size:11px;display:grid}.privacy-menu button:last-child{border-bottom:0}.privacy-menu span{color:var(--muted);font-size:9px}.profile-summary{padding:36px 20px 0}.profile-name-row{align-items:baseline;gap:7px;display:flex}.profile-name-row h1{color:var(--ink);margin:0;font-size:16px;font-weight:500}.profile-name-row>span{color:var(--muted);font-size:11px}.profile-edit-link{color:var(--primary);margin-left:auto;font-size:10px;font-weight:800}.profile-summary>p{color:var(--ink-2);margin:3px 0 10px;font-size:11px}.profile-pills{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.connection-pill,.points-pill{border-radius:999px;padding:6px 10px;font-size:11px}.connection-pill{background:var(--surface);color:var(--primary)}.points-pill{background:var(--success-soft);color:var(--success);font-weight:500}.job-interest{color:var(--ink-2);align-items:center;gap:10px;margin-bottom:14px;font-size:11px;display:flex}.job-interest>div{background:var(--surface);border-radius:999px;padding:2px;display:flex}.job-interest button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:5px 12px;font-size:10px}.job-interest button.active{background:var(--success-vivid);color:#fff}.profile-details h2{color:var(--ink);margin:0 0 10px;font-size:15px;font-weight:500}.profile-bio{color:var(--ink-2);margin:0 0 14px;font-size:12px;line-height:1.7}.profile-eyebrow{color:var(--ink-2);margin:16px 0 7px;font-size:12px;font-weight:600}.value-chips,.talent-chips{flex-wrap:wrap;gap:6px;display:flex}.value-chips{margin-bottom:16px}.value-chips span{background:var(--primary);color:#fff;border-radius:999px;padding:5px 12px;font-size:11px}.talent-categories{gap:8px;margin-bottom:10px;display:flex}.talent-categories>div{background:var(--success-soft);border-radius:2px;flex:1;padding:10px}.talent-categories>div:last-child{background:var(--surface)}.talent-categories strong,.talent-categories span{display:block}.talent-categories strong{color:var(--success);font-size:12px;font-weight:500}.talent-categories>div:last-child strong{color:var(--ink-2)}.talent-categories span{color:var(--muted);margin-top:2px;font-size:10px}.talent-categories>div:last-child span{color:var(--muted)}.details-toggle{color:var(--primary);background:0 0;border:0;margin:0 0 16px;padding:0;font-size:11px}.talent-chips{margin:-6px 0 16px}.talent-chips span{border:1px solid var(--success);color:var(--success);border-radius:999px;padding:5px 10px;font-size:11px}.profile-section-head{justify-content:space-between;align-items:baseline;display:flex}.career-roles{border-left:1px solid var(--line);margin-bottom:16px;padding-left:16px}.career-roles article{padding:2px 0 14px 14px}.career-roles strong,.career-roles span{display:block}.career-roles strong{color:var(--ink);font-size:13px;font-weight:500}.career-roles span{color:var(--muted);margin:1px 0 8px;font-size:10px}.career-roles article>div{border:1px solid var(--line);gap:10px;padding:8px;display:flex}.career-roles p{color:var(--ink);margin:0;font-size:12px;line-height:1.4}.portfolio-preview{background:linear-gradient(135deg,#eaf2ff,#cfe0ff);border-radius:4px;flex:none;width:48px;height:48px;display:block}.portfolio-preview.navy{background:linear-gradient(135deg,#0062fe,#4f8dff)}.portfolio-preview.green{background:linear-gradient(135deg,#12b76a,#6ce9a6)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.portfolio-grid article,.portfolio-add{min-width:0}.portfolio-grid .portfolio-preview,.portfolio-image{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%;height:auto;margin-bottom:6px}.portfolio-grid p{color:var(--ink);margin:0;font-size:11px;font-weight:500;line-height:1.4}.portfolio-add{border:1px dashed var(--line);min-height:84px;color:var(--primary);place-items:center;font-size:11px;display:grid}.profile-sheet{border:1px solid var(--line);background:#fff;border-radius:8px 8px 0 0;margin:-4px 0 14px;padding:12px}.profile-sheet p{color:var(--ink-2);margin:0 0 10px;font-size:11px;line-height:1.6}.profile-sheet>div{gap:8px;display:flex}.diagnosis-panel{margin-top:2px}.diagnosis-hero{color:#fff;background:linear-gradient(160deg,#0b2a6b 0%,#0062fe 60%,#6aa8ff 100%);border-radius:12px;margin-bottom:14px;padding:22px 16px 16px}.diagnosis-hero p,.diagnosis-hero strong,.diagnosis-hero span{display:block}.diagnosis-hero p{color:#ffffffbf;margin:0 0 6px;font-size:11px}.diagnosis-hero strong{margin-bottom:4px;font-size:19px;font-weight:500}.diagnosis-hero span{color:#fffc;font-size:11px}.diagnosis-label{margin:0 0 4px;font-size:12px;font-weight:600}.diagnosis-label.strength{color:var(--success)}.diagnosis-label.bottleneck{color:var(--ink-2);margin-top:16px}.diagnosis-strengths{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.diagnosis-strengths span{background:var(--success-soft);color:var(--success);text-align:center;padding:8px 4px;font-size:11px;font-weight:500}.diagnosis-bottlenecks{gap:6px;display:flex}.diagnosis-bottlenecks button{background:var(--surface);color:var(--ink-2);border:0;border-radius:2px;flex:1;padding:9px 2px;font-size:11px}.diagnosis-bottlenecks button.active{background:var(--primary);color:#fff}.diagnosis-actions{border:1px solid var(--line);margin:12px 0 16px;padding:12px}.diagnosis-actions>p{color:var(--ink-2);justify-content:space-between;margin:0 0 8px;font-size:11px;display:flex}.diagnosis-actions p span{color:var(--muted)}.diagnosis-actions ol{color:var(--ink-2);gap:6px;margin:0;padding-left:18px;font-size:11px;line-height:1.6;display:grid}.diagnosis-grid{margin-bottom:16px}.diagnosis-score{text-align:left;border:0}.profile-memo-intro{color:var(--muted);margin-bottom:12px;font-size:11px}.profile-memo-intro a{float:right;color:var(--primary);font-weight:800}.memo-folder-list{gap:8px;display:grid}.memo-folder-list button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.memo-folder-list button>span{color:var(--primary)}.diagnosis-page{gap:14px;max-width:720px;display:grid}.diagnosis-question,.diagnosis-result,.diagnosis-ready{padding:18px}.diagnosis-question h1,.diagnosis-result h1{color:var(--ink);margin:4px 0 8px;font-size:clamp(22px,5vw,32px);line-height:1.3}.diagnosis-question h2{color:var(--ink);margin:20px 0 14px;font-size:clamp(18px,4.4vw,24px);line-height:1.5}.diagnosis-options{gap:8px;margin:16px 0 20px;display:grid}.diagnosis-options button{border:1px solid var(--line);width:100%;min-height:54px;color:var(--ink);font:inherit;text-align:left;background:#fff;border-radius:8px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;line-height:1.45;display:grid}.diagnosis-options button:hover,.diagnosis-options button:focus-visible{border-color:var(--primary);outline:none}.diagnosis-options button.selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--primary-soft)}.diagnosis-options button strong{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;display:grid}.diagnosis-consent{border-left:4px solid var(--primary-line);background:var(--warning-soft);color:var(--ink-2);margin:16px 0;padding:10px 12px;font-size:13px;line-height:1.65}.diagnosis-ai-result{border-top:1px solid var(--line);color:var(--ink);margin-top:20px;padding-top:18px;line-height:1.7}.diagnosis-ai-result h2,.diagnosis-ai-result h3{color:var(--ink);margin:18px 0 8px}.diagnosis-ai-result ul,.diagnosis-ai-result ol{gap:6px;margin:0;padding-left:22px;display:grid}.memo-folder-list strong{font-size:12px;font-weight:500}.memo-folder-list small{color:var(--muted);font-size:10px}.memo-folder-content article{background:var(--surface);margin-top:8px;padding:10px 12px}.memo-folder-content time{color:var(--muted);font-size:10px}.memo-folder-content h2{color:var(--ink);margin:3px 0;font-size:13px}.memo-folder-content p{color:var(--ink-2);margin:0;font-size:13px;line-height:1.6}.metric-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:14px}.metric-card span{color:var(--muted);font-size:12px}.metric-card strong{color:var(--ink);margin-top:6px;font-size:22px;display:block}.team-cover{background:var(--success-vivid);color:#fff;border-radius:2px;align-items:center;gap:12px;padding:16px;display:flex}.team-cover .badge{color:#fff;background:0 0}.team-cover h2{margin:4px 0;font-size:18px}.team-cover p{margin:0;font-size:12px}.event-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:13px 0;display:flex}.event-row:last-child{border:0}.event-date{border:1px solid var(--line);width:46px;height:46px;color:var(--primary);text-align:center;place-items:center;font-size:11px;font-weight:800;display:grid}.team-photo{aspect-ratio:16/9;object-fit:cover;border-radius:2px;width:100%;height:auto;display:block}.attendance-status-list{border-top:1px solid var(--line)}.attendance-status-row{border-bottom:1px solid var(--line);grid-template-columns:9px 1fr auto;align-items:center;gap:8px;padding:10px 0;font-size:10px;display:grid}.attendance-status-row strong{font-size:11px}.attendance-status-row>span:last-child{color:var(--muted)}.attendance-thread{margin-top:16px}.attendance-thread-message{gap:4px;display:grid}.attendance-thread-system{border-left:3px solid var(--line-strong);color:var(--ink-2);grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;padding:6px 10px;font-size:.9rem;display:grid}.attendance-thread-avatar{background:var(--primary-line);width:28px;height:28px;color:var(--primary);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.attendance-thread-avatar img{object-fit:cover;width:100%;height:100%}.attendance-thread-system-label{background:var(--primary-soft);color:var(--primary);border-radius:999px;margin-left:6px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1.5;display:inline-block}.attendance-thread-system-body{overflow-wrap:anywhere;display:block}.attendance-thread-system time{color:var(--muted);font-size:.75rem;display:block}.condition-signal{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.condition-signal.good{background:var(--success-vivid)}.condition-signal.caution{background:var(--primary-soft)}.condition-signal.consult{background:var(--danger)}.login-shell{background:#fff;place-items:center;min-height:100dvh;padding:20px;display:grid}.login-card{width:min(360px,100%);padding:20px}.login-card h1{color:var(--ink);margin:18px 0 8px;font-size:26px;font-weight:900}.login-card p{color:var(--muted);font-size:14px;line-height:1.75}.line-button{border-radius:var(--r-md);background:var(--line-green);color:#fff;border:0;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;margin-top:20px;padding:13px 16px;font-size:16px;font-weight:800;display:flex}.apple-button{border-radius:var(--r-md);color:#fff;background:#000;border:0;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:13px 16px;font-size:16px;font-weight:700;display:flex}.apple-button svg{fill:currentColor;flex:none;width:20px;height:20px}.login-card .line-hint{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.6}.portal-auth-page{background:var(--surface);min-height:100dvh}.portal-login-shell{place-items:center;min-height:100dvh;padding:24px;display:grid}.portal-login-card{width:min(460px,100%)}.portal-login-form{gap:14px;margin-top:22px;display:grid}.portal-login-form .field{margin:0}.spacer-24{height:24px}.portal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.table-like{border:1px solid var(--line);border-radius:var(--r-md);border-collapse:separate;border-spacing:0;background:#fff;width:100%;font-size:13px;overflow:hidden}.table-like th,.table-like td{border-bottom:1px solid var(--line);text-align:left;padding:10px}.table-like th{background:var(--surface);color:var(--muted);font-size:12px;font-weight:700}.button{border:1px solid var(--primary);border-radius:var(--r-sm);background:var(--primary);color:#fff;min-height:40px;padding:8px 14px;font-size:13px;font-weight:800}.button:disabled{cursor:not-allowed;opacity:.5}[data-portal-role=admin] .page-title{margin-bottom:18px;font-size:22px}[data-portal-role=admin] .section-heading{align-items:center;margin:24px 0 8px}[data-portal-role=admin] .section-heading h2{align-items:center;gap:7px;font-size:14px;display:flex}[data-portal-role=admin] .section-heading h2 svg{width:17px;height:17px;color:var(--ink)}[data-portal-role=admin] .button-row[role=tablist]{scrollbar-width:none;flex-wrap:nowrap;gap:8px;margin-bottom:12px;overflow-x:auto}[data-portal-role=admin] .button-row[role=tablist]>*{flex:none;min-width:0;padding-inline:12px}[data-portal-role=admin] .portal-grid{background:0 0;border:0;border-radius:0;gap:12px;overflow:visible}[data-portal-role=admin] .metric-card{border:1px solid var(--line);border-radius:var(--r-md);min-height:88px;box-shadow:var(--shadow-card);background:#fff;padding:14px 16px}[data-portal-role=admin] .metric-card strong{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}[data-portal-role=admin] .admin-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}[data-portal-role=admin] .card{border-color:var(--line);background:#fff}[data-portal-role=admin] .form-card{padding:14px 16px}[data-portal-role=admin] .event-row{padding:11px 0}[data-portal-role=admin] .empty-state{padding:24px 16px}[data-portal-role=admin] .admin-toolbar{align-items:end;gap:8px;margin:10px 0 12px;display:flex}[data-portal-role=admin] .admin-toolbar .field{width:min(360px,100%);margin:0}[data-portal-role=admin] .admin-icon-button{border:1px solid var(--line-strong);border-radius:var(--r-md);width:40px;min-width:40px;height:40px;color:var(--primary);background:#fff;flex:0 0 40px;place-items:center;padding:0;display:inline-grid}[data-portal-role=admin] .admin-icon-button:hover{background:var(--primary-soft)}[data-portal-role=admin] .admin-icon-button:focus-visible,[data-portal-role=admin] .admin-disclosure>summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-portal-role=admin] .admin-icon-button svg{width:18px;height:18px}[data-portal-role=admin] .admin-count{color:var(--muted);margin:-4px 0 12px;font-size:11px}[data-portal-role=admin] .admin-guardrail{color:var(--muted);align-items:center;gap:7px;margin:8px 0 14px;font-size:11px;display:flex}[data-portal-role=admin] .admin-guardrail svg{width:16px;height:16px;color:var(--primary);flex:0 0 16px}[data-portal-role=admin] .admin-disclosure{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);background:#fff;margin:10px 0}[data-portal-role=admin] .admin-disclosure>summary{cursor:pointer;min-height:44px;color:var(--primary);align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:800;list-style:none;display:flex}[data-portal-role=admin] .admin-disclosure>summary::-webkit-details-marker{display:none}[data-portal-role=admin] .admin-disclosure>summary svg{width:18px;height:18px}[data-portal-role=admin] .admin-disclosure[open]>summary{border-bottom:1px solid var(--line)}[data-portal-role=admin] .admin-disclosure-content{padding:14px}[data-portal-role=admin] .admin-disclosure-content>:first-child{margin-top:0}[data-portal-role=admin] .admin-disclosure-content>:last-child{margin-bottom:0}[data-portal-role=admin] .admin-row-disclosure{border-bottom:0;border-left:0;border-right:0;margin-top:10px}[data-portal-role=admin] .admin-row-disclosure>summary,[data-portal-role=admin] .admin-row-disclosure .admin-disclosure-content{padding-inline:0}[data-portal-role=admin] .admin-table-scroll{overflow-x:auto}[data-portal-role=admin] .admin-label-with-icon{align-items:center;gap:6px;display:inline-flex}[data-portal-role=admin] .admin-label-with-icon svg{width:16px;height:16px}@media (max-width:760px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-portal-role=admin] .admin-toolbar{align-items:stretch}[data-portal-role=admin] .admin-toolbar .field{flex:1}[data-portal-role=admin] .form-card{padding:12px}[data-portal-role=admin] .admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.demo-showcase{min-height:100dvh;color:var(--ink);background:#fff;padding:20px}.demo-showcase.is-selecting{background:#fff}.demo-showcase-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1080px;min-height:48px;margin:0 auto;display:flex}.demo-showcase-brand{color:var(--primary);align-items:center;gap:7px;font-size:16px;font-weight:900;display:flex}.demo-showcase-brand svg{width:26px;height:30px}.demo-select-stage,.demo-stage{max-width:960px;margin:0 auto;padding:28px 0;display:grid}.demo-select-stage{grid-template-columns:minmax(300px,480px);justify-content:center}.demo-guide h1{color:var(--ink);margin:0;font-size:25px;line-height:1.3}.demo-role-list{border-top:1px solid var(--line);gap:0;margin:20px 0 14px;display:grid}.demo-role-list button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fff;grid-template-columns:32px 1fr;gap:8px;padding:10px 0;display:grid}.demo-role-list button.is-active{background:var(--surface)}.demo-role-list button>span{color:var(--primary);font-size:10px;font-weight:900}.demo-role-list strong{font-size:13px}.demo-role-list p,.demo-role-list small{color:var(--muted);margin:3px 0 0;font-size:10px;line-height:1.45;display:block}.demo-persona-picker{border-top:1px solid var(--line);margin:14px 0;padding-top:12px}.demo-persona-picker>p{margin:0 0 8px;font-size:12px;font-weight:800}.demo-persona-picker [role=radiogroup]{border-top:1px solid var(--line);gap:0;display:grid}.demo-persona-picker button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:55px;color:var(--ink);text-align:left;background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:8px 0;display:grid}.demo-persona-picker button.is-selected{background:var(--surface)}.demo-persona-picker .avatar{width:30px;height:30px}.demo-persona-picker strong,.demo-persona-picker small{display:block}.demo-persona-picker strong{font-size:11px}.demo-persona-picker small{color:var(--muted);margin-top:2px;font-size:9px}.demo-start-button{border-radius:var(--r-md);background:var(--primary);color:#fff;border:0;width:100%;min-height:48px;font-size:15px;font-weight:800}.demo-start-button:disabled{opacity:.45}.demo-local-only{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:7px;margin-top:12px;padding-top:10px;font-size:10px;display:flex}.demo-local-only svg{width:20px;height:24px;color:var(--primary)}.demo-stage{grid-template-columns:minmax(0,360px) minmax(220px,1fr);gap:28px}.demo-experience-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.demo-experience-bar p{min-width:0;color:var(--ink);margin:0;font-size:12px}.demo-experience-bar div{flex:none;gap:6px;display:flex}.demo-experience-bar button{white-space:nowrap}.demo-experience-bar button,.demo-confirm-dialog button{border:1px solid var(--line);min-height:32px;color:var(--primary);background:#fff;border-radius:2px;padding:6px 8px;font-size:10px;font-weight:800}.demo-device{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;width:min(100%,360px);height:min(76dvh,640px);overflow:hidden}.demo-device-speaker{display:none}.demo-device iframe{background:#fff;border:0;width:100%;height:100%;display:block}.demo-experience-guide{border-top:1px solid var(--line);align-self:start;padding-top:12px}.demo-experience-guide h2{color:var(--ink);margin:0 0 5px;font-size:22px}.demo-experience-guide>p{color:var(--ink-2);font-size:12px;line-height:1.65}.demo-experience-guide ul{margin:14px 0;padding:0;list-style:none}.demo-experience-guide li{border-bottom:1px solid var(--line);color:var(--success);padding:8px 0;font-size:12px;font-weight:800}.demo-experience-guide small{color:var(--muted);font-size:10px}.demo-confirm-dialog{border-radius:var(--r-lg);width:min(400px,100% - 32px);box-shadow:var(--shadow-pop);color:var(--ink);border:0;padding:20px}.demo-confirm-dialog h2{margin:0;font-size:18px}.demo-confirm-dialog p{color:var(--ink-2);font-size:12px;line-height:1.6}.demo-confirm-dialog>div{flex-wrap:wrap;gap:8px;display:flex}.demo-confirm-dialog::backdrop{background:#00000040}.demo-access-panel{border-top:1px solid var(--line);gap:12px;margin-top:16px;padding-top:16px;display:grid}.demo-access-heading h2,.demo-access-heading p{margin:0}.demo-access-heading h2{margin-top:5px;font-size:16px}.demo-access-heading p{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.6}.demo-persona-list{border-top:1px solid var(--line);display:grid}.demo-persona{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:9px 0;display:grid}.demo-persona.is-selected{background:var(--surface)}.demo-persona strong,.demo-persona small{display:block}.demo-persona strong{font-size:11px}.demo-persona small{color:var(--muted);margin-top:2px;font-size:9px}.demo-enter-button{width:100%}@media (max-width:680px){.diagnosis-page{gap:12px}.diagnosis-question,.diagnosis-result,.diagnosis-ready{padding:16px}.diagnosis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-showcase{padding:16px 20px}.demo-select-stage,.demo-stage{grid-template-columns:1fr;gap:22px;padding:22px 0;display:grid}.demo-stage>.demo-experience-bar{grid-column:1}.demo-stage>.demo-statement,.demo-experience-guide{display:none}.demo-device{width:100%;height:calc(100dvh - 112px)}.demo-experience-bar{min-height:54px}.demo-experience-bar div{gap:4px}.demo-experience-bar button{padding:6px}.demo-showcase.is-experiencing{padding:0}.demo-showcase.is-experiencing .demo-showcase-header{display:none}.demo-showcase.is-experiencing .demo-stage{min-height:100dvh;padding:0}.demo-showcase.is-experiencing .demo-experience-bar{padding:max(8px, env(safe-area-inset-top)) 12px 8px}.demo-showcase.is-experiencing .demo-device{border-width:0;height:100%;min-height:0}.demo-showcase.is-experiencing .demo-stage{grid-template-rows:auto minmax(0,1fr)}}@media (min-width:600px) and (max-width:899px){:root{--mobile-frame-max:760px}}@media (min-width:900px){.app-frame{--content-max:1440px;max-width:none;height:100dvh;min-height:100dvh;padding-bottom:0;padding-left:var(--side-nav)}.app-frame[data-desktop-layout=reading]{--content-max:800px}[data-profile-posts=true]{align-items:start;gap:24px;display:grid}[data-profile-posts=true]>article{border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;margin:0;padding:20px}.group-conversation-frame{padding-left:0}.group-conversation-frame .page{padding:20px 32px 16px}.topbar{padding:12px 32px}.app-frame{--shell-topbar-height:69px}.desktop-only-topbar{display:flex}.app-frame>#main-content>main{max-width:var(--content-max);margin:0 auto}.page,.page-wide{padding:28px 32px 56px}.conversation-frame .page-wide{padding-bottom:84px}.group-conversation-frame .page{padding-bottom:16px}.bottom-nav{width:var(--side-nav);border-top:0;border-right:1px solid var(--line);grid-template-columns:none;grid-auto-rows:max-content;gap:2px;height:100dvh;padding:20px 12px;top:0;bottom:auto;left:0;transform:none}.nav-item{border-radius:var(--r-md);align-items:center;gap:12px;min-height:44px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.nav-item.active{background:var(--primary-soft)}.nav-icon{width:20px;height:20px;margin:0}.fab{right:max(24px, calc((100vw - var(--side-nav) - var(--content-max)) / 2 + 24px));bottom:32px}.composer{left:calc(var(--side-nav) + max(0px, (100vw - var(--side-nav) - var(--content-max)) / 2));width:min(var(--content-max), calc(100vw - var(--side-nav)));transform:none}}@media (min-width:1200px){[data-profile-posts=true]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:899px),(pointer:coarse){input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit],[type=reset],[type=image],[type=hidden]),textarea,select{font-size:16px!important}}@media (max-width:899px) and (pointer:coarse){body:has(:is(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit],[type=reset],[type=image],[type=hidden],[type=date],[type=time],[type=datetime-local],[type=month],[type=week]),textarea,[contenteditable=true]):focus) :is(.bottom-nav,.fab){display:none}}.notification-bell{position:relative}.notification-badge{background:var(--alert-dot);pointer-events:none;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:8px;right:9px}.brand-wordmark{color:var(--ink);letter-spacing:.01em;font-size:17px;font-weight:900}.subpage-header{z-index:19;min-height:56px;padding:max(6px, env(safe-area-inset-top)) 8px 6px 4px;border-bottom:1px solid var(--line);background:#fff;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:4px;margin:-16px -16px 12px;display:grid;position:sticky;top:0}.subpage-header.is-centered{text-align:center;grid-template-columns:minmax(88px,auto) minmax(0,1fr) minmax(88px,auto)}.subpage-header-tabs{grid-column:1/-1;margin:6px -8px -6px -4px}.subpage-header-back{border-radius:var(--r-pill);width:44px;height:44px;color:var(--ink);background:0 0;border:0;place-items:center;display:grid}.subpage-header-back svg{width:24px;height:24px}.subpage-header-title{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:800;overflow:hidden}.subpage-header-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.subpage-header-text-action{min-height:44px;color:var(--primary);background:0 0;border:0;padding:0 8px;font-size:15px;font-weight:700}.header-pill-button{border-radius:var(--r-sm);background:var(--primary);color:#fff;white-space:nowrap;border:0;align-items:center;gap:4px;min-height:36px;padding:0 12px;font-size:14px;font-weight:800;display:inline-flex}.header-pill-button svg{width:18px;height:18px}@media (max-width:899px){.app-frame:has(.subpage-header)>.topbar{display:none}.app-frame:has(.subpage-header){--shell-topbar-height:0px}.app-frame:has([data-shell-hide-nav]) .bottom-nav{display:none}body:has([data-shell-hide-nav]) .bottom-nav{display:none}body:has([data-shell-hide-nav]) .fab{display:none}}html[data-native-webscreen]{--bottom-nav-h:0px;--side-nav:0px}html[data-native-webscreen] .bottom-nav,html[data-native-webscreen] .topbar .brand,html[data-native-webscreen] .top-actions>.icon-button,html[data-native-webscreen] .app-frame:not([data-top-bar-actions])>.topbar{display:none}html[data-native-webscreen] .app-frame:not([data-top-bar-actions]){--shell-topbar-height:0px}html[data-native-webscreen] .topbar{justify-content:flex-end}html[data-native-webscreen] a.subpage-header-back{visibility:hidden}@media (min-width:900px){.subpage-header{top:var(--shell-topbar-height);margin:-28px -32px 16px;padding:6px 24px 6px 16px}}.pill-row{scrollbar-width:none;gap:8px;margin:0 -16px 12px;padding:2px 16px;display:flex;overflow-x:auto}.pill-row::-webkit-scrollbar{display:none}.pill{border:1px solid var(--line-strong);border-radius:var(--r-pill);min-height:34px;color:var(--ink-2);white-space:nowrap;background:#fff;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.pill svg{width:16px;height:16px}.pill.is-active,.pill[aria-pressed=true],.pill[aria-selected=true],.pill[aria-current=page]{border-color:var(--accent-navy);background:var(--accent-navy);color:#fff}.pill-button{border:1px solid var(--primary);border-radius:var(--r-pill);min-height:32px;color:var(--primary);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:4px;padding:0 16px;font-size:13px;font-weight:800;display:inline-flex}.pill-button.is-filled{background:var(--primary);color:#fff}.pill-button.is-soft{border-color:var(--primary-soft);background:var(--primary-soft);color:var(--primary-strong)}.search-field{border-radius:var(--r-pill);background:var(--surface);min-height:44px;color:var(--muted);flex:1;align-items:center;gap:8px;padding:0 14px;display:flex}.search-field svg{flex:none;width:20px;height:20px}.search-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:10px 0;font-size:14px}.search-field:focus-within{box-shadow:0 0 0 2px var(--primary-line)}.tag-chip{border-radius:var(--r-xs);background:var(--primary-soft);color:var(--primary-strong);white-space:nowrap;align-items:center;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.icon-tile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.icon-tile-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}.icon-tile{border-radius:var(--r-md);background:var(--primary-soft);min-height:76px;color:var(--primary);text-align:center;border:0;align-content:center;justify-items:center;gap:6px;padding:10px 4px;font-size:12px;font-weight:700;display:grid;position:relative}.icon-tile svg{width:26px;height:26px}.icon-tile>span{color:var(--primary-strong)}.icon-tile-dot{border:2px solid var(--primary-soft);background:var(--alert-dot);border-radius:50%;width:9px;height:9px;position:absolute;top:8px;right:10px}.date-badge{min-width:52px;color:var(--ink);align-content:center;justify-items:center;line-height:1.15;display:grid}.date-badge[data-day=saturday]{color:var(--primary)}.date-badge[data-day=holiday]{color:var(--danger-vivid)}.date-badge strong{letter-spacing:-.01em;font-size:20px;font-weight:800}.date-badge span{font-size:12px;font-weight:700}.avatar-stack{align-items:center;display:inline-flex}.avatar-stack>*{object-fit:cover;border:2px solid #fff;border-radius:50%;width:28px;height:28px;margin-left:-8px}.avatar-stack>:first-child{margin-left:0}.avatar-stack-fallback{background:var(--primary-soft);color:var(--primary-strong);place-items:center;font-size:11px;font-weight:800;display:grid}.avatar-stack-count{color:var(--muted);margin-left:6px;font-size:13px}.event-registrants{align-items:center;gap:6px;min-width:0;display:inline-flex}.event-registrants .avatar-stack>*{flex:none;width:24px;height:24px}.event-registrants .avatar-stack-fallback svg{width:14px;height:14px}.event-registrants-count{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700}.event-image{aspect-ratio:16/9;border-radius:var(--r-md);background:var(--primary-soft);object-fit:cover;width:100%;display:block}.status-pill{border-radius:var(--r-pill);background:var(--primary-soft);min-height:28px;color:var(--primary-strong);white-space:nowrap;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.status-pill.is-present{background:var(--primary-soft);color:var(--primary-strong)}.status-pill.is-late{background:var(--warning-soft);color:var(--warning)}.status-pill.is-absent{background:var(--danger-soft);color:var(--danger)}.status-pill.is-unanswered{background:var(--purple-soft);color:var(--purple)}.status-pill.is-neutral{background:var(--surface);color:var(--muted)}.step-dots{justify-content:center;align-items:center;gap:6px;margin:4px 0 20px;display:flex}.step-dots span{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.step-dots span.is-done{background:var(--primary-line)}.step-dots span.is-current{border-radius:var(--r-pill);background:var(--primary);width:22px}.segmented{border-radius:var(--r-md);background:var(--surface);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;margin:0 0 16px;padding:4px;display:grid}.segmented>button,.segmented>a{border-radius:var(--r-sm);min-height:38px;color:var(--muted);background:0 0;border:1px solid #0000;place-items:center;padding:0 8px;font-size:13px;font-weight:700;display:grid}.segmented>[aria-pressed=true],.segmented>[aria-selected=true],.segmented>.is-active{border-color:var(--primary);color:var(--primary);background:#fff}.switch{border-radius:var(--r-pill);background:var(--line-strong);cursor:pointer;appearance:none;flex:none;width:50px;height:30px;margin:0;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #10182840}.switch:checked{background:var(--primary)}.switch:checked:after{transform:translate(20px)}.list-card{border:1px solid var(--line);border-radius:var(--r-md);background:#fff;overflow:hidden}.list-row{border-bottom:1px solid var(--line);min-height:56px;color:inherit;align-items:center;gap:12px;padding:10px 14px;display:flex}.list-row:last-child{border-bottom:0}.list-row-body{flex:1;gap:2px;min-width:0;display:grid}.list-row-body strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.list-row-body small{color:var(--muted);font-size:12px}.list-row-chevron{width:18px;height:18px;color:var(--subtle);flex:none}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0;display:grid}.stat-row>*{border-right:1px solid var(--line);color:var(--muted);justify-items:center;gap:2px;padding:4px 0;font-size:12px;display:grid}.stat-row>:last-child{border-right:0}.stat-row strong{color:var(--ink);font-size:20px;font-weight:800}.required-mark{border-radius:var(--r-xs);background:var(--danger-soft);color:var(--danger);vertical-align:1px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.optional-mark{color:var(--muted);margin-left:6px;font-size:12px;font-weight:600;display:inline-block}.soft-block-button{border-radius:var(--r-md);background:var(--primary-soft);width:100%;min-height:44px;color:var(--primary);border:0;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:800;display:flex}.hero-banner{border-radius:var(--r-lg);color:#fff;background:radial-gradient(circle at 85% 15%,#9e77ed8c,#0000 45%),radial-gradient(circle at 10% 110%,#0062feb3,#0000 55%),linear-gradient(135deg,#0b1d4d 0%,#0b2a6b 45%,#3b2c8f 100%);align-content:end;gap:6px;min-height:176px;padding:18px;display:grid;position:relative;overflow:hidden}.button-row[role=tablist]>[role=tab]{border:1px solid var(--line-strong);border-radius:var(--r-pill);min-height:34px;color:var(--ink-2);background:#fff;padding:0 14px;font-size:13px;font-weight:700}.button-row[role=tablist]>[role=tab][aria-selected=true]{border-color:var(--accent-navy);background:var(--accent-navy);color:#fff}.team-admin-nav-link svg,.team-admin-nav-more>summary svg{width:18px;height:18px}.team-admin-nav-link:hover,.team-admin-nav-more>summary:hover{color:var(--primary);background:0 0}@media (max-width:699px){.team-admin-nav-tools{top:auto;right:8px;bottom:max(8px, env(safe-area-inset-bottom));left:8px}}.demo-role-list button>span,.demo-role-list p,.demo-role-list small,.demo-persona-picker small,.demo-persona small,.demo-local-only,.demo-experience-bar button,.demo-experience-guide small{font-size:12px}.demo-experience-bar button,.demo-confirm-dialog button{border-radius:var(--r-sm);min-height:36px}form label:has(.required-mark):after{content:none!important;display:none!important}form fieldset:has(>legend .required-mark)>legend:after{content:none!important;display:none!important}form fieldset:has(>legend .required-mark) label:has(>:required):after{content:none!important;display:none!important}form .field:has(.required-mark)>label:after{content:none!important;display:none!important}form fieldset:has(>legend .required-mark) label:not([hidden]):has(>input:required:not([type=radio]):not([type=checkbox]),>select:required,>textarea:required){display:flex!important}
