:root{--primary:#e63946;--primary-dark:#c1121f;--green:#16a34a;--bg-page:#f6f7f9;--surface:#fff;--text:#0f172a;--muted:#6b7280;--border:#e5e7eb;--input-bg:#f3f4f6;--shadow:#0f172a0f;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}[data-theme=dark]{--bg-page:#0b1220;--surface:#111827;--text:#e5e7eb;--muted:#94a3b8;--border:#1f2937;--input-bg:#1f2937;--shadow:#0006}body.login-page{background:linear-gradient(180deg, #0000008c 0%, #c1121fc7 100%), url(/static/img/auth/auth-page.jpg) center/cover no-repeat, linear-gradient(180deg, var(--primary) 0%, var(--primary-dark) 100%);background-attachment:fixed,fixed,fixed}body.magic-page{background:linear-gradient(180deg, #0000008c 0%, #c1121fc7 100%), url(/static/img/auth/auth-page.jpg) center/cover no-repeat, linear-gradient(180deg, var(--primary) 0%, var(--primary-dark) 100%);background-attachment:fixed,fixed,fixed;min-height:100dvh}body.login-page,body.magic-page{color:var(--text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.5}html.login-html,html.magic-html{height:100%}html.login-html body.login-page{height:100%;overflow:hidden}.login-shell{flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:1rem 1rem 1.25rem;display:flex;overflow-y:auto}.login-card{background:var(--surface);color:var(--text);border-radius:16px;width:100%;max-width:400px;padding:1.3rem;box-shadow:0 18px 36px #00000059}.login-logo{text-align:center;color:#fff;margin-bottom:.85rem}.login-logo img{filter:drop-shadow(0 2px 6px #0000004d);width:auto;height:44px;margin:0 auto;display:block}.login-logo h1{margin:.45rem 0 .15rem;font-size:1.05rem;font-weight:800}.login-logo p{opacity:.85;margin:0;font-size:.75rem}.login-brand{text-align:center;margin-bottom:1.2rem}.login-brand-row{justify-content:center;align-items:center;gap:.3rem;max-width:100%;display:inline-flex}.login-brand-row .login-brand-diamond{width:auto;height:40px;margin:0}.login-brand-row .login-brand-wordmark{width:auto;max-width:70%;height:58px;margin:0}.login-brand-subtitle{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:.4rem 0 0;font-size:.74rem;font-weight:700}.login-brand .login-brand-dark,[data-theme=dark] .login-brand .login-brand-light{display:none}[data-theme=dark] .login-brand .login-brand-dark{display:block}.login-pw-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;padding:0 .75rem;transition:color .15s;display:inline-flex}.login-pw-toggle:hover{color:var(--primary)}.login-remember{color:var(--text);cursor:pointer;align-items:center;gap:.45rem;margin:0 0 .85rem;font-size:.85rem;display:flex}.login-remember input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.login-card h2{margin:0 0 .25rem;font-size:1rem;font-weight:800}.login-card .lead{color:var(--muted);margin:0 0 .85rem;font-size:.82rem;line-height:1.4}.login-card .pt-field{margin-bottom:.7rem}.ok-card .icon-ok{background:color-mix(in srgb, var(--green) 14%, transparent);width:60px;height:60px;color:var(--green);border-radius:50%;justify-content:center;align-items:center;margin:0 auto .85rem;display:flex}.ok-card .icon-ok i,.ok-card .icon-ok svg{width:30px;height:30px;font-size:30px}.login-wa-hero{color:#fff;background:linear-gradient(135deg,#25d366,#128c7e);border-radius:14px;flex-direction:column;gap:.4rem;width:100%;max-width:400px;margin-top:1rem;padding:.95rem 1rem;text-decoration:none;transition:transform .15s;display:flex;box-shadow:0 4px 14px #0000002e}.login-wa-hero:active{transform:scale(.99)}.login-wa-head{align-items:center;gap:.6rem;display:flex}.login-wa-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:1.05rem;font-weight:800;line-height:1.15;overflow:hidden}.login-wa-pill{text-transform:uppercase;letter-spacing:1px;background:#ffffff2e;border-radius:999px;flex-shrink:0;padding:.15rem .55rem;font-size:.66rem;font-weight:800}.login-wa-sub{opacity:.95;font-size:.78rem;line-height:1.4}.pt-field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.pt-field label{color:var(--muted);font-size:.78rem;font-weight:700}.pt-id-toggle{background:var(--input-bg);border:1px solid var(--border);border-radius:10px;gap:.3rem;margin-bottom:.9rem;padding:.25rem;display:flex}.pt-id-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.5rem .6rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:background-color .15s,color .15s;display:inline-flex}.pt-id-tab:hover{color:var(--text)}.pt-id-tab.is-active{background:var(--surface);color:var(--primary);box-shadow:0 1px 4px #00000014}.pt-id-tab svg{flex:none}.pt-input-group{border:1px solid var(--border);background:var(--input-bg);border-radius:10px;align-items:stretch;display:flex;overflow:hidden}.pt-input-group:focus-within{border-color:var(--primary)}.pt-input-group>i,.pt-input-group>.pt-input-icon{color:var(--primary);background:var(--surface);border-right:1px solid var(--border);flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;padding:0 .75rem;font-size:16px;display:inline-flex}.pt-input-group input{color:var(--text);background:0 0;border:0;outline:none;flex:1;min-height:44px;padding:.7rem .85rem;font-family:inherit;font-size:1rem}.pt-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.7rem 1.1rem;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.pt-btn:hover{border-color:var(--primary)}.pt-btn-red{background:var(--primary);color:#fff;border-color:var(--primary)}.pt-btn-red:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.pt-btn-block{width:100%}.pt-btn i,.pt-btn svg{width:18px;height:18px;font-size:18px}.pt-btn[disabled]{opacity:.7;cursor:not-allowed}.magic-stack{flex-direction:column;justify-content:safe center;align-items:center;min-height:100dvh;padding:1.5rem 1rem;display:flex}.mc-shell{flex-direction:column;align-items:center;display:flex}.mc-card{background:var(--surface);color:var(--text);text-align:center;border-radius:18px;width:100%;max-width:420px;padding:1.6rem 1.4rem;box-shadow:0 18px 36px #00000059}.mc-logo{text-align:center;color:#fff;margin-bottom:1.2rem}.mc-logo img{filter:drop-shadow(0 2px 6px #0000004d);width:auto;height:56px;margin:0 auto;display:block}.mc-logo h1{margin:.35rem 0 .2rem;font-size:1.2rem;font-weight:800}.mc-logo p{opacity:.85;margin:0;font-size:.8rem}.mc-card .av{background:color-mix(in srgb, var(--primary) 14%, transparent);width:70px;height:70px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto .85rem;font-size:1.9rem;font-weight:800;display:inline-flex;overflow:hidden}.mc-card .av img{object-fit:cover;width:100%;height:100%}.mc-card h2{margin:0 0 .25rem;font-size:1.1rem;font-weight:800}.mc-card .name{color:var(--primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:800}.mc-card .lead{color:var(--muted);margin:0 0 1.3rem;font-size:.86rem}.login-warn-hero{background:linear-gradient(135deg,#f59e0b,#b45309);border-radius:14px;flex-direction:column;gap:.4rem;width:100%;max-width:400px;margin-top:1rem;padding:.95rem 1rem;text-decoration:none;transition:transform .15s;display:flex;box-shadow:0 4px 14px #0000002e}.login-warn-hero:active{transform:scale(.99)}.login-warn-head{align-items:center;gap:.6rem;display:flex}.login-warn-title{flex:1;min-width:0;font-size:1rem;font-weight:800;line-height:1.15}.login-warn-pill{text-transform:uppercase;letter-spacing:1px;background:#fff3;border-radius:999px;flex-shrink:0;padding:.15rem .55rem;font-size:.66rem;font-weight:800}.login-warn-sub{opacity:.95;font-size:.78rem;line-height:1.4}.login-theme-fab{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .15s,border-color .15s,background .15s;display:flex;position:fixed;bottom:4rem;left:1rem;box-shadow:0 4px 14px #0006}.login-theme-fab:hover{border-color:var(--primary);background:#ffffff26;transform:scale(1.06)}.login-lang-wrap{z-index:60;position:fixed;bottom:1rem;left:1rem}.login-lang-fab{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;transition:transform .15s,border-color .15s,background .15s;display:flex;box-shadow:0 4px 14px #0006}.login-lang-fab:hover{border-color:var(--primary);background:#ffffff26;transform:scale(1.06)}.login-lang-menu{background:#1a2030;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:.1rem;min-width:180px;padding:.4rem;animation:.15s ease-out login-lang-pop;display:flex;position:absolute;bottom:calc(100% + .5rem);left:0;box-shadow:0 8px 24px #00000080}@keyframes login-lang-pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.login-lang-item{color:#e0e0e0;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:.6rem;padding:.55rem .7rem;font-family:inherit;font-size:.88rem;font-weight:500;transition:background .12s;display:flex}.login-lang-item:hover{background:#ffffff0f}.login-lang-item.on{color:var(--primary);font-weight:700}.login-lang-item.on:hover{background:#e639461a}.login-lang-flag{font-size:1.1rem;line-height:1}.login-lang-label{flex:1}.login-lang-item svg{color:var(--primary)}.login-wa-fab{z-index:60;color:#fff;background:#25d366;border-radius:999px;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 6px 20px #25d36666}.login-wa-fab:hover{transform:scale(1.04);box-shadow:0 8px 24px #25d3668c}@media (max-width:540px){.login-wa-fab span{display:none}.login-wa-fab{padding:.7rem .95rem}}.pt-chan-cards{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.4rem;display:grid}.pt-chan-card{border:1px solid var(--border);background:var(--input-bg);color:var(--muted);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:.7rem .4rem;transition:border-color .15s,background-color .15s,color .15s;display:flex;position:relative}.pt-chan-card:hover{border-color:var(--primary)}.pt-chan-card.is-selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, transparent);color:var(--text)}.pt-chan-card:focus-within{outline:2px solid var(--primary);outline-offset:2px}.pt-chan-radio{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.pt-chan-icon{align-items:center;gap:.15rem;display:flex}.pt-chan-label{font-size:.82rem;font-weight:600;line-height:1}.pt-wa-note{color:var(--text,#1f2937);background:var(--surface-2,#0000000a);border:1px solid var(--border,#00000014);border-radius:10px;align-items:flex-start;gap:.45rem;margin:.1rem 0 .2rem;padding:.55rem .7rem;font-size:.8rem;line-height:1.3;display:flex}.pt-wa-note svg{flex:none;margin-top:1px}.pt-wa-note strong{white-space:nowrap}.pwa-install{flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.pwa-install-btn{font-size:.85rem;font-weight:600}.pwa-install-hint{text-align:center;max-width:320px;color:var(--muted,#6b7280);font-size:.78rem;line-height:1.4}
