.px-app{--accent: #11b3a4;--accent-deep: #0a8f83;--accent-soft: color-mix(in srgb, var(--accent) 15%, var(--surface));--accent-ink: var(--accent-deep);--bg: #fbf5ec;--bg-2: #f5eee2;--surface: #ffffff;--surface-2: #fbf7f0;--ink: #233140;--ink-2: #475866;--muted: #76838f;--faint: #9fabb5;--line: #eee5d6;--line-2: #f3ecdf;--coral: #ff7a59;--coral-deep: #f4623f;--amber: #f6a821;--green: #2bb36b;--blue: #3d8bf2;--purple: #a25ddc;--card-pad: 22px;--gap: 20px;--row-pad: 15px;--radius: 22px;--radius-sm: 14px;--font: "Nunito", "Figtree", system-ui, sans-serif;font-family:var(--font);color:var(--ink);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased}.px-app[data-density=compact]{--card-pad: 16px;--gap: 14px;--row-pad: 11px;--radius: 18px;--radius-sm: 12px}.px-app[data-bg=light]{--bg: #f4f6fa;--bg-2: #eef1f6;--surface: #ffffff;--surface-2: #f7f9fc;--line: #e7ecf3;--line-2: #f0f3f8}.px-app[data-bg=dark]{--bg: #161d26;--bg-2: #1d2630;--surface: #1f2a35;--surface-2: #243140;--ink: #eef3f6;--ink-2: #c2ccd4;--muted: #8d9aa6;--faint: #6b7884;--line: #2c3947;--line-2: #283440;--accent-ink: var(--accent)}*{box-sizing:border-box}.px-app button{font-family:inherit;cursor:pointer}.px-app ::selection{background:color-mix(in srgb,var(--accent) 28%,transparent)}.px-scroll::-webkit-scrollbar{width:10px;height:10px}.px-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 30%,transparent);border-radius:99px;border:3px solid transparent;background-clip:padding-box}.px-scroll::-webkit-scrollbar-track{background:transparent}.px-row{display:flex;align-items:center;gap:12px}.px-col{display:flex;flex-direction:column}.px-spacer{flex:1}.px-muted{color:var(--muted)}.px-strong{font-weight:800;color:var(--ink)}.px-num{font-variant-numeric:tabular-nums}.px-wrap{flex-wrap:wrap}.px-login{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--bg)}.px-login-art{position:relative;overflow:hidden;color:#fff;background:linear-gradient(150deg,#16c2b0,#11b3a4 42%,#2bb36b 120%);display:flex;flex-direction:column;justify-content:space-between;padding:54px 56px}.px-login-art:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;background:#ffffff1a;top:-150px;right:-120px}.px-login-art:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:#ffffff14;bottom:-120px;left:-90px}.px-login-brand{display:flex;align-items:center;gap:13px;position:relative;z-index:1}.px-login-logo{width:46px;height:46px;border-radius:14px;background:#ffffff38;display:grid;place-items:center;font-weight:900;font-size:21px;box-shadow:inset 0 0 0 1.5px #ffffff59}.px-login-tag{position:relative;z-index:1}.px-login-tag h1{font-size:44px;line-height:1.08;font-weight:900;letter-spacing:-.02em;margin:0 0 16px;max-width:12ch}.px-login-tag p{font-size:17px;line-height:1.5;font-weight:600;color:#ffffffe6;max-width:36ch;margin:0}.px-login-stats{display:flex;gap:14px;position:relative;z-index:1}.px-login-stat{background:#ffffff29;border-radius:18px;padding:16px 18px;flex:1}.px-login-stat b{font-size:26px;font-weight:900;display:block;letter-spacing:-.02em}.px-login-stat span{font-size:12.5px;font-weight:700;opacity:.9}.px-login-form{display:flex;flex-direction:column;justify-content:center;padding:54px clamp(40px,7vw,110px)}.px-login-form h2{font-size:30px;font-weight:900;letter-spacing:-.02em;margin:0 0 6px;color:var(--ink)}.px-login-form .sub{font-size:15px;color:var(--muted);font-weight:600;margin-bottom:28px}.px-role-pick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:26px}.px-role-card{border:2px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:18px 16px;text-align:left;transition:.16s;display:flex;flex-direction:column;gap:10px}.px-role-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-2px)}.px-role-card.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface));box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 18%,transparent)}.px-role-ico{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:#fff}.px-role-card b{font-size:16px;font-weight:800;color:var(--ink)}.px-role-card span{font-size:12.5px;color:var(--muted);font-weight:600;line-height:1.35}.px-field{margin-bottom:16px}.px-field label{display:block;font-size:12.5px;font-weight:800;color:var(--ink-2);margin-bottom:7px;letter-spacing:.01em}.px-input{width:100%;padding:13px 15px;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--surface);font:inherit;font-size:15px;font-weight:600;color:var(--ink);outline:none;transition:.15s}.px-input::placeholder{color:var(--faint);font-weight:600}.px-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.px-input-wrap{display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:var(--radius-sm);border:1.5px solid var(--line);background:var(--surface);color:var(--muted);transition:.15s}.px-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);color:var(--accent-ink)}.px-input-wrap.err{border-color:var(--coral-deep);box-shadow:0 0 0 4px color-mix(in srgb,var(--coral) 20%,transparent)}.px-input.bare{border:none;background:none;box-shadow:none;padding:13px 0;flex:1;min-width:0}.px-input-suffix{font-size:14px;font-weight:700;color:var(--faint);white-space:nowrap}.px-detect{margin:-2px 0 16px;min-height:30px}.px-detect-idle,.px-detect-unknown{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--muted);padding:4px 2px}.px-detect-unknown{color:var(--coral-deep)}.px-detect-unknown b{color:var(--ink)}.px-detect-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);border:1.5px solid;animation:pxDetect .22s cubic-bezier(.2,.8,.3,1)}.px-detect-card.student{background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.px-detect-card.mentor{background:color-mix(in srgb,var(--coral) 9%,var(--surface));border-color:color-mix(in srgb,var(--coral) 35%,var(--line))}@keyframes pxDetect{0%{transform:translateY(6px)}to{transform:translateY(0)}}.px-login-hint{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--muted);font-weight:600;margin-top:18px;padding:11px 13px;background:var(--surface-2);border-radius:12px;line-height:1.45}.px-login-hint b{color:var(--ink-2);font-weight:800}.px-login-hint svg{flex:none;margin-top:1px}.px-login-row{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px;font-size:13px;font-weight:700}.px-login-row a{color:var(--accent-deep);text-decoration:none}.px-check{display:inline-flex;align-items:center;gap:8px;color:var(--muted);cursor:pointer}.px-check i{width:18px;height:18px;border-radius:6px;border:2px solid var(--line);display:grid;place-items:center;color:#fff}.px-check.on i{background:var(--accent);border-color:var(--accent)}.px-shell{display:flex;min-height:100vh}.px-shell[data-nav=top]{flex-direction:column}.px-hamburger,.px-nav-backdrop{display:none}.px-side{width:252px;flex:none;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.px-side-brand{display:flex;align-items:center;gap:11px;padding:20px 20px 16px}.px-side-logo{width:38px;height:38px;border-radius:11px;background:linear-gradient(150deg,var(--accent),var(--accent-deep));color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 32%,transparent)}.px-side-brand b{font-size:17px;font-weight:900;letter-spacing:-.02em;color:var(--ink)}.px-side-brand span{font-size:11px;font-weight:700;color:var(--muted);display:block;margin-top:-2px}.px-side-nav{flex:1;overflow-y:auto;padding:8px 14px}.px-side-label{font-size:10.5px;font-weight:800;color:var(--faint);letter-spacing:.08em;text-transform:uppercase;padding:14px 12px 7px}.px-nav-item{display:flex;align-items:center;gap:12px;width:100%;border:none;background:none;padding:11px 12px;border-radius:12px;font-size:14.5px;font-weight:700;color:var(--ink-2);text-align:left;transition:.13s;margin-bottom:2px;position:relative}.px-nav-item:hover{background:var(--surface-2);color:var(--ink)}.px-nav-item.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:800}.px-nav-item svg{flex:none}.px-nav-item .px-badge-dot{margin-left:auto}.px-side-foot{padding:14px;border-top:1px solid var(--line)}.px-user-chip{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:13px;background:var(--surface-2)}.px-user-chip b{font-size:13.5px;font-weight:800;color:var(--ink);display:block;line-height:1.2}.px-user-chip span{font-size:11.5px;color:var(--muted);font-weight:600}.px-switch{position:relative}.px-switch-btn{display:flex;align-items:center;gap:11px;width:100%;border:1.5px solid var(--line);background:var(--surface-2);padding:9px 11px;border-radius:13px;transition:.13s;text-align:left}.px-switch-btn:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.px-switch-id{flex:1;min-width:0}.px-switch-id b{font-size:13.5px;font-weight:800;color:var(--ink);display:block;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-switch-id span{font-size:11.5px;color:var(--muted);font-weight:700}.px-switch-cv{color:var(--muted);transition:transform .15s;flex:none}.px-switch.open .px-switch-cv{transform:rotate(180deg)}.px-switch-menu{position:absolute;z-index:60;left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 44px #283c502e;padding:7px;animation:pxPop .16s cubic-bezier(.2,.8,.3,1)}.px-switch[data-variant=side] .px-switch-menu{bottom:calc(100% + 8px)}.px-switch[data-variant=top] .px-switch-menu{top:calc(100% + 8px);width:264px;left:auto;right:0}.px-switch-head{font-size:10.5px;font-weight:800;color:var(--faint);letter-spacing:.08em;text-transform:uppercase;padding:7px 10px 5px}.px-switch-item{display:flex;align-items:center;gap:11px;width:100%;border:none;background:none;padding:9px 10px;border-radius:11px;text-align:left;transition:.12s}.px-switch-item:hover{background:var(--surface-2)}.px-switch-item.on{background:var(--accent-soft)}.px-switch-item b{font-size:13.5px;font-weight:800;color:var(--ink);display:block;line-height:1.2}.px-switch-item span{font-size:11.5px;color:var(--muted);font-weight:600}.px-switch-item .px-switch-ck{margin-left:auto;color:var(--accent-ink);flex:none}.px-switch-add{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;padding:10px;color:var(--accent-deep);font-weight:800;font-size:13px;transition:.12s;margin-top:2px;border-top:1px solid var(--line-2);border-radius:0 0 11px 11px}.px-switch-add:hover{background:var(--surface-2)}.px-topnav{display:flex;align-items:center;gap:8px;background:var(--surface);border-bottom:1px solid var(--line);padding:12px 26px;position:sticky;top:0;z-index:20}.px-topnav .px-side-logo{width:34px;height:34px;font-size:16px}.px-topnav-items{display:flex;gap:4px;margin-left:18px;flex:1;overflow-x:auto}.px-topnav-item{display:flex;align-items:center;gap:8px;border:none;background:none;padding:9px 14px;border-radius:11px;font-size:14px;font-weight:700;color:var(--ink-2);white-space:nowrap;transition:.13s}.px-topnav-item:hover{background:var(--surface-2)}.px-topnav-item.on{background:var(--accent-soft);color:var(--accent-ink);font-weight:800}.px-main{flex:1;min-width:0;display:flex;flex-direction:column}.px-topbar{display:flex;align-items:center;gap:16px;padding:18px 30px;position:sticky;top:0;z-index:15;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.px-shell[data-nav=top] .px-topbar{display:none}.px-page-title{font-size:23px;font-weight:900;letter-spacing:-.02em;color:var(--ink);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-page-sub{font-size:13.5px;color:var(--muted);font-weight:600;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-searchbox{display:flex;align-items:center;gap:9px;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:9px 13px;width:250px;color:var(--muted)}.px-searchbox input{border:none;background:none;outline:none;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink);width:100%}.px-icon-btn{width:40px;height:40px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--ink-2);transition:.13s;position:relative}.px-icon-btn:hover{background:var(--surface-2);color:var(--ink)}.px-icon-dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--coral);border:2px solid var(--surface)}.px-roleswitch{display:inline-flex;background:var(--surface-2);border:1.5px solid var(--line);border-radius:12px;padding:3px;gap:2px}.px-roleswitch button{border:none;background:none;padding:7px 14px;border-radius:9px;font-size:13px;font-weight:800;color:var(--muted);display:flex;align-items:center;gap:7px;transition:.13s}.px-roleswitch button.on{background:var(--surface);color:var(--accent-ink);box-shadow:0 2px 8px #283c501a}.px-content{flex:1;padding:8px 30px 44px;overflow-y:auto}.px-shell[data-nav=top] .px-content{padding-top:26px}.px-card{background:var(--surface);border-radius:var(--radius);padding:var(--card-pad);box-shadow:0 10px 28px #283c500f;border:1px solid var(--line-2)}.px-card.flush{padding:0;overflow:hidden}.px-card-hd{display:flex;align-items:center;gap:12px;margin-bottom:16px}.px-card-hd h3{font-size:16px;font-weight:900;letter-spacing:-.01em;margin:0;color:var(--ink)}.px-card-hd .more{margin-left:auto;font-size:13px;font-weight:800;color:var(--accent-deep);background:none;border:none}.px-grid{display:grid;gap:var(--gap)}.px-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}.px-qt{display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-sm);padding:15px 17px;box-shadow:0 8px 22px #283c500d;transition:.15s;text-align:left}.px-qt:hover{transform:translateY(-2px);box-shadow:0 14px 30px #283c501a}.px-qt:active{transform:translateY(0)}.px-qt-ico{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:#fff;flex:none}.px-qt-l{font-size:14.5px;font-weight:800;color:var(--ink);line-height:1.15}.px-qt-l span{display:block;font-size:11.5px;font-weight:700;color:var(--muted);margin-top:2px}@media (max-width: 1240px){.px-quick{grid-template-columns:repeat(2,1fr)}}.px-hero{border-radius:var(--radius);padding:28px 30px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(135deg,#16c2b0,#11b3a4 46%,#2bb36b 130%);box-shadow:0 16px 38px color-mix(in srgb,var(--accent) 26%,transparent)}.px-hero.coral{background:linear-gradient(135deg,#ff9472,#ff7a59 50%,#f4623f 130%);box-shadow:0 16px 38px #ff7a5947}.px-hero.blue{background:linear-gradient(135deg,#5b9bf5,#3d8bf2 50%,#2b6fd6 130%);box-shadow:0 16px 38px #3d8bf247}.px-hero.violet{background:linear-gradient(135deg,#b57ae3,#a25ddc 50%,#8344c4 130%);box-shadow:0 16px 38px #a25ddc47}.px-hero.gold{background:linear-gradient(135deg,#ffc24d,#f6a821 50%,#e08e0a 130%);box-shadow:0 16px 38px #f6a82147}.px-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:#ffffff1f;top:-90px;right:-50px}.px-hero:before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:#ffffff14;bottom:-70px;right:130px}.px-hero-inner{position:relative;z-index:1}.px-hero-hi{font-size:15px;font-weight:700;opacity:.9}.px-hero-name{font-size:30px;font-weight:900;letter-spacing:-.02em;line-height:1.08;margin-top:2px}.px-hero-chip{display:inline-flex;align-items:center;gap:7px;background:#fff3;padding:5px 13px;border-radius:999px;font-size:12.5px;font-weight:800;margin-top:11px}.px-hero-stats{display:flex;gap:14px;margin-top:22px}.px-hero-stat{background:#ffffff29;border-radius:16px;padding:13px 16px;min-width:96px}.px-hero-stat b{font-size:24px;font-weight:900;letter-spacing:-.02em;display:block}.px-hero-stat span{font-size:12px;font-weight:700;opacity:.92}.px-stat{background:var(--surface);border-radius:var(--radius-sm);padding:18px 20px;border:1px solid var(--line-2);box-shadow:0 8px 22px #283c500d}.px-stat-top{display:flex;align-items:center;justify-content:space-between}.px-stat-ico{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#fff}.px-stat-label{font-size:12.5px;font-weight:800;color:var(--muted)}.px-stat-val{font-size:30px;font-weight:900;letter-spacing:-.02em;margin-top:10px;color:var(--ink);font-variant-numeric:tabular-nums}.px-stat-sub{font-size:12.5px;font-weight:700;color:var(--muted);margin-top:3px}.px-av{display:inline-grid;place-items:center;border-radius:999px;color:#fff;font-weight:800;flex:none;letter-spacing:-.01em}.px-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:999px;font-size:11.5px;font-weight:800;white-space:nowrap}.px-pill.neutral{background:var(--surface-2);color:var(--muted)}.px-pill.green{background:color-mix(in srgb,var(--green) 16%,var(--surface));color:#1d9d5e}.px-pill.amber{background:color-mix(in srgb,var(--amber) 20%,var(--surface));color:#c9821a}.px-pill.red{background:color-mix(in srgb,var(--coral) 18%,var(--surface));color:#e0563a}.px-pill.blue{background:color-mix(in srgb,var(--blue) 16%,var(--surface));color:#2b6fd6}.px-pill.teal{background:var(--accent-soft);color:var(--accent-ink)}.px-pill.violet{background:color-mix(in srgb,var(--purple) 16%,var(--surface));color:#8344c4}.px-sdot{width:10px;height:10px;border-radius:3px;flex:none}.px-blob{border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:900;flex:none}.px-bar{height:10px;border-radius:999px;background:var(--surface-2);overflow:hidden}.px-bar-fill{height:100%;border-radius:999px;transition:width .5s cubic-bezier(.22,1,.36,1)}.px-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:13px;border:none;font:inherit;font-size:14px;font-weight:800;background:var(--surface-2);color:var(--ink);transition:.14s;white-space:nowrap}.px-btn:hover{filter:brightness(.97)}.px-btn:active{transform:scale(.98)}.px-btn.primary{background:var(--accent);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 30%,transparent)}.px-btn.coral{background:var(--coral);color:#fff;box-shadow:0 8px 18px #ff7a594d}.px-btn.ghost{background:var(--surface);border:1.5px solid var(--line)}.px-btn.sm{padding:8px 13px;font-size:13px;border-radius:11px}.px-btn.block{width:100%}.px-btn.lg{padding:14px 22px;font-size:15.5px}.px-btn[disabled]{opacity:.5;pointer-events:none}.px-btn.done{background:color-mix(in srgb,var(--green) 16%,var(--surface));color:#1d9d5e}.px-list{display:flex;flex-direction:column}.px-lrow{display:flex;align-items:center;gap:14px;padding:var(--row-pad) var(--card-pad)}.px-lrow+.px-lrow{border-top:1px solid var(--line-2)}.px-lrow.tap{transition:.12s}.px-lrow.tap:hover{background:var(--surface-2)}.px-class{display:flex;align-items:center;gap:15px;padding:var(--row-pad) var(--card-pad)}.px-class+.px-class{border-top:1px solid var(--line-2)}.px-time-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:62px;padding:9px;border-radius:13px;background:var(--surface-2);flex:none}.px-time-chip b{font-size:16px;font-weight:900;line-height:1;letter-spacing:-.02em;color:var(--ink)}.px-time-chip span{font-size:10px;font-weight:800;color:var(--muted);margin-top:3px}.px-tt{display:grid;grid-template-columns:70px repeat(6,1fr);gap:8px}.px-tt.days-7{grid-template-columns:70px repeat(7,1fr)}.px-tt-h{text-align:center;font-size:12px;font-weight:800;color:var(--muted);padding-bottom:4px}.px-tt-h b{display:block;font-size:15px;color:var(--ink);font-weight:900}.px-tt-rl{display:flex;align-items:center;font-size:12px;font-weight:800;color:var(--faint)}.px-tt-cell{min-height:58px;border-radius:13px;background:var(--surface-2);padding:8px;display:flex;flex-direction:column;gap:4px}.px-tt-ev{border-radius:9px;padding:6px 8px;color:#fff;font-size:11px;font-weight:800;line-height:1.2}.px-tt-ev span{font-weight:700;opacity:.9;display:block;font-size:10px}.px-av-grid{display:grid;grid-template-columns:90px repeat(7,1fr);gap:8px}.px-av-cell{aspect-ratio:2.4;border-radius:12px;display:grid;place-items:center;font-size:12px;font-weight:800;transition:.12s}.px-av-free{background:var(--accent-soft);color:var(--accent-ink)}.px-av-free:hover{filter:brightness(.97)}.px-av-off{background:var(--surface-2);color:var(--faint)}.px-av-off:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface-2))}.px-av-booked{color:#fff}.px-seg{display:inline-flex;background:var(--surface-2);border-radius:11px;padding:3px;gap:3px}.px-seg button{border:none;background:none;padding:8px 14px;border-radius:8px;font:inherit;font-size:13px;font-weight:800;color:var(--muted);transition:.12s}.px-seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px #283c501a}.px-seg button.on-green{background:var(--green);color:#fff}.px-seg button.on-red{background:var(--coral-deep);color:#fff}.px-tabs{display:flex;gap:5px;padding:4px;background:var(--surface-2);border-radius:13px}.px-tab{flex:1;border:none;background:none;padding:10px;border-radius:10px;font:inherit;font-size:13.5px;font-weight:800;color:var(--muted);transition:.12s}.px-tab.on{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px #283c501a}.px-tab[disabled]{opacity:.4;pointer-events:none}.px-fieldlabel{font-size:12px;font-weight:800;color:var(--ink-2);letter-spacing:.01em;margin-bottom:8px}.px-pick{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);background:var(--surface);border-radius:13px;padding:10px 12px;transition:.13s}.px-pick:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.px-pick.on{border-color:var(--accent);background:var(--accent-soft)}.px-pick b{font-size:13.5px;font-weight:800;color:var(--ink);display:block;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-pick span{font-size:11.5px;color:var(--muted);font-weight:700}.px-chip{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;font-weight:800;color:var(--ink-2);transition:.12s}.px-chip:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.px-chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.px-select{width:100%;padding:11px 13px;border-radius:11px;border:1.5px solid var(--line);background:var(--surface);font:inherit;font-size:14px;font-weight:700;color:var(--ink);outline:none}.px-select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.px-linkbox{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:13px;border:1.5px dashed color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--surface-2)}.px-linkrow{display:flex;align-items:center;gap:8px;margin-top:9px;padding:7px 10px;border-radius:10px;background:var(--surface-2);color:var(--muted);max-width:max-content}.px-linktext{font-size:12.5px;font-weight:700;color:var(--ink-2);font-variant-numeric:tabular-nums}.px-link-copy{display:inline-flex;align-items:center;gap:5px;border:none;background:var(--surface);border-radius:8px;padding:4px 9px;font:inherit;font-size:12px;font-weight:800;color:var(--accent-ink);box-shadow:0 1px 4px #283c5014}.px-link-copy:hover{filter:brightness(.97)}.px-seclabel{font-size:13px;font-weight:800;color:var(--ink);margin:4px 2px 12px;display:flex;align-items:center}.px-seclabel .more{margin-left:auto;font-size:12.5px;font-weight:800;color:var(--accent-deep);background:none;border:none}.px-live{width:7px;height:7px;border-radius:50%;background:var(--coral-deep);flex:none}@media (prefers-reduced-motion: no-preference){.px-live{animation:pxLive 1.4s ease-in-out infinite}}@keyframes pxLive{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.6)}}.px-msg{display:grid;grid-template-columns:300px 1fr;height:calc(100vh - 150px);min-height:520px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line-2);box-shadow:0 10px 28px #283c500f}.px-msg-list{background:var(--surface);border-right:1px solid var(--line-2);overflow-y:auto}.px-msg-search{padding:14px;position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--line-2)}.px-conv{display:flex;align-items:center;gap:12px;padding:13px 15px;transition:.12s}.px-conv+.px-conv{border-top:1px solid var(--line-2)}.px-conv:hover{background:var(--surface-2)}.px-conv.on{background:var(--accent-soft)}.px-conv-body{flex:1;min-width:0}.px-conv-body b{font-size:14px;font-weight:800;color:var(--ink);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.px-conv-body span{font-size:12.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.px-conv-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.px-conv-meta time{font-size:11px;color:var(--faint);font-weight:700}.px-unread{min-width:19px;height:19px;border-radius:999px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:900;display:grid;place-items:center;padding:0 5px}.px-thread{background:var(--surface-2);display:flex;flex-direction:column}.px-thread-hd{display:flex;align-items:center;gap:12px;padding:15px 20px;background:var(--surface);border-bottom:1px solid var(--line-2)}.px-thread-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:12px}.px-bubble{max-width:64%;padding:11px 15px;border-radius:16px;font-size:14px;font-weight:600;line-height:1.4}.px-bubble.them{background:var(--surface);color:var(--ink);border-bottom-left-radius:5px;align-self:flex-start;box-shadow:0 3px 10px #283c500d}.px-bubble.me{background:var(--accent);color:#fff;border-bottom-right-radius:5px;align-self:flex-end}.px-bubble time{display:block;font-size:10.5px;font-weight:700;opacity:.65;margin-top:4px}.px-day-sep{text-align:center;font-size:11.5px;font-weight:800;color:var(--faint);margin:6px 0}.px-composer{display:flex;align-items:center;gap:11px;padding:15px 20px;background:var(--surface);border-top:1px solid var(--line-2)}.px-composer input{flex:1;border:1.5px solid var(--line);border-radius:13px;padding:12px 15px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);outline:none;background:var(--surface)}.px-composer input:focus{border-color:var(--accent)}.px-send{width:44px;height:44px;border-radius:13px;border:none;background:var(--accent);color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 30%,transparent)}.px-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#23314080;z-index:200;display:grid;place-items:center;padding:24px;animation:pxFade .15s ease}@keyframes pxFade{0%{opacity:0}}.px-modal{background:var(--surface);border-radius:24px;width:100%;max-width:480px;max-height:88vh;overflow-y:auto;box-shadow:0 30px 70px #0000004d;animation:pxPop .22s cubic-bezier(.2,.8,.3,1)}.px-modal.wide{max-width:640px}@keyframes pxPop{0%{transform:translateY(14px) scale(.97);opacity:0}}.px-modal-hd{display:flex;align-items:flex-start;gap:12px;padding:22px 24px 0}.px-modal-hd h3{font-size:20px;font-weight:900;letter-spacing:-.01em;margin:0;color:var(--ink)}.px-modal-hd p{font-size:13.5px;color:var(--muted);font-weight:600;margin:4px 0 0}.px-modal-body{padding:18px 24px}.px-modal-foot{padding:0 24px 24px;display:flex;gap:12px}.px-matview{background:var(--surface);border-radius:18px;width:94vw;max-width:1060px;height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 70px #0000004d;animation:pxPop .22s cubic-bezier(.2,.8,.3,1)}.px-matview-hd{display:flex;align-items:center;gap:10px;padding:12px 14px 12px 18px;border-bottom:1px solid var(--line-2)}.px-matview-body{flex:1;min-height:0;overflow:auto;background:var(--line-2);display:flex}.px-toast-wrap{position:fixed;bottom:26px;left:50%;transform:translate(-50%);z-index:300;display:flex;flex-direction:column;gap:9px;align-items:center;pointer-events:none}.px-toast{background:var(--ink);color:#fff;padding:12px 20px;border-radius:14px;font-size:13.5px;font-weight:700;box-shadow:0 16px 38px #00000047;display:flex;align-items:center;gap:9px;animation:pxToast .22s ease}.px-toast svg{color:#6fe6c0}@keyframes pxToast{0%{transform:translateY(12px);opacity:0}}@media (prefers-reduced-motion: no-preference){.px-rise{animation:pxRise .5s cubic-bezier(.22,1,.36,1) both}@keyframes pxRise{0%{transform:translateY(14px)}to{transform:translateY(0)}}}@media (max-width: 1240px){.px-searchbox{width:170px}}@media (max-width: 1080px){.px-topbar .px-searchbox{display:none}}@media (max-width: 1100px){.px-login{grid-template-columns:1fr}.px-login-art{display:none}}@media (max-width: 860px){.px-msg{grid-template-columns:1fr}}@media (max-width: 760px){.px-side{position:fixed;top:0;left:0;bottom:0;height:100vh;width:260px;max-width:84vw;z-index:60;transform:translate(-100%);transition:transform .22s ease;box-shadow:2px 0 26px #0f172a38}.px-shell.nav-open .px-side{transform:translate(0)}.px-hamburger{display:grid;place-items:center;flex:none;width:38px;height:38px;margin-right:4px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink);cursor:pointer}.px-hamburger svg{width:20px;height:20px}.px-nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:55}}.px-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:12px;font-size:12.5px;font-weight:700;line-height:1.45;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}.px-note svg{flex:none;margin-top:1px}.px-note.amber{background:color-mix(in srgb,var(--amber) 12%,var(--surface));border-color:color-mix(in srgb,var(--amber) 45%,var(--line));color:#a06a12}.px-note.green{background:color-mix(in srgb,var(--green) 12%,var(--surface));border-color:color-mix(in srgb,var(--green) 45%,var(--line));color:#157a49}.px-note.red{background:color-mix(in srgb,var(--coral) 12%,var(--surface));border-color:color-mix(in srgb,var(--coral) 45%,var(--line));color:var(--coral-deep)}.px-tricolour{height:3px;border-radius:2px;margin-top:5px;width:100%;max-width:118px;background:linear-gradient(90deg,#f93 0,#f93 33.333%,#fff 33.333%,#fff 66.666%,#138808 66.666%,#138808);box-shadow:0 0 0 .5px #0000002e}body{overflow-x:hidden;min-width:320px}.px-app{min-height:100vh}@supports (min-height: 100dvh){.px-app{min-height:100dvh}}.px-main,.px-content,.px-card,.px-row>*,.px-grid>*,.px-col>*,.px-conv-body{min-width:0}.px-content,.px-card,.px-modal-body{overflow-wrap:break-word}.px-app img,.px-app video,.px-app canvas,.px-app iframe{max-width:100%;height:auto}.px-app{--pad-x: clamp(16px, 4vw, 30px)}.px-topbar{padding:clamp(12px,2.2vw,18px) var(--pad-x)}.px-content{padding:8px var(--pad-x) clamp(32px,6vw,44px)}.px-topnav{padding:clamp(10px,1.6vw,12px) var(--pad-x)}.px-page-title{font-size:clamp(18px,1.5vw + 13px,23px)}.px-page-sub{font-size:clamp(12.5px,.2vw + 12px,13.5px)}.px-card-hd h3{font-size:clamp(14.5px,.4vw + 13.5px,16px)}.px-modal-hd h3{font-size:clamp(17px,.8vw + 15px,20px)}@media (max-width: 560px){.px-app{--card-pad: 16px;--gap: 14px;--row-pad: 12px;--radius: 18px;--radius-sm: 13px}}@media (max-width: 1024px){.px-side{width:216px}.px-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.px-grid[style*=grid-template-columns]:not([style*=minmax]){grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width: 760px){.px-side{overflow-y:auto;-webkit-overflow-scrolling:touch}.px-nav-backdrop{animation:pxFade .18s ease}.px-topbar{gap:10px}.px-topbar .px-page-title{font-size:17px}.px-topbar .px-page-sub{display:none}.px-topnav-items{margin-left:10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.px-topnav-items::-webkit-scrollbar{display:none}.px-roleswitch,.px-seg{display:flex;width:100%}.px-roleswitch button,.px-seg button{flex:1;justify-content:center}.px-input,.px-composer input,.px-searchbox input,input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px}.px-bubble{max-width:84%}}@media (max-width: 560px){.px-quick{grid-template-columns:1fr}.px-grid[style*=grid-template-columns]:not([style*=minmax]){grid-template-columns:minmax(0,1fr)!important}.px-row{flex-wrap:wrap}.px-row>.px-spacer{flex-basis:100%;height:0}.px-class{flex-wrap:wrap;gap:10px 12px}.px-hero-stat{flex:1 1 42%}}@media (max-width: 900px){.px-tt-scroll,.px-av-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-inline:calc(var(--card-pad) * -1);padding-inline:var(--card-pad)}.px-tt,.px-tt.days-7{grid-template-columns:58px repeat(var(--tt-days, 6),minmax(84px,1fr));min-width:560px}.px-tt.days-7{--tt-days: 7;min-width:640px}.px-av-grid{grid-template-columns:74px repeat(7,minmax(64px,1fr));min-width:600px}.px-tt-h{font-size:11px}.px-tt-h b{font-size:13.5px}}.px-msg-back{display:none;width:38px;height:38px;flex:none;border:none;background:var(--surface-2);color:var(--ink-2);border-radius:11px;place-items:center}.px-msg-back:hover{background:var(--accent-soft);color:var(--accent-ink)}@media (max-width: 860px){.px-msg{height:calc(100vh - 132px);min-height:420px}@supports (height: 100dvh){.px-msg{height:calc(100dvh - 132px)}}.px-msg-back{display:grid}.px-msg[data-pane=list] .px-thread,.px-msg[data-pane=thread] .px-msg-list{display:none}.px-msg-list{border-right:none}.px-thread-body{padding:16px}.px-composer{padding:12px 14px calc(12px + env(safe-area-inset-bottom))}}.px-backdrop{padding:clamp(12px,3vw,24px)}.px-modal{max-height:88vh}@supports (max-height: 88dvh){.px-modal{max-height:88dvh}}@media (max-width: 560px){.px-backdrop{padding:0;place-items:end stretch}.px-modal,.px-modal.wide{max-width:100%;width:100%;max-height:92vh;border-radius:24px 24px 0 0;animation:pxSheet .22s cubic-bezier(.2,.8,.3,1)}@supports (max-height: 92dvh){.px-modal,.px-modal.wide{max-height:92dvh}}.px-modal-hd{padding:18px 18px 0}.px-modal-body{padding:16px 18px}.px-modal-foot{padding:0 18px calc(18px + env(safe-area-inset-bottom));flex-wrap:wrap}.px-modal-foot .px-btn{flex:1 1 140px;justify-content:center}}@keyframes pxSheet{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.px-tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.px-tbl{width:100%}.px-tbl thead th{position:sticky;top:0;z-index:2;background:var(--surface)}@media (max-width: 640px){.px-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.px-tbl tbody tr{display:block;border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 2px;margin-bottom:10px;background:var(--surface)}.px-tbl tbody td{display:grid;grid-template-columns:minmax(84px,40%) minmax(0,1fr);gap:12px;align-items:start;padding:7px 12px;border-bottom:1px solid var(--line-2);text-align:left!important}.px-tbl tbody td:last-child{border-bottom:none}.px-tbl tbody td:before{content:attr(data-label);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);justify-self:start;text-align:left}.px-tbl tbody td[data-label=""]{display:block}.px-tbl tbody td[data-label=""]:before{content:none}}@media (pointer: coarse),(max-width: 480px){.px-btn,.px-icon-btn,.px-nav-item,.px-topnav-item,.px-seg button,.px-roleswitch button,.px-switch-item,.px-conv{min-height:44px}.px-icon-btn{min-width:44px}.px-btn.sm{min-height:38px}.px-input,.px-app input,.px-app select{min-height:44px}.px-hamburger,.px-msg-back{width:44px;height:44px}}@media (max-width: 480px){.px-btn.block,.px-modal-foot .px-btn{width:100%;justify-content:center}.px-btn.sm,.px-seg button,.px-pill{min-height:44px}}@media (min-width: 1441px){.px-content{padding-inline:clamp(30px,3.4vw,64px)}}@media (min-width: 1920px){.px-content>*{max-width:1600px;margin-inline:auto}}@media (prefers-reduced-motion: reduce){.px-side,.px-modal,.px-nav-backdrop,.px-rise,.px-qt{transition:none!important;animation:none!important}.px-qt:hover{transform:none}}@media print{.px-side,.px-topbar,.px-topnav,.px-hamburger,.px-nav-backdrop,.px-composer{display:none!important}.px-content{overflow:visible;padding:0}}.px-feedback-gate{min-height:100vh}@supports (min-height: 100dvh){.px-feedback-gate{min-height:100dvh}}.star-btn{display:inline-grid;place-items:center}@media (pointer: coarse),(max-width: 480px){.star-btn{min-width:44px;min-height:44px}}
