.auth-shell{position:absolute;inset:0;z-index:101;overflow:auto;background:#f5f8ff;color:#142039}.auth-frame{min-height:100dvh;max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:white;box-shadow:0 22px 80px rgba(14,52,126,.12)}.auth-art{position:relative;min-height:100dvh;overflow:hidden;color:#fff;background:linear-gradient(145deg,#0960e9 0%,#0d4fc0 68%,#0d317b 100%)}.auth-art:before{content:"";position:absolute;width:130%;height:53%;left:-15%;top:-29%;background:rgba(255,255,255,.09);border-radius:50%}.auth-art:after{content:"";position:absolute;width:95%;height:34%;right:-24%;bottom:-17%;background:rgba(146,196,255,.15);border-radius:50%}.auth-brand{position:relative;z-index:1;display:flex;gap:10px;align-items:center;padding:42px;font-weight:800;letter-spacing:.02em}.auth-brand img{width:36px;height:36px;object-fit:contain}.auth-art-center{position:relative;z-index:1;min-height:calc(100dvh - 140px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px;text-align:center}.auth-hero-logo{width:min(48%,220px);height:auto;filter:drop-shadow(0 20px 30px rgba(3,23,70,.25))}.auth-illustration{width:min(74%,330px);height:auto;filter:drop-shadow(0 22px 24px rgba(3,23,70,.2))}.auth-art-caption{margin-top:28px;font-size:12px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#c8ddff}.auth-content{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:60px clamp(28px,6vw,74px)}.auth-kicker{font-size:12px;color:#165ad4;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.auth-title{font-size:clamp(31px,4vw,46px);font-weight:850;line-height:1.1;letter-spacing:-.04em;margin:14px 0}.auth-subtitle{font-size:16px;color:#68758b;line-height:1.65;max-width:410px}.auth-stepper{display:flex;gap:7px;margin:28px 0}.auth-stepper span{width:8px;height:8px;background:#d5dff0;border-radius:8px;transition:all .25s}.auth-stepper span.active{width:28px;background:#0c59f0}.auth-actions{display:flex;align-items:center;gap:12px;margin-top:18px}.auth-primary{min-height:52px;border:0;border-radius:17px;background:#0b58e8;color:white;font-weight:800;padding:13px 23px;box-shadow:0 13px 25px rgba(12,89,240,.18);cursor:pointer}.auth-primary:hover{background:#0648c4}.auth-primary:disabled{opacity:.5;cursor:not-allowed}.auth-quiet{min-height:48px;color:#53647c;font-weight:700;padding:10px 13px;cursor:pointer}.auth-quiet:hover{color:#0b58e8}.auth-option{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;border:1px solid #d6e1f0;border-radius:16px;background:#fff;color:#24334e;font-weight:800;margin-top:12px;cursor:pointer}.auth-option:hover{border-color:#6e9ef6;background:#f7faff}.auth-option:disabled{opacity:.65;cursor:not-allowed}.auth-label{display:block;font-size:12px;font-weight:800;color:#56657d;margin:24px 0 8px}.auth-input{display:block;width:100%;min-height:54px;border:1px solid #d7e1ef;border-radius:14px;background:#f9fbff;padding:13px 16px;color:#1e2d47;font-size:16px;outline:none}.auth-input:focus{border-color:#0b58e8;box-shadow:0 0 0 4px rgba(12,89,240,.1);background:#fff}.auth-note{font-size:12px;color:#718097;line-height:1.5;margin-top:12px}.auth-error{border-radius:15px;background:#fff2f4;border:1px solid #ffd1d8;color:#9e2743;padding:12px 15px;font-size:13px;font-weight:650;margin-top:14px}.auth-success{border-radius:15px;background:#edfff6;border:1px solid #b8f1d4;color:#187346;padding:12px 15px;font-size:13px;font-weight:650;margin-top:14px}.auth-inline-link{color:#0b58e8;font-weight:750;cursor:pointer}.auth-divider{display:flex;align-items:center;gap:12px;color:#9aa7b9;font-size:12px;font-weight:700;margin:21px 0 8px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e1e8f2;flex:1}.auth-back{display:inline-flex;align-items:center;gap:8px;color:#576987;font-size:13px;font-weight:700;margin-bottom:26px}.auth-back:hover{color:#0b58e8}.dark .auth-frame,.dark .auth-content{background:#181825;color:#e4e8f7}.dark .auth-shell{background:#11111b}.dark .auth-subtitle,.dark .auth-note{color:#a6adc8}.dark .auth-input,.dark .auth-option{background:#25263a;border-color:#45475a;color:#eef1fb}.dark .auth-input:focus{background:#303248}.dark .auth-label{color:#bdc5d8}
@media(max-width:767px){.auth-frame{display:block;box-shadow:none}.auth-art{min-height:34dvh;height:34dvh;border-radius:0 0 38px 38px}.auth-art-center{min-height:0;height:calc(34dvh - 47px);padding:0 20px 18px}.auth-brand{padding:16px 22px 0;font-size:13px}.auth-brand img{width:28px;height:28px}.auth-hero-logo{width:auto;height:min(18dvh,146px)}.auth-illustration{width:auto;height:min(20dvh,170px)}.auth-art-caption{display:none}.auth-content{min-height:66dvh;justify-content:flex-start;padding:30px 26px max(30px,var(--tercatat-navbar-inset,0px),env(safe-area-inset-bottom,0px))}.auth-title{font-size:32px}.auth-subtitle{font-size:14px;line-height:1.55}.auth-actions{margin-top:auto;padding-top:20px}.auth-actions .auth-primary{flex:1}.auth-stepper{margin:18px 0}.auth-option{min-height:50px}.auth-label{margin-top:16px}.auth-back{margin-bottom:14px}}
.auth-theme-toggle{position:absolute;right:22px;top:32px;z-index:3;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.45);border-radius:100px;color:white;background:rgba(8,38,93,.22);font-size:12px;font-weight:750;cursor:pointer;backdrop-filter:blur(12px)}
.auth-theme-toggle:hover{background:rgba(255,255,255,.2)}
.auth-emphasis{color:#0c59f0;font-weight:850}.dark .auth-emphasis{color:#76adff}
.auth-password-field{position:relative}.auth-password-field .auth-input{padding-right:54px}.auth-password-field button{position:absolute;right:6px;top:5px;width:44px;height:44px;color:#6f83a3;border-radius:10px}.auth-password-field button:hover{color:#0c59f0;background:rgba(12,89,240,.07)}
@media(max-width:767px){.auth-theme-toggle{top:12px;right:18px;padding:7px 10px}}
.auth-keyboard-open .auth-shell{height:var(--auth-visible-height);overflow-y:auto;overscroll-behavior:contain}.auth-keyboard-open .auth-frame{min-height:var(--auth-visible-height)}.auth-keyboard-open .auth-art{display:none}.auth-keyboard-open .auth-content{min-height:var(--auth-visible-height);padding-top:18px;padding-bottom:18px;justify-content:flex-start}.auth-keyboard-open .auth-back{margin-bottom:8px}.auth-keyboard-open .auth-title{font-size:27px;margin:7px 0}.auth-keyboard-open .auth-subtitle{font-size:13px;line-height:1.4}.auth-keyboard-open .auth-label{margin-top:10px}.auth-keyboard-open .auth-input{min-height:50px}.auth-keyboard-open .auth-primary{min-height:48px;margin-top:14px!important}
.task-calendar-panel{max-width:530px;margin:auto}.calendar-nav{width:30px;height:30px;border-radius:9px;background:#eaf1ff;color:#0c59f0;font-size:23px;line-height:1}.dark .calendar-nav{background:#303c61;color:#9cc0ff}.calendar-date{position:relative;height:38px;display:flex;align-items:center;justify-content:center;border-radius:12px;color:#334155;font-size:12px;font-weight:750}.calendar-date:not(:disabled):hover{background:#eff5ff}.dark .calendar-date{color:#e2e8f0}.dark .calendar-date:not(:disabled):hover{background:#303248}.calendar-date.is-today{outline:2px solid #2b72e9;outline-offset:-2px}.calendar-date.has-tasks{background:#ee4157;color:#fff}.calendar-date.has-tasks:hover,.dark .calendar-date.has-tasks:hover{background:#d52942}.calendar-date small{position:absolute;right:0;bottom:-2px;min-width:15px;height:15px;display:flex;align-items:center;justify-content:center;padding:0 2px;border-radius:9px;color:#db2440;background:white;border:1px solid #ef7584;font-size:9px;font-weight:900}.dark .calendar-date small{background:#25263a;color:#ff93a0}
