:root{--theme-accent:#e82168;--theme-background:#fcf3f8;--theme-surface-tint:#f7dce8;color:#111827;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Inter,Pretendard,Noto Sans KR,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent}.app-root{min-height:100vh}.app-home-view{min-height:100vh;position:relative}.app-profile-notice{z-index:50;width:min(720px,100% - 32px);position:fixed;top:88px;left:50%;transform:translate(-50%)}.app-profile-notice .profile-notice{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:100%;margin:0}.workspace-access-state{background:radial-gradient(circle at 78% 18%, var(--theme-surface-tint), transparent 24%), var(--theme-background);color:#18212d;place-items:center;min-height:100vh;padding:24px;display:grid}.workspace-access-state>div{text-align:center;background:#ffffffdb;border:1px solid #18212d17;border-radius:26px;width:min(480px,100%);padding:38px;box-shadow:0 24px 70px #46303e1a}.workspace-access-state>div>span{color:#fff;width:52px;height:52px;box-shadow:inset 0 -3px 0 var(--theme-accent);background:#17273a;border-radius:16px;place-items:center;margin:0 auto 18px;display:grid}.workspace-access-state p:first-of-type{color:var(--theme-accent);letter-spacing:.14em;margin:0;font-size:.62rem;font-weight:850}.workspace-access-state h1{letter-spacing:-.04em;margin:10px 0 9px;font-size:1.8rem}.workspace-access-state p:last-of-type{color:#7a8490;margin:0;font-size:.8rem;line-height:1.65}.workspace-access-actions{justify-content:center;gap:8px;margin-top:24px;display:flex}.workspace-access-actions button{color:#fff;min-height:42px;font:inherit;cursor:pointer;background:#17273a;border:1px solid #17273a;border-radius:11px;padding:0 16px;font-size:.75rem;font-weight:750}.workspace-access-actions button.is-secondary{color:#5f6975;background:#fff;border-color:#d9cfd4}@media (width<=520px){.app-profile-notice{top:76px}.workspace-access-state>div{padding:28px 20px}.workspace-access-actions{flex-direction:column}}.admin-workspace{--workspace-navy:#17273a;--workspace-navy-soft:#263a50;--workspace-pink:var(--theme-accent);--workspace-text:#1d2937;--workspace-muted:#798493;min-height:100vh;color:var(--workspace-text);background:#f5f3f4;grid-template-columns:270px minmax(0,1fr);display:grid}.admin-workspace-sidebar{background:var(--workspace-navy);color:#fff;flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:sticky;top:0}.admin-workspace-brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:11px;padding:0 8px 24px;display:flex}.admin-workspace-brand>span{width:38px;height:38px;color:var(--workspace-navy);box-shadow:inset 0 -3px 0 var(--workspace-pink);background:#fff;border-radius:12px;place-items:center;font-size:.9rem;font-weight:900;display:grid}.admin-workspace-brand>div{gap:3px;display:grid}.admin-workspace-brand strong{letter-spacing:-.02em;font-size:1rem}.admin-workspace-brand small{color:#91a2b4;letter-spacing:.12em;font-size:.56rem;font-weight:800}.admin-workspace-sidebar nav{gap:4px;padding-top:14px;display:grid}.admin-workspace-sidebar nav>p{color:#71869b;letter-spacing:.13em;margin:18px 10px 7px;font-size:.58rem;font-weight:850}.admin-workspace-sidebar nav button{color:#9cabb9;min-height:42px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:0 12px;font-size:.78rem;font-weight:680;display:grid}.admin-workspace-sidebar nav button:hover:not(:disabled),.admin-workspace-sidebar nav button.is-active{background:var(--workspace-navy-soft);color:#fff}.admin-workspace-sidebar nav button.is-active{box-shadow:inset 3px 0 0 var(--workspace-pink)}.admin-workspace-sidebar nav button:disabled{cursor:default;opacity:.62}.admin-workspace-sidebar nav button small{color:#8194a6;white-space:nowrap;background:#ffffff12;border-radius:999px;padding:4px 6px;font-size:.52rem}.admin-workspace-account{border-top:1px solid #ffffff1a;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;margin-top:auto;padding:17px 8px 4px;display:grid}.admin-workspace-avatar{color:#fff;background:#31485f;border-radius:12px;place-items:center;width:38px;height:38px;font-size:.78rem;font-weight:850;display:grid}.admin-workspace-account>div:last-child{gap:3px;min-width:0;display:grid}.admin-workspace-account strong,.admin-workspace-account span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-workspace-account strong{font-size:.72rem}.admin-workspace-account span{color:#8194a6;font-size:.58rem}.admin-workspace-main{min-width:0}.admin-workspace-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdfee8;border-bottom:1px solid #e4dfe2;justify-content:space-between;align-items:center;gap:20px;height:78px;padding:0 34px;display:flex;position:sticky;top:0}.admin-workspace-header>div:first-child{gap:3px;display:grid}.admin-workspace-header>div:first-child span{color:var(--workspace-pink);letter-spacing:.13em;font-size:.56rem;font-weight:850}.admin-workspace-header>div:first-child strong{font-size:1rem}.admin-workspace-header-actions{gap:8px;display:flex}.admin-workspace-header-actions button{color:#5e6874;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ddd6da;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-size:.7rem;font-weight:750;display:flex}.admin-workspace-header-actions button:hover{color:#283849;border-color:#cabcc3}.admin-workspace-content{max-width:1440px;margin:0 auto;padding:36px}.admin-overview{gap:24px;display:grid}.admin-overview-heading{justify-content:space-between;align-items:flex-end;gap:24px;padding:10px 2px 8px;display:flex}.admin-overview-heading>div{gap:7px;display:grid}.admin-overview-heading p,.admin-overview-grid article>span,.admin-overview-roadmap>div>span{color:var(--workspace-pink);letter-spacing:.13em;margin:0;font-size:.58rem;font-weight:850}.admin-overview-heading h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,3vw,2.55rem)}.admin-overview-heading>div>span{color:var(--workspace-muted);font-size:.78rem}.admin-overview-status{color:#47745a;background:#edf7f0;border:1px solid #d8e5dc;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:.65rem;font-weight:750;display:inline-flex}.admin-overview-status i{background:#4ea16b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #4ea16b1f}.admin-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.admin-overview-grid article,.admin-overview-roadmap{background:#fffdfd;border:1px solid #e3dde0;border-radius:20px;box-shadow:0 14px 36px #412a360d}.admin-overview-grid article{flex-direction:column;align-items:flex-start;min-height:250px;padding:22px;display:flex}.admin-overview-grid article.is-primary{background:radial-gradient(circle at 110% -10%,#ebcbdc94,#0000 42%),#fffafd;border-color:#d9c6d0}.admin-overview-card-icon{color:#a33a68;background:#f7dce8;border-radius:13px;place-items:center;width:42px;height:42px;margin-bottom:24px;display:grid}.admin-overview-card-icon.is-blue{color:#4d6889;background:#e1e9f6}.admin-overview-card-icon.is-green{color:#575;background:#e2eee3}.admin-overview-grid h2{letter-spacing:-.025em;margin:6px 0 8px;font-size:1.1rem}.admin-overview-grid p{color:var(--workspace-muted);margin:0;font-size:.75rem;line-height:1.65}.admin-overview-grid button,.admin-overview-grid article>small{margin-top:auto}.admin-overview-grid button{color:#7e3757;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:.72rem;font-weight:800;display:flex}.admin-overview-grid article>small{color:#9aa2ac;font-size:.64rem}.admin-overview-roadmap{grid-template-columns:260px minmax(0,1fr);gap:32px;padding:26px;display:grid}.admin-overview-roadmap>div{align-content:start;gap:7px;display:grid}.admin-overview-roadmap h2{margin:0;font-size:1.05rem}.admin-overview-roadmap ol{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-overview-roadmap li{color:#8a929c;border:1px solid #e8e3e5;border-radius:13px;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:13px;display:grid}.admin-overview-roadmap li.is-current{color:#723b54;background:#fff5f9;border-color:#dbc4cf}.admin-overview-roadmap li>span{font-size:.62rem;font-weight:900}.admin-overview-roadmap li>div{gap:3px;display:grid}.admin-overview-roadmap li strong{font-size:.67rem}.admin-overview-roadmap li small{color:#9aa2aa;font-size:.55rem}@media (width<=1000px){.admin-workspace{grid-template-columns:220px minmax(0,1fr)}.admin-workspace-sidebar{padding-inline:12px}.admin-overview-grid{grid-template-columns:1fr}.admin-overview-grid article{min-height:220px}.admin-overview-roadmap{grid-template-columns:1fr}}@media (width<=720px){.admin-workspace{display:block}.admin-workspace-sidebar{width:100%;height:auto;padding:14px;position:static}.admin-workspace-brand{padding-bottom:14px}.admin-workspace-sidebar nav{grid-template-columns:1fr 1fr;gap:7px}.admin-workspace-sidebar nav>p,.admin-workspace-sidebar nav button:disabled,.admin-workspace-account{display:none}.admin-workspace-sidebar nav button{grid-template-columns:22px 1fr;margin-top:8px}.admin-workspace-header{height:auto;padding:14px 16px;position:static}.admin-workspace-header-actions button span{display:none}.admin-workspace-header-actions button{justify-content:center;width:39px;padding:0}.admin-workspace-content{padding:22px 16px}.admin-overview-heading{flex-direction:column;align-items:flex-start}.admin-overview-roadmap ol{grid-template-columns:1fr}}.admin-members-panel{color:#273342}.admin-members-header{margin-bottom:24px}.admin-members-eyebrow{color:var(--theme-accent);letter-spacing:.13em;margin:0 0 7px;font-size:.6rem;font-weight:850}.admin-members-header h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,3vw,2.45rem)}.admin-members-header span{color:#7c8794;margin-top:8px;font-size:.78rem;display:block}.admin-members-layout{grid-template-columns:minmax(270px,340px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.admin-members-form-column{position:sticky;top:102px}.admin-members-directory{background:#fffdfd;border:1px solid #e3dde0;border-radius:20px;min-width:0;padding:20px;box-shadow:0 14px 36px #412a360d}.admin-members-directory-heading{border-bottom:1px solid #eee8eb;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding-bottom:14px;display:flex}.admin-members-directory-heading>div{align-items:center;gap:9px;display:flex}.admin-members-directory-heading strong{font-size:.9rem}.admin-members-directory-heading span{color:#a24e74;background:#f8edf2;border-radius:999px;padding:4px 8px;font-size:.62rem;font-weight:750}.admin-members-status,.admin-members-error{color:#796672;background:#f8f2f5;border-radius:14px;margin:0;padding:20px;font-size:.78rem;line-height:1.6}.admin-members-error{color:#762c4e;background:#fff4f8;border:1px solid #e8b9cd}.admin-members-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-member-card{background:#fff;border:1px solid #e9e3e6;border-radius:15px;min-width:0;padding:17px;transition:border-color .16s,box-shadow .16s,transform .16s}.admin-member-card:hover{border-color:#d9c9d1;transform:translateY(-1px);box-shadow:0 9px 24px #3e263212}.admin-member-primary{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.admin-member-primary>div{gap:4px;min-width:0;display:grid}.admin-member-primary strong,.admin-member-primary span{overflow-wrap:anywhere}.admin-member-primary strong{font-size:.84rem}.admin-member-primary span{color:#806f78;font-size:.68rem}.admin-member-edit{color:#713c56;font:inherit;cursor:pointer;background:#fff8fb;border:1px solid #ddcdd5;border-radius:9px;flex:none;padding:7px 11px;font-size:.68rem;font-weight:750}.admin-member-edit:hover{background:#fcebf3}.admin-member-edit:focus-visible{outline-offset:2px;outline:3px solid #b66e902e}.admin-member-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.admin-member-details div{background:#faf5f7;border-radius:10px;padding:9px 10px}.admin-member-details dt{color:#94828b;margin-bottom:3px;font-size:.57rem}.admin-member-details dd{margin:0;font-size:.68rem;font-weight:720}.admin-member-form{background:radial-gradient(circle at 110% -15%,#eec9db7a,#0000 38%),#fffafd;border:1px solid #e2d8dd;border-radius:20px;gap:14px;padding:20px;display:grid;box-shadow:0 14px 36px #412a360d}.admin-member-form h3{margin:0 0 2px;font-size:1rem}.admin-member-form h3:focus-visible{outline-offset:4px;outline:3px solid #b66e902e}.admin-member-form-guide{color:#806170;margin:-2px 0 0;font-size:.7rem;line-height:1.5}.admin-member-form label{color:#62384c;gap:7px;font-size:.72rem;font-weight:680;display:grid}.admin-member-form input,.admin-member-form select{color:#3f2030;width:100%;font:inherit;background:#fff;border:1px solid #ddcbd4;border-radius:10px;padding:11px 12px}.admin-member-form input:focus,.admin-member-form select:focus{border-color:#b66e90;outline:3px solid #b66e902e}.admin-member-form input:read-only{color:#735866;cursor:not-allowed;background:#f3e8ee}.admin-member-active-field{align-items:center;gap:9px!important;display:flex!important}.admin-member-active-field input{width:17px;height:17px;margin:0}.admin-member-form-actions{gap:9px;display:flex}.admin-member-form-actions button{color:#fff;font:inherit;cursor:pointer;background:#713c56;border:0;border-radius:10px;flex:1;padding:11px 13px;font-size:.72rem;font-weight:750}.admin-member-form-actions button:hover:not(:disabled){background:#5c2e45}.admin-member-form-actions button:disabled{cursor:wait;opacity:.65}.admin-member-form-actions .admin-member-form-cancel{color:#713c56;background:#fff;border:1px solid #ddc4d0}.admin-member-form-actions .admin-member-form-cancel:hover:not(:disabled){background:#fcebf3}.admin-member-form-error,.admin-member-form-success{border-radius:10px;margin:0;padding:11px 12px;font-size:.68rem;line-height:1.5}.admin-member-form-error{color:#782c4f;background:#fff0f5;border:1px solid #e7b2c8}.admin-member-form-success{color:#286344;background:#effaf4;border:1px solid #b9dbc8}.admin-member-flags{border:1px solid #e3d4dc;border-radius:11px;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:12px;display:grid}.admin-member-flags legend{color:#806170;padding:0 5px;font-size:.68rem;font-weight:700}.admin-members-list{border:1px solid #e9e3e6;border-radius:14px;display:block;overflow-x:auto}.admin-member-list-head,.admin-member-row{grid-template-columns:minmax(210px,1.4fr) minmax(250px,1.7fr) minmax(100px,.7fr) minmax(105px,.7fr) 64px;align-items:center;gap:14px;min-width:850px;display:grid}.admin-member-list-head{color:#8e7d86;letter-spacing:.04em;background:#f8f4f6;border-bottom:1px solid #e9e3e6;min-height:40px;padding:0 16px;font-size:.6rem;font-weight:800}.admin-member-row{background:#fff;border-bottom:1px solid #eee9eb;min-height:68px;padding:10px 16px;transition:background .14s}.admin-member-row:last-child{border-bottom:0}.admin-member-row:hover{background:#fffbfd}.admin-member-row .admin-member-primary{gap:4px;min-width:0;margin:0;display:grid}.admin-member-row .admin-member-primary strong,.admin-member-row .admin-member-primary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-member-row .admin-member-primary strong{font-size:.76rem}.admin-member-row .admin-member-primary span{color:#85747d;font-size:.64rem}.admin-member-row .member-badges{flex-wrap:nowrap;overflow:hidden}.admin-member-row .member-badge{min-height:21px;font-size:.56rem}.admin-member-state{align-items:center;gap:5px;width:fit-content;font-size:.65rem;font-weight:750;display:inline-flex}.admin-member-state:before{content:"";border-radius:50%;width:7px;height:7px}.admin-member-state.is-active{color:#3e7453}.admin-member-state.is-active:before{background:#52a46f}.admin-member-state.is-inactive{color:#9b6675}.admin-member-state.is-inactive:before{background:#bd768a}.admin-member-join-state{gap:3px;display:grid}.admin-member-join-state strong{font-size:.66rem}.admin-member-join-state span{color:#918791;font-size:.58rem}.admin-member-row .admin-member-edit{justify-self:end}@media (width<=1180px){.admin-members-list{display:block}}@media (width<=860px){.admin-members-layout{grid-template-columns:1fr}.admin-members-form-column{position:static}}@media (width<=520px){.admin-members-directory,.admin-member-form{border-radius:16px;padding:15px}.admin-member-details{grid-template-columns:1fr}.admin-member-form-actions{flex-direction:column}}.member-badges{flex-wrap:wrap;gap:5px;display:flex}.member-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:23px;padding:0 8px;font-size:.61rem;font-weight:780;display:inline-flex}.member-badge.is-position{color:#49647f;background:#edf3fb;border-color:#d7e1ef}.member-badge.is-regular{color:#3e7453;background:#edf8f1;border-color:#cfe4d6}.member-badge.is-admin{border-color:color-mix(in srgb, var(--theme-accent) 28%, #dfe2e6);background:color-mix(in srgb, var(--theme-accent) 9%, white);color:var(--theme-accent)}.member-badge.is-empty{color:#8b8589;background:#f6f4f5;border-color:#e4e1e3}.auth-dialog-backdrop{--auth-background:var(--theme-background);--auth-surface:#fff;--auth-text:#18212d;--auth-muted:#788391;--auth-border:#18212d1f;--auth-accent:var(--theme-accent);--auth-accent-soft:color-mix(in srgb, var(--theme-accent) 10%, transparent);--auth-primary:#20364f;--auth-error:#b4233c;--auth-error-background:#fff0f3;--auth-success:#35704a;--auth-success-background:#edf8f0;z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18212d75;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.auth-dialog{border:1px solid var(--auth-border);background:radial-gradient(circle at 100% 0, #e8216817, transparent 31%), var(--auth-surface);width:min(100%,440px);max-height:calc(100vh - 48px);color:var(--auth-text);border-radius:28px;padding:32px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #18212d38}.auth-dialog-close{border:1px solid var(--auth-border);color:var(--auth-muted);font:inherit;cursor:pointer;background:#ffffffbd;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700;position:absolute;top:20px;right:20px}.auth-dialog-header{padding-right:58px}.auth-dialog-header p{color:var(--auth-accent);letter-spacing:.14em;margin:0 0 10px;font-size:11px;font-weight:900}.auth-dialog-header h2{letter-spacing:-.05em;margin:0;font-size:30px}.auth-dialog-header>span{color:var(--auth-muted);margin-top:10px;font-size:14px;line-height:1.65;display:block}.auth-dialog-primary-tabs{background:var(--auth-background);border-radius:14px;grid-template-columns:repeat(2,1fr);margin-top:28px;padding:4px;display:grid}.auth-dialog-primary-tabs button{height:42px;color:var(--auth-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;font-size:13px;font-weight:800}.auth-dialog-primary-tabs button.is-active{background:var(--auth-surface);color:var(--auth-text);box-shadow:0 6px 18px #18212d17}.auth-dialog-form{gap:16px;margin-top:24px;display:grid}.auth-dialog-form label{gap:8px;display:grid}.auth-dialog-form label>span{color:var(--auth-text);font-size:12px;font-weight:800}.auth-dialog-registration-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.auth-dialog-form input{border:1px solid var(--auth-border);width:100%;height:48px;color:var(--auth-text);font:inherit;background:#ffffffd1;border-radius:13px;outline:none;padding:0 14px;font-size:14px;transition:border-color .16s,box-shadow .16s}.auth-dialog-form input::placeholder{color:#abb3be}.auth-dialog-form input:focus{border-color:var(--auth-accent);box-shadow:0 0 0 4px var(--auth-accent-soft)}.auth-dialog-terms{border:1px solid var(--auth-border);background:var(--auth-background);border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:13px;display:grid}.auth-dialog-terms>label{color:var(--auth-text);align-items:center;gap:8px;font-size:12px;font-weight:750;display:flex}.auth-dialog-terms input{width:16px;height:16px;accent-color:var(--auth-accent);margin:0}.auth-dialog-terms>button{color:var(--auth-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:800}.auth-dialog-terms-box{color:var(--auth-muted);background:#fff;border-radius:10px;grid-column:1/-1;padding:13px;font-size:12px}.auth-dialog-terms-box strong{color:var(--auth-text)}.auth-dialog-terms-box p{margin:6px 0 0}.auth-dialog-message{border-radius:12px;margin:0;padding:12px 13px;font-size:12px;font-weight:700;line-height:1.55}.auth-dialog-message.is-error{background:var(--auth-error-background);color:var(--auth-error)}.auth-dialog-message.is-success{background:var(--auth-success-background);color:var(--auth-success)}.auth-dialog-submit{background:var(--auth-primary);color:#fff;height:50px;font:inherit;cursor:pointer;border:0;border-radius:14px;margin-top:2px;font-size:14px;font-weight:850;transition:transform .16s,opacity .16s}.auth-dialog-submit:hover:not(:disabled){transform:translateY(-1px)}.auth-dialog-submit:disabled{cursor:wait;opacity:.6}.auth-dialog-footer{border-top:1px solid var(--auth-border);flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:22px;padding-top:20px;display:flex}.auth-dialog-footer button{color:var(--auth-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.auth-dialog-footer button:hover{color:var(--auth-accent)}.auth-dialog button:focus-visible,.auth-dialog input:focus-visible{outline-offset:2px;outline:3px solid #e8216840}@media (width<=520px){.auth-dialog-backdrop{align-items:end;padding:12px}.auth-dialog{border-radius:24px;width:100%;max-height:calc(100vh - 24px);padding:28px 22px}.auth-dialog-header h2{font-size:27px}.auth-dialog-registration-fields{grid-template-columns:1fr}}.directory-page{background:var(--theme-background);color:#1c2733;min-height:calc(100vh - 76px);padding:50px clamp(20px,6vw,88px) 80px}.directory-heading{justify-content:space-between;align-items:flex-end;gap:24px;max-width:1280px;margin:0 auto 28px;display:flex}.directory-heading p,.directory-profile-hero>div>span,.directory-profile-card>span,.directory-access-state>p:first-of-type{color:var(--theme-accent);letter-spacing:.14em;margin:0;font-size:10px;font-weight:900}.directory-heading h1,.directory-profile-hero h1{letter-spacing:-.055em;margin:8px 0;font-size:clamp(30px,5vw,52px)}.directory-heading>div>span,.directory-profile-hero p{color:#7c8793;font-size:13px}.directory-heading>span{background:var(--theme-surface-tint);width:56px;height:56px;color:var(--theme-accent);border-radius:18px;place-items:center;display:grid}.directory-list{background:#fffffff0;border:1px solid #18212d1a;border-radius:19px;max-width:1280px;margin:0 auto;overflow:hidden;box-shadow:0 18px 48px #2c26290f}.directory-list-head,.directory-member-row{grid-template-columns:minmax(230px,1.4fr) 100px minmax(220px,1.2fr) minmax(150px,.8fr) 26px;align-items:center;gap:14px;min-width:900px;display:grid}.directory-list-head{color:#89929d;letter-spacing:.08em;background:#f7f7f8;border-bottom:1px solid #e7e6e8;min-height:43px;padding:0 18px;font-size:9px;font-weight:850}.directory-member-row{color:#4e5966;width:100%;min-height:72px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #ecebed;padding:10px 18px;font-size:11px;transition:background .14s,box-shadow .14s}.directory-member-row:last-child{border-bottom:0}.directory-member-row:hover{z-index:1;background:color-mix(in srgb, var(--theme-accent) 6%, white);box-shadow:inset 4px 0 0 var(--theme-accent);position:relative}.directory-member-primary{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.directory-member-primary>div{gap:3px;min-width:0;display:grid}.directory-member-primary strong,.directory-member-primary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.directory-member-primary strong{color:#23303d;font-size:12px}.directory-member-primary span{color:#8a939e;font-size:9px}.directory-status{color:#747f8b;text-align:center;max-width:1280px;margin:80px auto;font-size:13px}.directory-status.is-error{color:#a53c50}.directory-access-state{text-align:center;background:#fff;border:1px solid #18212d1a;border-radius:23px;justify-items:center;width:min(520px,100%);margin:70px auto;padding:42px;display:grid}.directory-access-state>span{background:var(--theme-surface-tint);width:52px;height:52px;color:var(--theme-accent);border-radius:16px;place-items:center;margin-bottom:18px;display:grid}.directory-access-state h1{margin:9px 0;font-size:28px}.directory-access-state>p:last-of-type{color:#7c8793;margin:0 0 20px;font-size:12px}.directory-access-state button,.directory-back{background:var(--theme-accent);color:#fff;min-height:42px;font:inherit;cursor:pointer;border:0;border-radius:11px;padding:0 16px;font-size:11px;font-weight:850}.directory-detail{gap:20px;max-width:1180px;margin:0 auto;display:grid}.directory-back{color:#5d6874;background:#fff;border:1px solid #dadde1;justify-self:start}.directory-profile-hero{background:color-mix(in srgb, var(--theme-accent) 7%, white);border:1px solid #18212d1a;border-radius:22px;align-items:center;gap:20px;padding:30px;display:flex}.directory-profile-hero .site-profile-avatar.is-large{width:78px;height:78px;font-size:24px}.directory-detail-grid{grid-template-columns:1.3fr .7fr;gap:20px;display:grid}.directory-profile-card{background:#fff;border:1px solid #18212d1a;border-radius:20px;min-width:0;padding:24px}.directory-profile-card h2{margin:6px 0 18px;font-size:19px}.directory-profile-card dl{gap:15px;margin:0;display:grid}.directory-profile-card dl>div{border-bottom:1px solid #ecebed;gap:5px;padding-bottom:15px;display:grid}.directory-profile-card dl>div:last-child{border-bottom:0;padding-bottom:0}.directory-profile-card dt{color:#8b949e;font-size:9px;font-weight:850}.directory-profile-card dd{color:#384450;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.65}.directory-profile-card.is-timetable{overflow-x:auto}.directory-profile-card.is-timetable>p{color:#858f9a;font-size:12px}@media (width<=900px){.directory-list{overflow-x:auto}.directory-detail-grid{grid-template-columns:1fr}}@media (width<=600px){.directory-page{padding:32px 14px 60px}.directory-profile-hero{align-items:flex-start;padding:22px}}.site-header{z-index:1000;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe8;border-bottom:1px solid #18212d1a;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:30px;width:100%;height:76px;padding:0 clamp(20px,4vw,64px);display:grid;position:sticky;top:0;box-shadow:0 8px 28px #18212d0d}.site-header button{font:inherit}.site-header-brand{color:#18212d;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.site-header-brand>span{color:#fff;width:38px;height:38px;box-shadow:inset 0 -3px 0 var(--theme-accent);background:#17273a;border-radius:12px;place-items:center;font-size:14px;font-weight:900;display:grid}.site-header-brand strong{letter-spacing:-.04em;font-size:17px}.site-header-navigation{justify-content:center;gap:4px;min-width:0;display:flex}.site-header-nav-group{position:relative}.site-header-nav-group>button{color:#66717e;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:7px;min-height:42px;padding:0 15px;font-size:13px;font-weight:760;transition:color .15s,background .15s,border-color .15s,transform .15s,box-shadow .15s;display:flex}.site-header-nav-group>button>span{color:#a1a8b0;font-size:13px;transition:transform .15s}.site-header-nav-group:hover>button,.site-header-nav-group:focus-within>button,.site-header-nav-group>button.is-active{border-color:color-mix(in srgb, var(--theme-accent) 22%, transparent);background:color-mix(in srgb, var(--theme-accent) 9%, white);color:var(--theme-accent);box-shadow:0 8px 20px color-mix(in srgb, var(--theme-accent) 13%, transparent);transform:translateY(-2px)}.site-header-nav-group:hover>button>span,.site-header-nav-group:focus-within>button>span{transform:rotate(180deg)}.site-header-dropdown{visibility:hidden;opacity:0;background:#fffffffa;border:1px solid #18212d1a;border-radius:16px;gap:4px;min-width:225px;padding:12px;transition:opacity .15s,transform .15s,visibility .15s;display:grid;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-8px);box-shadow:0 24px 60px #18212d2b}.site-header-nav-group:hover .site-header-dropdown,.site-header-nav-group:focus-within .site-header-dropdown{visibility:visible;opacity:1;transform:translate(-50%)}.site-header-dropdown small{color:var(--theme-accent);letter-spacing:.12em;padding:5px 9px 8px;font-size:10px;font-weight:900}.site-header-dropdown button{color:#4f5b68;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:0 10px;font-size:12px;font-weight:720;display:flex}.site-header-dropdown button:hover,.site-header-dropdown button.is-current{background:color-mix(in srgb, var(--theme-accent) 9%, white);color:var(--theme-accent)}.site-header-account{position:relative}.site-header-profile-button{color:#24303d;text-align:left;cursor:pointer;background:#fff;border:1px solid #18212d1f;border-radius:15px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:172px;height:48px;padding:5px 10px 5px 7px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.site-header-profile-button:hover,.site-header-profile-button[aria-expanded=true]{border-color:color-mix(in srgb, var(--theme-accent) 38%, #d9dde2);box-shadow:0 10px 24px color-mix(in srgb, var(--theme-accent) 12%, transparent);transform:translateY(-1px)}.site-profile-avatar{background:var(--theme-surface-tint);width:34px;height:34px;color:var(--theme-accent);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:900;display:grid;overflow:hidden}.site-profile-avatar.is-large{width:48px;height:48px;font-size:16px}.site-profile-avatar img{object-fit:cover;width:100%;height:100%}.site-header-profile-button>span:nth-child(2){gap:2px;min-width:0;display:grid}.site-header-profile-button strong,.site-header-profile-button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-header-profile-button strong{font-size:12px}.site-header-profile-button small{color:#89929d;font-size:10px}.site-header-account-caret{color:#9ba3ad;font-size:13px}.site-header-login{color:#fff;cursor:pointer;background:#17273a;border:0;border-radius:12px;min-width:92px;height:42px;font-size:12px;font-weight:800}.site-header-account-menu{background:#fffffffa;border:1px solid #18212d1a;border-radius:19px;gap:15px;width:320px;padding:18px;display:grid;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 28px 70px #18212d33}.site-header-account-summary{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.site-header-account-summary>div{gap:3px;min-width:0;display:grid}.site-header-account-summary strong,.site-header-account-summary span,.site-header-account-summary small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-header-account-summary strong{color:#18212d;font-size:14px}.site-header-account-summary span,.site-header-account-summary small{color:#7f8995;font-size:11px}.site-header-account-actions{border-top:1px solid #18212d17;gap:5px;padding-top:12px;display:grid}.site-header-account-actions button{color:#4d5865;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;min-height:42px;padding:0 11px;font-size:12px;font-weight:750;display:flex}.site-header-account-actions button:hover{background:color-mix(in srgb, var(--theme-accent) 9%, white);color:var(--theme-accent)}.site-header-account-actions button.is-logout{color:#a33b4d}.site-header button:focus-visible{outline:3px solid color-mix(in srgb, var(--theme-accent) 28%, transparent);outline-offset:2px}@media (width<=1040px){.site-header{gap:14px;padding-inline:18px}.site-header-brand strong,.site-header-nav-group>button>span,.site-header-profile-button>span:nth-child(2),.site-header-account-caret{display:none}.site-header-profile-button{grid-template-columns:34px;min-width:46px;padding:5px}}@media (width<=760px){.site-header{grid-template-columns:auto 1fr auto;gap:10px;height:auto;padding:10px 12px}.site-header-navigation{scrollbar-width:none;justify-content:flex-start;overflow-x:auto}.site-header-navigation::-webkit-scrollbar{display:none}.site-header-nav-group>button{white-space:nowrap;min-height:38px;padding-inline:11px;font-size:11px}.site-header-dropdown{display:none}.site-header-account-menu{width:min(320px,100vw - 24px);position:fixed;top:72px;right:12px}}.mypage-workspace{--mypage-navy:#17273a;--mypage-text:#1d2937;--mypage-muted:#798493;background:var(--theme-background);min-height:100vh;color:var(--mypage-text);grid-template-columns:270px minmax(0,1fr);display:grid}.mypage-sidebar{background:var(--mypage-navy);color:#fff;flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:sticky;top:0}.mypage-brand{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff1a;align-items:center;gap:11px;padding:0 8px 24px;display:flex}.mypage-brand>span{width:38px;height:38px;color:var(--mypage-navy);box-shadow:inset 0 -3px 0 var(--theme-accent);background:#fff;border-radius:12px;place-items:center;font-size:14px;font-weight:900;display:grid}.mypage-brand>div,.mypage-account>div,.mypage-header>div:first-child{gap:3px;display:grid}.mypage-brand strong{font-size:16px}.mypage-brand small,.mypage-header>div:first-child span{color:color-mix(in srgb, var(--theme-accent) 70%, white);letter-spacing:.13em;font-size:9px;font-weight:850}.mypage-sidebar nav{gap:5px;padding-top:18px;display:grid}.mypage-sidebar nav>p{color:#71869b;letter-spacing:.13em;margin:13px 10px 8px;font-size:9px;font-weight:850}.mypage-sidebar nav button{color:#9cabb9;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;grid-template-columns:22px 1fr;align-items:center;gap:10px;padding:0 12px;font-size:12px;font-weight:700;display:grid}.mypage-sidebar nav button:hover,.mypage-sidebar nav button.is-active{color:#fff;background:#263a50}.mypage-sidebar nav button.is-active{box-shadow:inset 3px 0 0 var(--theme-accent)}.mypage-account{border-top:1px solid #ffffff1a;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;margin-top:auto;padding:17px 8px 4px;display:grid}.mypage-account strong,.mypage-account span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mypage-account strong{font-size:11px}.mypage-account span{color:#8194a6;font-size:9px}.mypage-main{min-width:0}.mypage-header{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe8;border-bottom:1px solid #18212d1a;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:14px 34px;display:flex;position:sticky;top:0}.mypage-header>div:first-child strong{font-size:16px}.mypage-header>div:last-child{gap:8px;display:flex}.mypage-header button{color:#5e6874;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dddfe3;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:750;display:flex}.mypage-content{max-width:1320px;margin:0 auto;padding:36px}.mypage-panel{gap:22px;display:grid}.mypage-heading{padding:8px 2px}.mypage-heading p,.mypage-section-heading span{color:var(--theme-accent);letter-spacing:.14em;margin:0;font-size:9px;font-weight:900}.mypage-heading h1{letter-spacing:-.05em;margin:7px 0;font-size:clamp(28px,4vw,42px)}.mypage-heading>div>span,.mypage-section-heading small{color:var(--mypage-muted);font-size:12px}.mypage-profile-form,.mypage-academic-card,.mypage-theme-card{background:#fffffff0;border:1px solid #18212d1a;border-radius:22px;gap:24px;padding:26px;display:grid;box-shadow:0 16px 42px #30272c0f}.mypage-readonly-profile{background:color-mix(in srgb, var(--theme-accent) 7%, white);border-radius:16px;align-items:center;gap:15px;padding:17px;display:flex}.mypage-readonly-profile>div{gap:3px;display:grid}.mypage-readonly-profile small,.mypage-readonly-profile span{color:var(--mypage-muted);font-size:10px}.mypage-readonly-profile strong{font-size:17px}.mypage-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.mypage-form-grid label,.mypage-contact-list label,.mypage-credit-simulator label,.mypage-color-picker{color:#3b4652;gap:8px;font-size:11px;font-weight:800;display:grid}.mypage-form-grid label.is-wide{grid-column:1/-1}.mypage-profile-form input,.mypage-profile-form textarea,.mypage-course-form input,.mypage-course-form select,.mypage-credit-simulator input{color:#25313e;width:100%;font:inherit;background:#fff;border:1px solid #dfe2e6;border-radius:12px;outline:none;font-size:12px}.mypage-profile-form input,.mypage-course-form input,.mypage-course-form select,.mypage-credit-simulator input{height:45px;padding:0 12px}.mypage-profile-form textarea{resize:vertical;min-height:110px;padding:12px;line-height:1.65}.mypage-profile-form input:focus,.mypage-profile-form textarea:focus,.mypage-course-form input:focus,.mypage-course-form select:focus{border-color:var(--theme-accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--theme-accent) 12%, transparent)}.mypage-readonly-value{background:#f7f7f8;border:1px solid #e5e6e9;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:10px 12px;display:flex}.mypage-readonly-value>span{color:var(--theme-accent);font-size:10px}.mypage-contact-section{border-top:1px solid #ecebed;grid-template-columns:210px minmax(0,1fr);gap:28px;padding-top:22px;display:grid}.mypage-contact-section h2{margin:0 0 7px;font-size:17px}.mypage-contact-section p{color:var(--mypage-muted);margin:0;font-size:10px;line-height:1.6}.mypage-contact-list{gap:12px;display:grid}.mypage-extra-contact{grid-template-columns:140px minmax(0,1fr) auto;gap:8px;display:grid}.mypage-extra-contact button,.mypage-add-contact{color:#68727d;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe2e6;border-radius:11px;font-size:10px;font-weight:800}.mypage-add-contact{color:var(--theme-accent);border-style:dashed}.mypage-save-row{border-top:1px solid #ecebed;justify-content:flex-end;align-items:center;gap:15px;padding-top:20px;display:flex}.mypage-save-row p,.mypage-inline-status{color:#62707e;margin:0 auto 0 0;font-size:11px}.mypage-save-row>button,.mypage-section-heading>button,.mypage-course-form>button,.mypage-theme-preview button{background:var(--theme-accent);color:#fff;min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:12px;padding:0 17px;font-size:11px;font-weight:850}.mypage-section-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.mypage-section-heading h2{margin:5px 0 0;font-size:20px}.mypage-course-form{grid-template-columns:minmax(180px,1fr) repeat(3,140px) auto;gap:8px;display:grid}.mypage-timetable{border:1px solid #e5e6e9;border-radius:15px;grid-template-columns:48px repeat(5,1fr);min-width:720px;display:grid;overflow:hidden}.mypage-timetable>div{color:#67727d;text-align:center;border-bottom:1px solid #ecebed;border-right:1px solid #ecebed;place-items:center;min-height:42px;padding:5px;font-size:10px;display:grid}.mypage-timetable>div.is-label,.mypage-timetable>div.is-time{background:#f6f6f7;font-weight:850}.mypage-timetable>div.has-course{background:color-mix(in srgb, var(--theme-accent) 14%, white);color:var(--theme-accent);font-weight:800}.mypage-academic-card{overflow-x:auto}.mypage-course-list{gap:7px;display:grid}.mypage-course-list>div{background:#f7f7f8;border-radius:11px;grid-template-columns:140px 1fr auto;align-items:center;gap:10px;padding:10px 12px;font-size:11px;display:grid}.mypage-course-list span{color:var(--theme-accent)}.mypage-course-list button{color:#9a4b58;font:inherit;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:800}.mypage-credit-simulator{grid-template-columns:180px 180px minmax(260px,1fr);align-items:end;gap:18px;display:grid}.mypage-credit-result{grid-template-columns:1fr auto;align-items:center;gap:8px 12px;display:grid}.mypage-credit-result>div{background:#e9e9eb;border-radius:999px;height:10px;overflow:hidden}.mypage-credit-result>div>span{border-radius:inherit;background:var(--theme-accent);height:100%;display:block}.mypage-credit-result p{color:var(--mypage-muted);grid-column:1/-1;margin:0;font-size:10px}.mypage-theme-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.mypage-theme-grid button{color:#313d49;font:inherit;cursor:pointer;background:#f7f7f8;border:2px solid #0000;border-radius:15px;justify-items:start;gap:7px;padding:15px;display:grid}.mypage-theme-grid button.is-selected{border-color:var(--theme-swatch);background:#fff}.mypage-theme-grid button>span{background:var(--theme-swatch);border-radius:50%;width:34px;height:34px;box-shadow:inset 0 0 0 5px #ffffff59}.mypage-theme-grid strong{font-size:12px}.mypage-theme-grid small{color:var(--mypage-muted);font-size:9px}.mypage-color-picker{grid-template-columns:auto 44px 1fr;justify-content:start;align-items:center}.mypage-color-picker input{background:#fff;border:1px solid #dddfe3;border-radius:10px;width:44px;height:38px;padding:3px}.mypage-theme-preview{background:color-mix(in srgb, var(--theme-accent) 9%, white);border-radius:18px;padding:28px}.mypage-theme-preview>span{color:var(--theme-accent);letter-spacing:.14em;font-size:9px;font-weight:900}.mypage-theme-preview h2{margin:7px 0;font-size:25px}.mypage-theme-preview p{color:var(--mypage-muted);margin:0 0 17px;font-size:11px}@media (width<=1050px){.mypage-workspace{grid-template-columns:220px minmax(0,1fr)}.mypage-contact-section,.mypage-credit-simulator{grid-template-columns:1fr}.mypage-course-form{grid-template-columns:1fr 1fr}.mypage-theme-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.mypage-workspace{display:block}.mypage-sidebar{width:100%;height:auto;padding:14px;position:static}.mypage-brand{padding-bottom:14px}.mypage-sidebar nav{grid-template-columns:repeat(3,1fr);gap:6px}.mypage-sidebar nav>p,.mypage-account{display:none}.mypage-sidebar nav button{text-align:center;grid-template-columns:1fr;justify-items:center;gap:4px;margin-top:8px;padding:8px 4px;font-size:9px}.mypage-header{padding:13px 16px;position:static}.mypage-header button span{display:none}.mypage-content{padding:22px 14px}.mypage-profile-form,.mypage-academic-card,.mypage-theme-card{padding:18px}.mypage-form-grid,.mypage-course-form,.mypage-theme-grid,.mypage-extra-contact{grid-template-columns:1fr}.mypage-save-row{flex-direction:column;align-items:stretch}}.home-dashboard{--home-bg:var(--theme-background);--home-text:#18212d;--home-muted:#7a8490;--home-line:#18212d1f;--home-surface:#ffffffd6;--home-surface-border:#18212d17;--home-shadow:#46303e12;--home-brand:#17273a;--home-accent:var(--theme-accent);--home-focus-start:#1d3550;--home-focus-end:#496d8f;background:radial-gradient(circle at 16% 12%, var(--theme-surface-tint), transparent 27%), var(--home-bg);min-height:100vh;color:var(--home-text);padding:0 36px;position:relative;overflow:hidden}.home-background-circle{z-index:0;background:color-mix(in srgb, var(--theme-accent) 22%, transparent);pointer-events:none;border-radius:50%;width:350px;height:350px;position:absolute;top:108px;right:-118px}.home-header,.home-main,.home-footer{z-index:1;position:relative}.home-header{border-bottom:1px solid var(--home-line);grid-template-columns:260px 1fr minmax(300px,420px);align-items:center;max-width:1360px;height:78px;margin:0 auto;display:grid}.home-brand{width:fit-content;color:var(--home-text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;text-decoration:none;display:inline-flex}.home-brand>span{background:var(--home-brand);color:#fff;width:36px;height:36px;box-shadow:inset 0 -3px 0 var(--home-accent);border-radius:50%;place-items:center;font-size:14px;font-weight:900;display:grid}.home-brand strong{letter-spacing:-.03em;font-size:18px}.home-header nav{justify-content:center;gap:30px;display:flex}.home-header nav a,.home-header nav button{color:var(--home-muted);font:inherit;background:0 0;border:0;padding:8px 0;font-size:.8rem;font-weight:750;text-decoration:none;position:relative}.home-header nav button:disabled{cursor:default;opacity:.62}.home-header nav .is-active{color:var(--home-text)}.home-header nav .is-active:after{background:var(--home-accent);content:"";border-radius:3px;width:18px;height:3px;position:absolute;bottom:-21px;left:50%;transform:translate(-50%)}.home-header-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.home-round-button,.home-account-button,.home-admin-button{color:#536174;min-height:40px;font:inherit;cursor:pointer;background:#ffffffb3;border:1px solid #23364d21}.home-round-button{border-radius:50%;flex:0 0 40px;place-items:center;width:40px;display:grid}.home-round-button:disabled{cursor:default;opacity:.58}.home-account-button{border-color:var(--home-brand);background:var(--home-brand);color:#fff;border-radius:999px;padding:0 17px;font-size:.75rem;font-weight:800}.home-admin-button{color:#3f5369;border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-size:.73rem;font-weight:800;display:inline-flex}.home-account-button:hover:not(:disabled),.home-admin-button:hover{transform:translateY(-1px)}.home-account-button:focus-visible,.home-admin-button:focus-visible,.home-header nav a:focus-visible{outline-offset:3px;outline:3px solid #e821682e}.home-main{max-width:1260px;margin:0 auto;padding:48px 0 36px}.home-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.home-heading>div{gap:6px;display:grid}.home-heading span,.home-card-title>span{color:var(--home-accent);letter-spacing:.13em;text-transform:uppercase;font-size:.65rem;font-weight:850}.home-heading h1{letter-spacing:-.055em;margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.06}.home-heading>p{max-width:360px;color:var(--home-muted);text-align:right;margin:0 0 5px;font-size:.83rem;line-height:1.6}.home-bento-grid{grid-template-rows:220px 270px;grid-template-columns:1.1fr 1.1fr .8fr .8fr;gap:14px;display:grid}.home-bento-grid>article{border:1px solid var(--home-surface-border);background:var(--home-surface);box-shadow:0 18px 55px var(--home-shadow);border-radius:26px;position:relative;overflow:hidden}.home-focus-card{color:#fff;flex-direction:column;grid-column:span 2;justify-content:space-between;padding:24px 26px;display:flex;background:linear-gradient(135deg, var(--home-focus-start), var(--home-focus-end))!important}.home-focus-card:after{content:"";border:1px solid #ffffff2e;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-75px;right:-55px;box-shadow:0 0 0 34px #ffffff0a,0 0 0 68px #ffffff08}.home-focus-topline{color:#c3d1dd;justify-content:space-between;align-items:center;font-size:.63rem;font-weight:700;display:flex}.home-focus-topline>span{color:#ff8bb6;background:#e8216829;border-radius:999px;padding:6px 9px}.home-focus-card h2{letter-spacing:-.035em;margin:0 0 7px;font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.35}.home-focus-card p{color:#c3d1dd;margin:0;font-size:.73rem}.home-focus-card button{z-index:1;color:#fff;width:fit-content;font:inherit;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:.73rem;font-weight:800;display:flex}.home-status-card{flex-direction:column;padding:22px;display:flex;background:#dfe8fa!important}.home-status-card>div{color:#68768a;justify-content:space-between;align-items:center;font-size:.65rem;font-weight:800;display:flex}.home-card-icon{color:#3c5d8d;background:#ffffffad;border-radius:12px;place-items:center;width:35px;height:35px;display:grid}.home-status-card>strong{letter-spacing:-.06em;margin-top:auto;font-size:2.75rem}.home-status-card>p{color:#68768a;margin:0;font-size:.72rem}.home-shortcuts-card,.home-timetable-card,.home-community-card,.home-archive-card{padding:22px}.home-shortcuts-card{background:#f3dfb7!important}.home-card-title{gap:5px;display:grid}.home-card-title h2{letter-spacing:-.03em;margin:0;font-size:1rem}.home-shortcuts-card .home-card-title>span{color:#9a7d45}.home-shortcut-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;display:grid}.home-shortcut-grid button{color:#58482d;min-height:58px;font:inherit;text-align:left;cursor:pointer;background:#ffffff8f;border:1px solid #7a591f1f;border-radius:13px;align-items:center;gap:9px;padding:10px;font-size:.68rem;font-weight:750;display:flex}.home-shortcut-grid button:hover{background:#ffffffc7}.home-timetable-card{grid-column:span 2}.home-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home-feature-badge{color:#8c96a5;white-space:nowrap;background:#f0f2f5;border-radius:999px;align-items:center;gap:4px;width:fit-content;padding:5px 8px;font-size:.58rem;font-weight:750;display:inline-flex}.home-timetable{border-top:1px solid #e5e7eb;border-left:1px solid #e5e7eb;grid-template-columns:38px repeat(4,1fr);margin-top:15px;display:grid}.home-timetable>div{color:#a0a7b0;text-align:center;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;place-items:center;min-height:34px;padding:3px;font-size:.55rem;display:grid}.home-timetable>.has-class{color:#4f6076;background:#e4eaf5;font-weight:750}.home-community-card{background:#dfeadd!important}.home-community-card .home-card-title>span{color:#648060}.home-community-card .home-card-heading>svg{color:#52724d}.home-thread-list{margin-top:11px;display:grid}.home-thread{border-bottom:1px solid #52724d24;grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px 0;display:grid}.home-thread>span{color:#52724d;background:#ffffffb8;border-radius:10px;place-items:center;width:32px;height:32px;font-size:.7rem;font-weight:850;display:grid}.home-thread>span.is-alt{color:#637d5d}.home-thread>div{gap:2px;min-width:0;display:grid}.home-thread small,.home-thread em{color:#7f907c;font-size:.55rem;font-style:normal}.home-thread strong{text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.home-archive-card{background:#f5e9ef!important}.home-file-list{gap:8px;margin-top:14px;display:grid}.home-file-list>div{color:#725c66;background:#fff9;border-radius:11px;align-items:center;gap:8px;min-width:0;padding:9px 10px;display:flex}.home-file-list span{text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:700;overflow:hidden}.home-archive-card>.home-feature-badge{margin-top:12px}.home-card-link{color:#5f6974;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:.61rem;font-weight:780;display:inline-flex;position:absolute;bottom:15px;right:18px}.home-community-card .home-card-link{color:#52724d}.home-archive-card .home-card-link{color:#7a5567}.home-footer{color:#9a8791;justify-content:space-between;gap:16px;max-width:1260px;margin:0 auto;padding:8px 0 28px;font-size:.65rem;display:flex}@media (width<=1050px){.home-dashboard{padding:0 24px}.home-header{grid-template-columns:180px 1fr auto}.home-header nav{gap:18px}.home-admin-button span{display:none}.home-bento-grid{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.home-bento-grid>article{min-height:220px}.home-focus-card,.home-timetable-card{grid-column:span 2}}@media (width<=720px){.home-dashboard{padding:0 16px}.home-background-circle{top:78px;right:-180px}.home-header{grid-template-columns:1fr auto;gap:12px;height:auto;padding:14px 0}.home-header nav,.home-round-button{display:none}.home-admin-button{justify-content:center;width:40px;padding:0}.home-account-button{padding:0 13px}.home-main{padding-top:34px}.home-heading{flex-direction:column;align-items:flex-start;gap:10px}.home-heading>p{text-align:left}.home-bento-grid{grid-template-columns:1fr}.home-bento-grid>article,.home-focus-card,.home-timetable-card{grid-column:auto}.home-focus-card{min-height:260px!important}.home-timetable-card{overflow-x:auto!important}.home-timetable{min-width:520px}.home-footer{flex-direction:column}}.portal-page{--portal-accent:var(--theme-accent);--portal-accent-soft:var(--theme-surface-tint);--portal-accent-deep:color-mix(in srgb, var(--theme-accent) 75%, #17273a);--portal-bg:var(--theme-background);--portal-text:#1b2735;--portal-muted:#78838f;background:radial-gradient(circle at 92% 8%, var(--portal-accent-soft), transparent 24%), var(--portal-bg);min-height:100vh;color:var(--portal-text)}.portal-header{z-index:5;border-bottom:1px solid #1b27351c;grid-template-columns:240px 1fr minmax(280px,380px);align-items:center;max-width:1380px;height:76px;margin:0 auto;padding:0 26px;display:grid;position:relative}.portal-brand{width:fit-content;color:var(--portal-text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.portal-brand>span{color:#fff;width:35px;height:35px;box-shadow:inset 0 -3px 0 var(--portal-accent);background:#17273a;border-radius:50%;place-items:center;font-size:.78rem;font-weight:900;display:grid}.portal-brand strong{letter-spacing:-.03em;font-size:1rem}.portal-header nav{justify-content:center;gap:26px;display:flex}.portal-header nav button{color:#6f7b88;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:.75rem;font-weight:730}.portal-header nav button:hover{color:var(--portal-text)}.portal-header-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.portal-header-actions button{color:#566474;min-height:38px;font:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #1b27351f;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:.68rem;font-weight:760;display:inline-flex}.portal-header-actions .portal-account-button{color:#fff;background:#17273a;border-color:#17273a}.portal-main{max-width:1260px;margin:0 auto;padding:58px 28px 54px}.portal-hero{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc7;border:1px solid #1b273517;border-radius:28px;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:40px;min-height:250px;padding:42px 46px;display:grid;box-shadow:0 22px 65px #34272e12}.portal-hero>div:first-child{gap:12px;display:grid}.portal-hero>div:first-child>span,.portal-profile-card>div:last-child>span,.portal-profile-settings>div>span,.portal-service-directory>div:first-child>span{color:var(--portal-accent);letter-spacing:.14em;font-size:.62rem;font-weight:880}.portal-hero h1{letter-spacing:-.06em;max-width:760px;margin:0;font-size:clamp(2.2rem,5vw,4rem);line-height:1.08}.portal-hero p{max-width:720px;color:var(--portal-muted);margin:0;font-size:.88rem;line-height:1.75}.portal-hero-mark{background:var(--portal-accent-soft);width:154px;height:154px;color:var(--portal-accent-deep);border-radius:50%;place-items:center;display:grid;position:relative}.portal-hero-mark:after{border-radius:inherit;content:"";border:1px solid #ffffffb8;position:absolute;inset:17px}.portal-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.portal-feature-grid article{background:#ffffffd6;border:1px solid #1b273517;border-radius:20px;flex-direction:column;align-items:flex-start;min-height:265px;padding:22px;display:flex;position:relative;box-shadow:0 14px 36px #34272e0d}.portal-feature-number{color:#c1b9bd;font-size:.6rem;font-weight:850;position:absolute;top:20px;right:20px}.portal-feature-icon{background:var(--portal-accent-soft);width:42px;height:42px;color:var(--portal-accent-deep);border-radius:13px;place-items:center;margin-bottom:22px;display:grid}.portal-feature-grid h2{letter-spacing:-.025em;margin:0 0 8px;font-size:1rem}.portal-feature-grid p{color:var(--portal-muted);margin:0;font-size:.72rem;line-height:1.65}.portal-feature-grid article>button,.portal-feature-grid article>small{margin-top:auto}.portal-feature-grid article>button{color:var(--portal-accent-deep);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:.68rem;font-weight:800;display:flex}.portal-feature-grid article>small{color:#91888d;background:#f3f1f2;border-radius:999px;padding:6px 8px;font-size:.58rem;font-weight:720}.portal-service-directory{background:#ffffffad;border:1px solid #1b273517;border-radius:20px;grid-template-columns:250px minmax(0,1fr);gap:28px;margin-top:18px;padding:24px 26px;display:grid}.portal-service-directory>div:first-child{align-content:center;gap:6px;display:grid}.portal-service-directory h2{margin:0;font-size:1rem}.portal-service-directory>div:last-child{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.portal-service-directory button{color:#6d747d;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ded9dc;border-radius:999px;padding:0 11px;font-size:.64rem;font-weight:720}.portal-service-directory button:hover,.portal-service-directory button.is-active{border-color:var(--portal-accent);color:var(--portal-accent-deep)}.portal-profile-page{grid-template-columns:minmax(280px,.78fr) minmax(0,1.4fr);gap:18px;display:grid}.portal-profile-card,.portal-profile-settings,.portal-profile-locked{background:#ffffffd6;border:1px solid #1b273517;border-radius:24px;box-shadow:0 18px 55px #34272e0f}.portal-profile-card{flex-direction:column;justify-content:flex-end;min-height:360px;padding:28px;display:flex;position:relative;overflow:hidden}.portal-profile-card:before{background:var(--portal-accent-soft);content:"";border-radius:50%;width:230px;height:230px;position:absolute;top:-85px;right:-75px}.portal-profile-avatar{z-index:1;color:#fff;width:68px;height:68px;box-shadow:inset 0 -4px 0 var(--portal-accent);background:#17273a;border-radius:21px;place-items:center;margin-bottom:24px;font-size:1.2rem;font-weight:900;display:grid;position:relative}.portal-profile-card>div:last-child{z-index:1;gap:7px;display:grid;position:relative}.portal-profile-card h1{letter-spacing:-.045em;margin:0;font-size:1.8rem}.portal-profile-card p{color:var(--portal-muted);overflow-wrap:anywhere;margin:0 0 8px;font-size:.72rem}.portal-profile-settings{padding:28px}.portal-profile-settings>div{gap:7px;margin-bottom:24px;display:grid}.portal-profile-settings h2{margin:0;font-size:1.3rem}.portal-profile-settings>div>p{color:var(--portal-muted);margin:0;font-size:.75rem}.portal-profile-settings form{gap:15px;display:grid}.portal-profile-settings label{color:#5d6976;gap:7px;font-size:.7rem;font-weight:730;display:grid}.portal-profile-settings input,.portal-profile-settings textarea,.portal-profile-settings select{width:100%;color:var(--portal-text);font:inherit;resize:vertical;background:#fff;border:1px solid #ddd6da;border-radius:10px;padding:11px 12px}.portal-profile-settings button,.portal-profile-locked button{color:#fff;min-height:42px;font:inherit;background:#17273a;border:0;border-radius:11px;padding:0 16px;font-size:.72rem;font-weight:760}.portal-profile-settings button:disabled{cursor:default;opacity:.52}.portal-profile-locked{text-align:center;justify-items:center;gap:10px;max-width:520px;margin:40px auto;padding:44px;display:grid}.portal-profile-locked>span{color:#fff;background:#17273a;border-radius:17px;place-items:center;width:55px;height:55px;display:grid}.portal-profile-locked>p:first-of-type{color:var(--portal-accent);letter-spacing:.13em;margin:8px 0 0;font-size:.61rem;font-weight:850}.portal-profile-locked h1{margin:0;font-size:1.8rem}.portal-profile-locked>p:last-of-type{color:var(--portal-muted);margin:0 0 8px;font-size:.76rem}.portal-profile-locked button{cursor:pointer}@media (width<=1050px){.portal-header{grid-template-columns:180px 1fr auto}.portal-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.portal-header{grid-template-columns:1fr auto;gap:12px;height:auto;padding-block:14px}.portal-header nav,.portal-header-actions button:not(.portal-account-button) span{display:none}.portal-main{padding:32px 16px}.portal-hero{grid-template-columns:1fr;min-height:0;padding:30px 24px}.portal-hero-mark{width:90px;height:90px}.portal-feature-grid,.portal-profile-page,.portal-service-directory{grid-template-columns:1fr}}@media (width<=480px){.portal-header-actions button:not(.portal-account-button){display:none}.portal-feature-grid{grid-template-columns:1fr}.portal-feature-grid article{min-height:240px}.portal-profile-card,.portal-profile-settings,.portal-profile-locked{padding:22px}}.profile-notice{color:#57233b;background:#fff3f8;border:1px solid #e8b9cd;border-radius:16px;width:min(720px,100% - 32px);margin:20px auto 0;padding:16px 18px;box-shadow:0 10px 30px #692a4814}.profile-notice strong{margin-bottom:6px;font-size:.95rem;display:block}.profile-notice p{margin:0;font-size:.9rem;line-height:1.6}
