.dr-page{--dr-bg: #f0f4ff;--dr-card: rgba(255, 255, 255, .88);--dr-text: #0f172a;--dr-muted: #64748b;--dr-border: rgba(148, 163, 184, .22);--dr-shadow: 0 24px 80px rgba(15, 23, 42, .12);--dr-icon: rgba(59, 130, 246, .12);--dr-icon-fg: #2563eb;--dr-btn: rgba(15, 23, 42, .06);--dr-btn-hover: rgba(15, 23, 42, .1);min-height:100dvh;width:100%;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:radial-gradient(circle at 18% 16%,rgba(59,130,246,.18),transparent 34%),radial-gradient(circle at 84% 88%,rgba(99,102,241,.14),transparent 34%),var(--dr-bg);position:relative;overflow:hidden}.dr-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(37,99,235,.15) 1px,transparent 1px);background-size:26px 26px;opacity:.7;pointer-events:none;z-index:0}.dr-page[data-theme=dark]{--dr-bg: #020617;--dr-card: rgba(15, 23, 42, .84);--dr-text: #f8fafc;--dr-muted: #94a3b8;--dr-border: rgba(148, 163, 184, .16);--dr-shadow: 0 24px 80px rgba(0, 0, 0, .45);--dr-icon: rgba(59, 130, 246, .14);--dr-icon-fg: #60a5fa;--dr-btn: rgba(248, 250, 252, .06);--dr-btn-hover: rgba(248, 250, 252, .1)}.dr-page[data-theme=dark]:before{background-image:radial-gradient(rgba(59,130,246,.22) 1px,transparent 1px);opacity:.8}.dr-theme-btn{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));z-index:10;background:var(--dr-btn);border:1px solid var(--dr-border);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--dr-muted);cursor:pointer;transition:background .15s}.dr-theme-btn:hover{background:var(--dr-btn-hover)}.dr-card{position:relative;z-index:1;width:min(480px,100%);padding:clamp(32px,8vw,52px) clamp(24px,7vw,44px);background:var(--dr-card);border:1px solid var(--dr-border);border-radius:clamp(22px,6vw,32px);box-shadow:var(--dr-shadow);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(14px,3.5vw,22px)}.dr-brand{display:flex;align-items:center;gap:10px;font-size:clamp(17px,4.5vw,22px);font-weight:700;letter-spacing:-.03em;color:var(--dr-text)}.dr-logo{width:clamp(32px,9vw,44px);height:clamp(32px,9vw,44px);border-radius:10px}.dr-icon-wrap{width:clamp(62px,16vw,80px);height:clamp(62px,16vw,80px);border-radius:50%;background:var(--dr-icon);display:flex;align-items:center;justify-content:center;color:var(--dr-icon-fg);margin-top:4px}.dr-title{margin:0;font-size:clamp(26px,7vw,36px);font-weight:850;letter-spacing:-.05em;line-height:1.05;color:var(--dr-text)}.dr-desc{margin:0;font-size:clamp(14px,3.6vw,16px);line-height:1.6;color:var(--dr-muted);max-width:340px}@media (max-width: 420px){.dr-card{padding:28px 20px;border-radius:20px}}@media (orientation: landscape) and (max-height: 500px){.dr-card{gap:10px;padding:20px 28px}.dr-icon-wrap{width:48px;height:48px}.dr-title{font-size:22px}.dr-desc{font-size:13px}}:root{--auth-bg: #f7f9ff;--auth-card: rgba(255, 255, 255, .88);--auth-card-solid: #ffffff;--auth-text: #0f172a;--auth-muted: #64748b;--auth-border: rgba(148, 163, 184, .28);--auth-primary: #2563eb;--auth-primary-dark: #1d4ed8;--auth-primary-soft: rgba(37, 99, 235, .11);--auth-shadow: 0 24px 80px rgba(15, 23, 42, .12);--auth-shadow-soft: 0 14px 40px rgba(15, 23, 42, .08);--auth-error: #dc2626;--auth-success: #16a34a}body.dark,.dark,[data-theme=dark]{--auth-bg: #020617;--auth-card: rgba(15, 23, 42, .82);--auth-card-solid: #0f172a;--auth-text: #f8fafc;--auth-muted: #94a3b8;--auth-border: rgba(148, 163, 184, .18);--auth-primary-soft: rgba(59, 130, 246, .16);--auth-shadow: 0 24px 80px rgba(0, 0, 0, .45);--auth-shadow-soft: 0 14px 40px rgba(0, 0, 0, .35)}body.dark .hero-copy,.dark .hero-copy,[data-theme=dark] .hero-copy{background:#0f172a7a;border-color:#94a3b82e;box-shadow:0 24px 70px #00000038}*{box-sizing:border-box}.auth-page{min-height:100vh;width:100%;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);background:radial-gradient(circle at 12% 12%,rgba(59,130,246,.18),transparent 34%),radial-gradient(circle at 45% 92%,rgba(59,130,246,.16),transparent 32%),var(--auth-bg);color:var(--auth-text);position:relative;transition:background .25s ease,color .25s ease}.theme-toggle-corner{position:fixed;top:22px;right:24px;z-index:50;width:42px;height:42px;border-radius:999px;border:1px solid var(--auth-border);background:var(--auth-card);color:var(--auth-text);display:grid;place-items:center;cursor:pointer;box-shadow:var(--auth-shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:.2s ease}.theme-toggle-corner:hover{transform:translateY(-1px);border-color:#2563eb73}.auth-hero{min-height:100vh;padding:52px 48px;position:relative;overflow:hidden;border-right:1px solid var(--auth-border);display:flex;flex-direction:column}.auth-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(37,99,235,.18) 1px,transparent 1px),linear-gradient(120deg,transparent,rgba(255,255,255,.22),transparent);background-size:26px 26px,100% 100%;pointer-events:none;opacity:.55}.auth-hero>*{position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;font-weight:850;font-size:22px;letter-spacing:-.04em;flex-shrink:0}.brand-logo{width:38px;height:38px;object-fit:contain}.hero-copy{margin-top:40px;max-width:min(520px,54%);flex-shrink:0;padding:24px 26px;border-radius:28px;border:1px solid rgba(148,163,184,.22);background:#ffffff6b;box-shadow:0 24px 70px #0f172a14;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:8;isolation:isolate}.hero-copy h1{margin:0;font-size:clamp(28px,3.2vw,58px);line-height:1;letter-spacing:-.06em}.hero-copy p{margin:16px 0 0;color:var(--auth-muted);font-size:clamp(13px,1.1vw,16px);line-height:1.6}.feature-list,.feature-list-forgot{position:absolute;right:32px;top:200px;display:grid;grid-template-columns:repeat(2,minmax(155px,1fr));gap:12px;width:clamp(330px,34%,430px);z-index:5}.feature-list .feature-card:nth-child(3),.feature-list-forgot .feature-card:nth-child(3){grid-column:1 / -1;justify-self:center;width:min(100%,245px)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.35)}}@keyframes floatPreview{0%,to{transform:translateZ(0) rotate(-1deg)}25%{transform:translate3d(10px,-10px,0) rotate(-.2deg)}50%{transform:translate3d(-8px,-16px,0) rotate(.8deg)}75%{transform:translate3d(-14px,7px,0) rotate(-.6deg)}}@keyframes orbitOne{0%,to{transform:translateZ(0) rotate(-1.5deg)}50%{transform:translate3d(10px,8px,0) rotate(.5deg)}}@keyframes orbitTwo{0%,to{transform:translateZ(0) rotate(1deg)}50%{transform:translate3d(-10px,9px,0) rotate(-.6deg)}}@keyframes orbitThree{0%,to{transform:translate3d(-50%,0,0) rotate(-.5deg)}50%{transform:translate3d(calc(-50% + 8px),-9px,0) rotate(.7deg)}}@keyframes photoOne{0%,to{transform:translateZ(0) rotate(-2deg)}25%{transform:translate3d(10px,-6px,0) rotate(-.7deg)}50%{transform:translate3d(18px,7px,0) rotate(.7deg)}75%{transform:translate3d(6px,13px,0) rotate(-1deg)}}@keyframes photoTwo{0%,to{transform:translateZ(0) rotate(1.5deg)}25%{transform:translate3d(-8px,8px,0) rotate(.4deg)}50%{transform:translate3d(-16px,-5px,0) rotate(-.9deg)}75%{transform:translate3d(-6px,-13px,0) rotate(.8deg)}}@keyframes photoThree{0%,to{transform:translate3d(-50%,0,0) rotate(-.8deg)}25%{transform:translate3d(calc(-50% + 8px),-6px,0) rotate(.4deg)}50%{transform:translate3d(calc(-50% - 8px),-12px,0) rotate(-.6deg)}75%{transform:translate3d(calc(-50% + 4px),5px,0) rotate(.5deg)}}.feature-card{display:flex;gap:10px;align-items:center;padding:12px 13px;border-radius:14px;border:1px solid var(--auth-border);background:var(--auth-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--auth-shadow-soft);transition:transform .2s ease,box-shadow .2s ease;will-change:transform}.feature-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 20px 48px #2563eb26;border-color:#2563eb4d}.feature-card strong{display:block;font-size:12px;font-weight:700;margin-bottom:2px}.feature-card p{margin:0;color:var(--auth-muted);font-size:11px;line-height:1.3}.feature-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto}.feature-card.blue .feature-icon{color:#2563eb;background:#2563eb1f}.feature-card.green .feature-icon{color:#16a34a;background:#16a34a1f}.feature-card.purple .feature-icon{color:#2563eb;background:#2563eb1f}.hero-illustration{position:absolute;left:40px;bottom:48px;width:clamp(260px,54%,520px);animation:floatPreview 5.5s ease-in-out infinite;will-change:transform;z-index:3}.illus-card{border-radius:20px;border:1px solid var(--auth-border);background:var(--auth-card-solid);box-shadow:var(--auth-shadow);overflow:hidden}.illus-topbar{height:48px;display:flex;align-items:center;gap:8px;padding:0 14px;border-bottom:1px solid var(--auth-border);background:var(--auth-card)}.illus-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.illus-dot.red{background:#f87171}.illus-dot.yellow{background:#fbbf24}.illus-dot.green{background:#34d399}.illus-topbar-title{font-size:11px;font-weight:700;color:var(--auth-text);margin-left:4px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.illus-chip{font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid var(--auth-border);color:var(--auth-muted);background:var(--auth-card);white-space:nowrap}.illus-chip.active{background:var(--auth-primary);color:#fff;border-color:transparent}.illus-scene{padding:12px}.road-bg{height:240px;border-radius:12px;position:relative;overflow:hidden;background:linear-gradient(90deg,#0f172aeb,#334155c2),linear-gradient(180deg,#cbd5e1,#94a3b8 44%,#334155 45%,#111827)}.road-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0 20%,rgba(255,255,255,.16) 20% 21%,transparent 21% 39%,rgba(255,255,255,.16) 39% 40%,transparent 40%),repeating-linear-gradient(90deg,rgba(255,255,255,.16) 0 20px,transparent 20px 46px);opacity:.35}.lane{position:absolute;bottom:-20px;width:8px;height:320px;background:#ffffff59;transform:rotate(12deg);border-radius:999px}.lane-1{left:35%}.lane-2{left:52%}.lane-3{left:68%}.object{position:absolute;border-radius:10px;display:flex;align-items:flex-start;justify-content:center;padding-top:6px;font-size:10px;font-weight:800;color:#fff}.object span{padding:3px 7px;border-radius:999px;background:#0f172ab8}.car{border:2px solid #3b82f6;background:#3b82f647;box-shadow:0 0 0 4px #3b82f621}.car-large{left:6%;bottom:20%;width:30%;height:38%}.car-small{left:30%;bottom:36%;width:18%;height:26%}.person-mask{left:38%;bottom:5%;width:12%;height:72%;border:2px solid #3b82f6;background:#3b82f657;border-radius:50% 50% 30% 30%/40% 40% 20% 20%}.bike-mask{right:5%;bottom:5%;width:24%;height:52%;border:2px solid #f59e0b;background:#f59e0b57;border-radius:40% 60% 50% 50%/50% 50% 60% 40%}.tree-mask{position:absolute;right:3%;top:5%;width:20%;height:36%;background:#22c55e57;border:2px solid #22c55e;border-radius:49% 51% 42% 58%/56% 44%}.illus-stats{display:flex;gap:0;border-top:1px solid var(--auth-border)}.illus-stat{flex:1;padding:10px 14px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--auth-border)}.illus-stat:last-child{border-right:none}.illus-stat-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--auth-muted)}.illus-stat-value{font-size:14px;font-weight:800;color:var(--auth-text)}.illus-stat-value.blue,.illus-stat-value.purple{color:#3b82f6}.illus-stat-value.green{color:#22c55e}.illus-badge{position:absolute;top:-18px;right:16px;display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--auth-border);background:var(--auth-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--auth-shadow-soft);font-size:11px;font-weight:700;color:var(--auth-success);white-space:nowrap}.illus-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--auth-success);animation:pulse 1.8s ease-in-out infinite}.auth-floating-photos{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden;contain:paint}.auth-photo-card{position:absolute;border-radius:16px;padding:0;border:none;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:hidden;will-change:transform}.auth-photo-card img{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}.auth-photo-card:hover{animation-play-state:paused}.auth-photo-card.photo-one{left:28px;top:calc(392px + (100vh - 492px)/2);width:clamp(210px,23vw,290px);height:clamp(148px,16vw,200px);animation:photoOne 10s ease-in-out infinite}.auth-photo-card.photo-two{left:calc(50vw - clamp(195px,21vw,265px) - 28px);top:calc(398px + (100vh - 492px)/2);width:clamp(195px,21vw,265px);height:clamp(138px,15vw,188px);animation:photoTwo 11s ease-in-out infinite .45s}.auth-photo-card.photo-three{left:50%;bottom:16px;width:clamp(180px,19vw,240px);height:clamp(112px,13vw,155px);animation:photoThree 10.5s ease-in-out infinite .9s}.auth-panel{min-height:100vh;display:grid;place-items:center;padding:64px 48px}.auth-card{width:min(100%,480px);padding:48px;border-radius:24px;border:1px solid var(--auth-border);background:var(--auth-card);box-shadow:var(--auth-shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.auth-header{text-align:center;margin-bottom:30px}.auth-header h2{margin:0;font-size:32px;line-height:1.05;letter-spacing:-.05em}.auth-header p{margin:12px auto 0;color:var(--auth-muted);line-height:1.55;font-size:14px;max-width:360px}.auth-form{display:grid;gap:18px}.auth-button-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-error{padding:12px 14px;border-radius:12px;background:#dc26261a;color:var(--auth-error);border:1px solid rgba(220,38,38,.18);font-size:13px;font-weight:650}.form-row{display:grid;gap:8px}.form-row label{font-size:13px;font-weight:700}.input-wrap{min-height:52px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:12px;border:1px solid var(--auth-border);background:#ffffff94;color:var(--auth-muted);transition:.2s ease}.dark .input-wrap,body.dark .input-wrap,[data-theme=dark] .input-wrap{background:#02061752}.input-wrap:focus-within{border-color:#2563ebbf;box-shadow:0 0 0 4px #2563eb1f}.input-wrap input{width:100%;border:0;outline:0;background:transparent;color:var(--auth-text);font:inherit;min-width:0}.input-wrap input::placeholder{color:#94a3b8}.password-eye{border:0;background:transparent;color:var(--auth-muted);cursor:pointer;display:grid;place-items:center;padding:4px}.field-hint{margin:0;font-size:12px}.field-hint.danger{color:var(--auth-error)}.auth-options{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--auth-muted);font-size:14px}.remember{display:flex;align-items:center;gap:9px;cursor:pointer}.remember input{width:16px;height:16px;accent-color:var(--auth-primary)}.link-button,.auth-footer button,.back-link{border:0;background:transparent;color:var(--auth-primary);font:inherit;font-weight:700;cursor:pointer;padding:0}.auth-primary,.auth-secondary{min-height:52px;width:100%;border-radius:12px;font-size:14px;font-weight:800;cursor:pointer;transition:.2s ease}.auth-primary{border:0;color:#fff;background:linear-gradient(135deg,var(--auth-primary),#1e40af);box-shadow:0 12px 28px #2563eb47}.auth-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px #2563eb57}.auth-primary:disabled{opacity:.65;cursor:not-allowed}.auth-secondary{border:1px solid rgba(37,99,235,.45);background:transparent;color:var(--auth-text);display:inline-flex;align-items:center;justify-content:center;gap:8px}.auth-secondary:hover{background:var(--auth-primary-soft)}.auth-footer{margin:2px 0 0;text-align:center;color:var(--auth-muted);font-size:14px}.success-state{display:grid;gap:22px}.success-icon{margin:0 auto;color:var(--auth-success)}.danger-icon{margin:0 auto;color:var(--auth-error)}.back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px}@media (max-width: 1480px){html,body,#root{height:auto;min-height:100%;overflow-x:hidden}body{overflow-y:scroll}.auth-page{grid-template-columns:1fr;overflow-x:hidden;height:auto;min-height:100dvh}.auth-hero{min-height:auto;padding:36px 32px 34px;border-right:0;border-bottom:1px solid var(--auth-border);display:grid;grid-template-columns:1fr;grid-template-areas:"brand" "copy" "features" "photos";align-items:start;gap:20px;overflow:visible}.brand{grid-area:brand;justify-self:start}.hero-copy{grid-area:copy;justify-self:center;width:min(560px,100%);max-width:min(560px,100%);margin-top:0;padding:22px 26px;z-index:8}.hero-copy h1{font-size:clamp(30px,4.1vw,48px)}.feature-list,.feature-list-forgot{grid-area:features;position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));width:min(680px,100%);justify-self:center;gap:14px 18px;z-index:6}.feature-list .feature-card:nth-child(3),.feature-list-forgot .feature-card:nth-child(3){grid-column:1 / -1;justify-self:center;width:min(360px,100%)}.auth-floating-photos{grid-area:photos;position:relative;inset:auto;display:block;justify-self:center;width:min(700px,100%);height:360px;padding:12px;overflow:hidden;border-radius:28px;z-index:4}.auth-photo-card{padding:6px;border-radius:20px}.auth-photo-card img{border-radius:15px}.auth-photo-card.photo-one{left:2%;right:auto;top:34px;bottom:auto;width:min(290px,39%);height:clamp(130px,20vw,170px);animation:photoOne 10s ease-in-out infinite}.auth-photo-card.photo-two{left:auto;right:2%;top:34px;bottom:auto;width:min(275px,37%);height:clamp(124px,19vw,160px);animation:photoTwo 11s ease-in-out infinite .45s}.auth-photo-card.photo-three{left:50%;right:auto;top:auto;bottom:16px;width:min(255px,34%);height:clamp(108px,17vw,138px);animation:photoThree 10.5s ease-in-out infinite .9s}.auth-panel{min-height:auto;padding:44px 24px 64px}.auth-card{width:min(640px,100%)}.road-bg{height:200px}}@media (max-width: 800px){html,body,#root{width:100%;max-width:100vw;overflow-x:hidden}.auth-page{display:flex;flex-direction:column;min-height:100dvh;height:auto;width:100%;max-width:100vw;overflow-x:hidden}.auth-page *{max-width:100%;box-sizing:border-box}.auth-hero{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%;padding:14px 12px 18px;gap:10px;overflow:hidden;border-right:0;border-bottom:1px solid var(--auth-border);grid-template-areas:none;grid-template-columns:none}.brand,.hero-copy,.feature-list,.feature-list-forgot,.auth-floating-photos{grid-area:unset;justify-self:unset;align-self:unset}.brand{width:calc(100% - 54px);max-width:calc(100% - 54px);font-size:15px;white-space:nowrap}.brand-logo{width:28px;height:28px;flex:0 0 28px}.theme-toggle-corner{position:absolute;top:10px;right:10px;width:38px;height:38px}.hero-copy{width:100%;max-width:100%;margin:0;padding:14px 16px;border-radius:16px}.hero-copy h1{font-size:clamp(25px,7.4vw,32px);line-height:1.08}.hero-copy p{margin-top:8px;font-size:12px;line-height:1.45}.feature-list,.feature-list-forgot{position:static!important;inset:auto!important;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:8px!important;grid-template-columns:none!important}.feature-list .feature-card:nth-child(3),.feature-list-forgot .feature-card:nth-child(3){grid-column:unset!important;justify-self:unset!important;width:100%!important;max-width:100%!important}.feature-card{width:100%!important;max-width:100%!important;min-width:0!important;padding:9px 10px;border-radius:12px;gap:9px}.feature-icon{width:30px;height:30px;flex:0 0 30px}.auth-panel{width:100%;max-width:100%;padding:22px 12px 40px;display:block;min-height:auto}.auth-card{width:100%;max-width:100%;margin:0;padding:24px 18px;border-radius:18px}.auth-header{margin-bottom:22px}.auth-header h2{font-size:25px}.auth-header p{max-width:100%;font-size:13px}.auth-form{gap:14px;width:100%}.form-row,.input-wrap{width:100%;max-width:100%}.input-wrap{min-height:48px;padding:0 12px}.auth-button-row{grid-template-columns:1fr;width:100%}.auth-primary,.auth-secondary{min-height:48px;width:100%}.auth-floating-photos,.hero-illustration,.ai-card,.classes-card,.reset-visual{display:none}}@media (max-width: 640px){.auth-hero{padding:20px 14px 18px;gap:12px}.brand{font-size:16px}.brand-logo{width:30px;height:30px}.hero-copy{padding:14px 16px;border-radius:16px}.hero-copy h1{font-size:clamp(24px,8vw,34px)}.auth-panel{padding:24px 14px 40px}.auth-card{padding:24px 18px;border-radius:20px}.auth-header{margin-bottom:24px}.auth-header h2{font-size:26px}.theme-toggle-corner{top:16px;right:14px;width:40px;height:40px}}@media (max-width: 380px){.auth-hero,.auth-panel{padding-inline:10px}.hero-copy{padding:13px 14px}.hero-copy h1{font-size:clamp(23px,7vw,29px)}.auth-card{padding:22px 14px}.auth-header h2{font-size:22px}.theme-toggle-corner{top:12px;right:12px}}@media (max-height: 760px) and (min-width: 801px){.auth-panel{padding-top:32px;padding-bottom:48px}}.layout{display:flex;height:100vh;background:var(--bg-base);overflow:hidden;min-width:0}.sidebar{width:52px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border);overflow:hidden;position:relative;z-index:50;transition:width .28s cubic-bezier(.4,0,.2,1)}.layout.sidebar-open .sidebar{width:220px}.sidebar-top{flex-shrink:0;height:52px;display:flex;align-items:center;justify-content:center;padding:0;border-bottom:1px solid var(--border);gap:6px}.layout.sidebar-open .sidebar-top{justify-content:flex-start;padding:0 13px}.sidebar-logos{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0}.logo-small{display:flex;pointer-events:none}.logo-wide{display:none;opacity:0;pointer-events:none;white-space:nowrap}.layout.sidebar-open .sidebar-logos{width:auto;flex:1;justify-content:flex-start}.layout.sidebar-open .logo-small{display:none}.layout.sidebar-open .logo-wide{display:flex;opacity:1}.pin-btn{flex-shrink:0;width:24px;height:24px;display:none;align-items:center;justify-content:center;border:none;border-radius:5px;background:none;color:var(--text-secondary);cursor:pointer;opacity:0;transform:scale(.8);transition:opacity .18s ease .08s,transform .18s ease .08s,background .14s,color .14s;padding:0}.pin-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.layout.sidebar-open .pin-btn{display:flex;opacity:1;transform:scale(1)}.sidebar-nav{flex:1;display:flex;flex-direction:column;padding:8px 0;gap:2px;overflow-y:auto}.layout.sidebar-open .sidebar-nav{padding:8px 7px}.sidebar-link{display:flex;align-items:center;height:36px;padding:0;border-radius:7px;font-size:13px;font-weight:500;color:var(--text-secondary);text-decoration:none;border:none;background:none;cursor:pointer;width:100%;text-align:left;white-space:nowrap;overflow:hidden;transition:background .13s,color .13s;flex-shrink:0;gap:0;justify-content:center}.layout.sidebar-open .sidebar-link{padding:0 7px;justify-content:flex-start}.sidebar-link:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-link.active{background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}.sidebar-link.no-hover:hover{background:none;cursor:default}.link-icon{flex-shrink:0;width:52px;height:36px;display:flex;align-items:center;justify-content:center}.layout.sidebar-open .link-icon{width:36px}.link-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translate(-8px);transition:opacity .2s ease .07s,transform .2s ease .07s;pointer-events:none;margin-top:1px}.layout.sidebar-open .link-label{opacity:1;transform:translate(0)}.sidebar-bottom{flex-shrink:0;padding:8px 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.layout.sidebar-open .sidebar-bottom{padding:8px 7px}.user-row{position:relative;gap:10px}.user-avatar-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;transition:opacity .15s}.user-avatar-btn:hover{opacity:.8}.user-avatar-img{width:26px;height:26px;border-radius:50%;object-fit:cover;border:1.5px solid var(--border);display:block}.user-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-name{font-size:12px;font-weight:600;color:var(--text-primary)}.logout-btn{flex-shrink:0;margin-left:auto;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;border:none;background:none;color:var(--text-secondary);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s,background .13s,color .13s;padding:0}.logout-btn:hover{background:var(--sidebar-hover);color:var(--danger)}.layout.sidebar-open .logout-btn{opacity:1;pointer-events:auto}.layout:not(.sidebar-open) .user-row{display:none}.collapsed-user{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px 0}.layout:not(.sidebar-open) .collapsed-user{display:flex}.layout.sidebar-open .collapsed-user{display:none}.logout-btn-collapsed{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;border:none;background:none;color:var(--text-secondary);cursor:pointer;padding:0;transition:background .13s,color .13s}.logout-btn-collapsed:hover{background:var(--sidebar-hover);color:var(--danger)}.content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-width:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.content::-webkit-scrollbar{width:6px}.content::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.content::-webkit-scrollbar-track{background:transparent}.collapsed-lang{display:none;align-items:center;justify-content:center}.layout:not(.sidebar-open) .collapsed-lang{display:flex}.layout.sidebar-open .collapsed-lang,.sidebar-lang-open{display:none}.expanded-user-row{cursor:pointer;display:none}.layout.sidebar-open .expanded-user-row{display:flex}.expanded-user-row:hover{background:var(--sidebar-hover)!important;color:var(--text-primary)!important;cursor:pointer!important}.expanded-logout-row{display:none;color:var(--text-secondary)}.layout.sidebar-open .expanded-logout-row{display:flex}.expanded-logout-row:hover{background:var(--sidebar-hover)!important;color:var(--danger)!important;cursor:pointer!important}.lang-toggle{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--border, rgba(148, 163, 184, .25));border-radius:6px;padding:3px 8px;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--text-secondary, #94a3b8);transition:border-color .15s,background .15s,color .15s;line-height:1;white-space:nowrap}.lang-toggle:hover{border-color:var(--accent, #3b82f6);background:var(--bg-secondary, rgba(59, 130, 246, .06));color:var(--accent, #3b82f6)}.lang-label{color:var(--accent, #3b82f6);font-weight:800}.lang-toggle.sidebar-lang{display:flex;width:100%;justify-content:flex-start;border:none;padding:5px 10px;font-size:13px;gap:8px}.lang-toggle.collapsed-lang-toggle{width:52px;justify-content:center;border:none;border-radius:0;padding:6px 0}.s3browser{display:flex;flex-direction:column;height:100%;background:var(--bg-panel);border-right:1px solid var(--border);overflow:hidden}.s3-header{display:flex;align-items:center;justify-content:space-between;padding:0 12px;height:52px;min-height:52px;max-height:52px;flex-shrink:0;border-bottom:1px solid var(--border);box-sizing:border-box}.s3-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-secondary)}.s3-actions{display:flex;gap:4px}.s3-folders,.s3-files{flex:1;overflow-y:auto;padding:6px}.s3-folder-item,.s3-file-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border-radius:6px;background:none;border:none;color:var(--text-primary);font-size:12px;text-align:left;cursor:pointer;transition:background .12s}.s3-folder-item:hover{background:var(--border)}.s3-file-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border-left:2px solid var(--accent);padding-left:8px}.s3-folder-item svg,.s3-file-item svg{color:var(--accent);flex-shrink:0}.s3-folder-item span:first-of-type{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s3-folder-item>svg:last-child{color:var(--text-secondary);margin-left:auto}.s3-filename{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s3-size{font-size:10px;color:var(--text-secondary);flex-shrink:0}.s3-breadcrumb{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.s3-back{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;gap:2px}.s3-current{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s3-search{margin:8px;width:calc(100% - 16px);font-size:12px;padding:5px 8px}.s3-empty{padding:24px 12px;text-align:center;font-size:12px;color:var(--text-secondary)}.spin{animation:spin .8s linear infinite}.upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:8px}.upload-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:28px 32px;min-width:220px;display:flex;flex-direction:column;align-items:center;gap:10px}.upload-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.upload-title{font-weight:600;font-size:14px}.upload-file{font-size:11px;color:var(--text-secondary);max-width:180px;text-align:center;word-break:break-all}.upload-count{font-family:var(--font-mono);font-size:12px;color:var(--accent)}.upload-bar-track{width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.upload-bar-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .2s}.s3-file-item.selected{background:color-mix(in srgb,var(--accent) 15%,transparent)}.s3-file-pending{opacity:.35;cursor:not-allowed!important}.s3-file-pending:hover{background:transparent!important}.s3-file-broken{opacity:.85;cursor:not-allowed!important;color:var(--danger)}.s3-file-broken svg{color:var(--danger)!important}.s3-file-broken .s3-size{color:var(--danger)}.s3-file-broken:hover{background:color-mix(in srgb,var(--danger) 10%,transparent)!important;border-left:2px solid var(--danger);padding-left:8px}.s3-user-row{align-items:center;gap:8px;padding:8px 10px;height:auto;min-height:38px}.s3-user-info{display:flex;flex-direction:column;flex:1;min-width:0;text-align:left}.s3-user-name{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s3-user-email{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s3-folder-count{font-size:10px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border-radius:10px;padding:1px 7px;font-weight:700;flex-shrink:0}.s3-folder-row{display:flex;align-items:center;gap:0;position:relative}.s3-folder-row .s3-folder-item{flex:1;min-width:0}.s3-folder-menu-btn{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;border-radius:6px;color:var(--text-secondary);opacity:0;transition:opacity .15s,background .12s;margin-right:4px}.s3-folder-row:hover .s3-folder-menu-btn,.s3-tree-folder-row:hover .s3-folder-menu-btn{opacity:1}.s3-folder-menu-btn:hover{background:var(--border);color:var(--text-primary)}.s3-tree-group{display:flex;flex-direction:column}.s3-user-row-expanded{background:color-mix(in srgb,var(--accent) 6%,transparent)!important}.s3-tree-children{display:flex;flex-direction:column;background:color-mix(in srgb,var(--accent) 2%,transparent);border-bottom:1px solid var(--border)}.s3-tree-folder-row{display:flex;align-items:center;position:relative;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.s3-tree-folder-row:last-child{border-bottom:none}.s3-tree-folder-item{display:flex;align-items:center;gap:6px;padding:7px 4px;border:none;background:none;cursor:pointer;font-family:var(--font-body);transition:background .12s;flex:1;min-width:0;text-align:left}.s3-tree-folder-item:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.s3-tree-folder-name{font-size:12px;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s3-tree-line{display:inline-flex;align-items:center;flex-shrink:0;width:28px;height:28px;position:relative}.s3-tree-v{display:block;position:absolute;left:13px;top:-50%;bottom:50%;width:1.5px;background:var(--border)}.s3-tree-v-last{bottom:50%}.s3-tree-h{display:block;position:absolute;left:13px;top:50%;width:11px;height:1.5px;background:var(--border)}.label-dialog{width:380px}.existing-labels{margin-bottom:4px}.section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);margin-bottom:10px}.label-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:130px;overflow-y:auto}.label-chip{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;background:transparent;border:1.5px solid var(--chip-color, var(--border));color:var(--text-primary);font-size:12px;cursor:pointer;transition:background .12s}.label-chip:hover{background:color-mix(in srgb,var(--chip-color, var(--accent)) 15%,transparent)}.chip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.field-error{font-size:11px;color:var(--danger);margin-top:4px;display:block}input.error{border-color:var(--danger)!important}.color-row{display:flex;align-items:center;gap:10px}.color-hex{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.ann-page{display:flex;height:100%;overflow:hidden;min-width:900px}.ann-left{width:220px;min-width:180px;max-width:280px;display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.ann-center{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.ann-toolbar{display:flex;align-items:center;gap:4px;padding:0 10px;height:52px;min-height:52px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden;box-sizing:border-box}.toolbar-group{display:flex;align-items:center;gap:3px;flex-shrink:0}.toolbar-sep{width:1px;height:22px;background:var(--border);margin:0 4px;flex-shrink:0}.toolbar-count{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);min-width:48px;text-align:center}.toolbar-info{display:flex;align-items:center;gap:10px;margin-left:auto;overflow:hidden;min-width:0;flex-shrink:1}.filename{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.dcm-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;background:#e67e2226;color:var(--warn);white-space:nowrap}.ann-canvas-wrap{flex:1;overflow:hidden;position:relative}.ann-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:14px;color:var(--text-secondary)}.ann-empty p{font-size:13px;max-width:240px;text-align:center;line-height:1.6}.ann-canvas-stage{position:relative;width:100%;height:100%}.ann-canvas-placeholder{width:100%;height:100%;background:var(--bg-panel)}.ann-canvas-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#080a1247}.canvas-loading-text{font-size:12px;color:var(--text-secondary)}.btn-disabled{opacity:.45;filter:grayscale(1);cursor:not-allowed;background:var(--bg-surface);border-color:var(--border);color:var(--text-secondary)}.ann-right{width:200px;min-width:160px;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--bg-panel);overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 12px;height:52px;min-height:52px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--text-secondary);border-bottom:1px solid var(--border);flex-shrink:0;box-sizing:border-box}.badge{background:var(--accent);color:#fff;border-radius:10px;padding:0 6px;font-size:10px;font-weight:700;min-width:18px;text-align:center}.label-list{overflow-y:auto;padding:6px;flex:1}.label-row{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;font-size:12px;cursor:default}.label-row:hover{background:var(--border)}.label-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.label-count{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--text-secondary)}.panel-empty{padding:20px 12px;font-size:11px;color:var(--text-secondary);text-align:center;line-height:1.6}.ann-list{overflow-y:auto;flex:1;padding:4px}.ann-item{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:5px;font-size:11px}.ann-item:hover{background:var(--border)}.ann-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ann-coords{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary)}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.prefetch-bar{display:inline-flex;width:80px;height:4px;background:var(--border);border-radius:2px;overflow:hidden;flex-shrink:0}.prefetch-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.dl-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200}.dl-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;padding:36px 40px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;box-shadow:0 20px 60px #0000004d;min-width:220px;max-width:320px;width:100%}.dl-label{font-size:13px;color:var(--text-secondary);text-align:center;width:100%;font-weight:500}.panel-loading{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .15s}.toolbar-loading button,.toolbar-loading label{pointer-events:none;opacity:.5}.brush-row{display:flex;align-items:center;gap:10px;padding:4px 6px}.brush-label{font-size:11px;color:var(--text-secondary);white-space:nowrap;line-height:1;display:flex;align-items:center}.brush-slider-wrap{width:90px;display:flex;align-items:center}.brush-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:14px;margin:0;padding:0;background:transparent;border:none;outline:none;box-shadow:none}.brush-slider:focus,.brush-slider:active{outline:none;box-shadow:none}.brush-slider::-webkit-slider-runnable-track{height:4px;background:var(--border);border:none;border-radius:999px;box-shadow:none}.brush-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;border:none;box-shadow:none;background:var(--accent);cursor:pointer}.brush-slider::-moz-range-track{height:4px;background:var(--border);border:none;border-radius:999px;box-shadow:none}.brush-slider::-moz-range-progress{height:4px;background:var(--accent);border-radius:999px;border:none}.brush-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;border:none;box-shadow:none;background:var(--accent);cursor:pointer}.brush-val{min-width:26px;font-family:var(--font-mono);font-size:11px;color:var(--text-primary);line-height:1;display:flex;align-items:center;justify-content:flex-end}.panel-disabled{pointer-events:none;opacity:.55;-webkit-user-select:none;user-select:none}.dl-modal .btn{justify-content:center;width:100%;text-align:center}.shortcuts-page{display:flex;align-items:flex-start;justify-content:center;padding:32px 24px;overflow-y:auto;height:100%;background:var(--bg-base)}.shortcuts-card{width:100%;max-width:640px;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:28px;box-shadow:var(--shadow)}.sc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.sc-title{display:flex;align-items:center;gap:10px}.sc-title h1{font-family:var(--font-mono);font-size:18px;font-weight:700}.sc-title svg{color:var(--accent)}.sc-actions{display:flex;gap:8px}.sc-tabs{display:flex;gap:0;margin-bottom:20px;border:1px solid var(--border);border-radius:8px;overflow:hidden;width:fit-content}.sc-tab{padding:7px 20px;background:transparent;border:none;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s}.sc-tab:hover{color:var(--text-primary);background:var(--border)}.sc-tab.active{background:var(--accent);color:#fff}.sc-grid{display:flex;flex-direction:column;gap:8px}.sc-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;background:var(--bg-panel);border:1px solid var(--border);gap:16px}.sc-label{font-size:13px;flex:1}.key-input-wrap{display:flex;align-items:center;gap:8px;flex-shrink:0}.key-input-wrap.recording kbd{border-color:var(--accent);color:var(--accent);animation:blink .8s step-end infinite}.key-input-wrap.conflict kbd{border-color:var(--danger);color:var(--danger)}@keyframes blink{50%{opacity:.4}}kbd{display:inline-block;min-width:90px;padding:4px 10px;border:1.5px solid var(--border);border-radius:6px;font-family:var(--font-mono);font-size:12px;text-align:center;cursor:pointer;background:var(--bg-surface);color:var(--text-primary);transition:border-color .15s}kbd:hover{border-color:var(--accent)}kbd:focus{outline:none;border-color:var(--accent)}.key-conflict{font-size:10px;color:var(--danger);font-weight:600}.sc-hint{margin-top:20px;padding:12px 14px;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;font-size:11px;color:var(--text-secondary);line-height:1.7}.sc-loading{padding:40px;text-align:center;color:var(--text-secondary)}.key-capture-input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;border:none;padding:0}.key-input-wrap{position:relative;display:flex;align-items:center;gap:8px;cursor:pointer}.sc-conflict-banner{display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--danger) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:12px}.manual-page{display:flex;height:100%;min-height:100vh;background:var(--bg-base, #0f172a);color:var(--text-primary, #e2e8f0);overflow:hidden}.manual-toc{width:260px;flex:0 0 260px;padding:24px 16px;background:var(--bg-surface, #111827);border-right:1px solid var(--border, #273447);overflow-y:auto}.manual-toc-title{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent, #4f8ef7)}.manual-toc a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--text-secondary, #94a3b8);text-decoration:none;font-size:13px;transition:background .15s,color .15s,transform .15s}.manual-toc a:hover{background:var(--bg-panel, #182235);color:var(--text-primary, #e2e8f0);transform:translate(2px)}.manual-toc svg,.manual-section-icon svg,.manual-feature-grid svg,.manual-title svg{color:var(--accent, #4f8ef7)}.manual-content{flex:1;padding:32px 24px 80px;overflow-y:auto}.manual-hero,.manual-card{width:100%;max-width:900px;margin:0 auto 24px;background:var(--bg-surface, #111827);border:1px solid var(--border, #273447);border-radius:14px;box-shadow:var(--shadow, 0 14px 40px rgba(0, 0, 0, .25))}.manual-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent, #4f8ef7) 20%,transparent),transparent 32%),var(--bg-surface, #111827)}.manual-kicker{display:inline-block;margin-bottom:10px;font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;color:var(--accent, #4f8ef7);text-transform:uppercase;letter-spacing:.14em;font-weight:700}.manual-hero h1{margin:0 0 8px;font-size:clamp(32px,6vw,58px);line-height:1;letter-spacing:-.04em}.manual-hero p,.manual-section-header p,.manual-card p,.manual-zone-grid p,.manual-feature-grid p{color:var(--text-secondary, #94a3b8)}.manual-hero-icon{place-items:center}.manual-card{padding:28px}.manual-card h2{margin-top:2rem}.manual-section-header{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border, #273447)}.manual-section-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--bg-panel, #182235);border:1px solid var(--border, #273447);font-size:20px}.manual-section-header h2{margin:0;font-size:22px;font-family:var(--font-mono, ui-monospace, monospace)}.manual-section-header p{margin:4px 0 0}.manual-card h3{margin:24px 0 12px;font-size:16px}.manual-feature-grid,.manual-zone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.manual-feature-grid article,.manual-zone-grid article{background:var(--bg-panel, #182235);border:1px solid var(--border, #273447);border-radius:12px;padding:16px}.manual-feature-grid svg{font-size:22px;margin-bottom:10px}.manual-feature-grid h3,.manual-zone-grid strong{margin:0 0 6px;font-size:14px}.manual-feature-grid p,.manual-zone-grid p{margin:0;font-size:13px;line-height:1.6}.manual-callout{display:flex;gap:12px;margin:18px 0;padding:14px 16px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent, #4f8ef7) 28%,transparent);background:color-mix(in srgb,var(--accent, #4f8ef7) 10%,transparent)}.manual-callout svg{flex:0 0 auto;margin-top:2px;color:var(--accent, #4f8ef7)}.manual-callout p{margin:4px 0 0;font-size:13px;line-height:1.6}.manual-callout.warning{border-color:color-mix(in srgb,var(--danger, #ef4444) 36%,transparent);background:color-mix(in srgb,var(--danger, #ef4444) 10%,transparent)}.manual-callout.warning svg{color:var(--danger, #ef4444)}.manual-callout.tip{border-color:color-mix(in srgb,#10b981 36%,transparent);background:color-mix(in srgb,#10b981 10%,transparent)}.manual-callout.tip svg{color:#10b981}.manual-steps{display:grid;gap:10px;padding:0;margin:18px 0;list-style:none}.manual-steps li{display:flex;gap:12px;padding:12px;border-radius:10px;background:var(--bg-panel, #182235);border:1px solid var(--border, #273447);align-items:center}.manual-step-num{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:999px;background:var(--accent, #4f8ef7);color:#fff;font-weight:700;font-size:13px}.manual-steps p{margin:4px 0 0;font-size:13px}.manual-table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:10px;border:1px solid var(--border, #273447);margin:12px 0 20px}.manual-table th,.manual-table td{padding:11px 14px;border-bottom:1px solid var(--border, #273447);text-align:left;font-size:13px}.manual-table th{color:var(--text-secondary, #94a3b8);background:var(--bg-panel, #182235);text-transform:uppercase;font-size:11px;letter-spacing:.08em}.manual-table tr:last-child td{border-bottom:0}.manual-table kbd,.manual-card kbd{display:inline-block;min-width:58px;padding:4px 9px;border-radius:6px;border:1px solid var(--border, #273447);background:var(--bg-panel, #182235);color:var(--text-primary, #e2e8f0);font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;text-align:center}.manual-browser{width:720px;max-width:100%;margin:18px auto;border:1px solid var(--border, #273447);border-radius:12px;overflow:hidden;background:#0d1422}.manual-browser svg{display:block;width:100%;height:auto}.manual-browser-bar{display:flex;align-items:center;gap:7px;padding:10px 12px;background:#121d30;border-bottom:1px solid #24334b}.manual-browser-bar>span{width:10px;height:10px;border-radius:999px;background:#ef4444}.manual-browser-bar>span:nth-child(2){background:#f59e0b}.manual-browser-bar>span:nth-child(3){background:#10b981}.manual-browser-bar div{flex:1;padding:4px 10px;border-radius:6px;background:#0a1020;color:#64748b;font-size:11px;text-align:center}.manual-login-mock,.manual-shortcuts-mock{display:grid;place-items:center;padding:42px 20px}.manual-login-card,.manual-shortcuts-card,.manual-dialog{width:min(100%,380px);padding:24px;border:1px solid #26364f;border-radius:14px;background:#151f32}.manual-brand-mark{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 12px;border-radius:12px;background:var(--accent, #4f8ef7);color:#fff;font-size:22px}.manual-login-card label{display:block;margin:12px 0 6px;font-size:11px;color:var(--accent, #4f8ef7);text-transform:uppercase;font-weight:700}.manual-input-like{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;background:#eef3ff;color:#334155;font-size:13px}.manual-login-card button,.manual-users-head button,.manual-shortcuts-head button,.manual-toolbar button,.manual-dialog button{border:1px solid var(--border, #273447);border-radius:8px;padding:8px 12px;background:transparent;color:var(--text-secondary, #94a3b8);cursor:pointer}.manual-login-card>button{width:100%;margin-top:18px;background:var(--accent, #4f8ef7);color:#fff;border:0;font-weight:700}.manual-workspace-mock,.manual-annotator-mock{display:flex;min-height:360px}.manual-app-sidebar{width:50px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:14px;background:#0d1523;border-right:1px solid #24334b}.manual-app-sidebar svg{color:#475569}.manual-app-sidebar svg.active{color:#fff;padding:8px;width:32px;height:32px;border-radius:8px;background:var(--accent, #4f8ef7)}.manual-sidebar-spacer{flex:1}.manual-avatar{width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:var(--accent, #4f8ef7);color:#fff;font-size:10px;font-weight:700}.manual-storage-panel,.manual-label-panel{width:200px;background:#131d2e;border-right:1px solid #24334b}.manual-label-panel{border-left:1px solid #24334b;border-right:0}.manual-panel-title{display:flex;align-items:center;gap:9px;padding:12px;border-bottom:1px solid #24334b;color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase}.manual-panel-title.small{margin-top:30px;justify-content:space-between}.manual-search{display:flex;align-items:center;gap:8px;margin:10px;padding:8px 10px;border:1px solid #24334b;border-radius:8px;color:#64748b;font-size:12px}.manual-search.full{margin:0 0 14px}.manual-folder,.manual-file{display:flex;align-items:center;gap:8px;padding:8px 12px;color:#94a3b8;font-size:12px}.manual-folder.active{background:#1f2b41;color:#fff}.manual-canvas-panel,.manual-image-area{flex:1;display:flex;flex-direction:column;min-width:0}.manual-toolbar{display:flex;align-items:center;gap:8px;padding:10px;background:#131d2e;border-bottom:1px solid #24334b}.manual-toolbar.compact{justify-content:center}.manual-toolbar button{display:inline-flex;align-items:center;gap:6px;font-size:12px}.manual-toolbar button.active{background:var(--accent, #4f8ef7);border-color:var(--accent, #4f8ef7);color:#fff}.manual-nav{margin-left:auto;display:inline-flex;align-items:center;gap:10px;color:#64748b;font-size:12px}.manual-canvas-empty,.manual-image-placeholder{flex:1;min-height:260px;display:grid;place-items:center;color:#334155;background:radial-gradient(circle,#1a2740 0 1px,transparent 1px) 0 0 / 18px 18px,#0d1422}.manual-label-dot{margin:12px;padding-left:18px;position:relative;color:#94a3b8;font-size:12px}.manual-label-dot:before{content:"";position:absolute;left:0;top:4px;width:10px;height:10px;border-radius:999px;background:var(--accent, #4f8ef7)}.manual-mini-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:20px}.manual-mini-flow>div{min-height:120px;display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:12px;background:#131d2e;border:1px solid #24334b}.manual-mini-flow svg{color:var(--accent, #4f8ef7);font-size:24px}.manual-mini-flow span{color:#94a3b8;font-size:12px;line-height:1.5}.manual-mini-flow i{display:block;height:8px;border-radius:999px;background:var(--accent, #4f8ef7)}.manual-image-placeholder{position:relative;margin:22px;border-radius:12px;overflow:hidden}.manual-box{position:absolute;border:2px solid var(--accent, #4f8ef7);border-radius:4px}.manual-box span{position:absolute;top:-24px;left:-2px;padding:2px 8px;border-radius:5px 5px 5px 0;background:var(--accent, #4f8ef7);color:#fff;font-size:11px}.manual-box.one{width:34%;height:30%;left:22%;top:35%}.manual-box.two{width:24%;height:20%;left:56%;top:28%;border-color:#10b981}.manual-box.two span{background:#10b981}.manual-dialog{align-self:center;margin:20px;width:270px}.manual-dialog h4{margin:0 0 12px}.manual-dialog label{display:block;margin-top:12px;color:#64748b;font-size:11px}.manual-dialog input{width:100%;margin:6px 0 12px;padding:9px 10px;border-radius:8px;border:1px solid #24334b;background:#0d1422;color:#e2e8f0}.manual-dialog .primary{background:var(--accent, #4f8ef7);color:#fff;border-color:var(--accent, #4f8ef7)}.manual-image-placeholder.mask{background:linear-gradient(135deg,#111827,#0d1422)}.manual-mask-shape{position:absolute;opacity:.55;border-radius:40% 60% 45% 55%;background:var(--accent, #4f8ef7)}.manual-mask-shape.a{width:170px;height:90px;left:28%;top:38%}.manual-mask-shape.b{width:120px;height:70px;left:52%;top:30%;background:#10b981}.manual-brush-cursor{position:absolute;width:46px;height:46px;border:2px solid #ef4444;border-radius:999px;left:46%;top:44%}.manual-shortcuts-card{width:min(100%,560px)}.manual-shortcuts-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}.manual-shortcuts-head button{margin-left:auto;display:inline-flex;align-items:center;gap:6px;background:var(--accent, #4f8ef7);color:#fff;border:0}.manual-tabs{display:inline-flex;border:1px solid #24334b;border-radius:8px;overflow:hidden;margin-bottom:14px}.manual-tabs button{padding:8px 16px;border:0;background:transparent;color:#94a3b8}.manual-tabs .active{background:var(--accent, #4f8ef7);color:#fff}.manual-sc-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid #24334b;background:#0d1422;border-radius:8px;margin-bottom:8px;font-size:13px}.manual-users-mock{padding:20px}.manual-users-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.manual-users-head h3{display:flex;align-items:center;gap:10px;margin:0}.manual-users-head button{display:inline-flex;align-items:center;gap:8px;background:var(--accent, #4f8ef7);border-color:var(--accent, #4f8ef7);color:#fff}.manual-users-mock table{width:100%;border-collapse:collapse;font-size:13px}.manual-users-mock th,.manual-users-mock td{padding:10px 12px;border-bottom:1px solid #24334b;text-align:left;color:#94a3b8}.manual-users-mock th{color:#64748b;text-transform:uppercase;font-size:11px}.manual-users-mock td svg{margin-right:8px;color:var(--accent, #4f8ef7)}.manual-theme-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.manual-theme-row div{display:flex;align-items:center;gap:10px;padding:18px;border:1px solid var(--border, #273447);border-radius:12px;background:var(--bg-panel, #182235)}.manual-theme-row svg{color:var(--accent, #4f8ef7)}.manual-list{display:grid;gap:10px;padding:0;list-style:none}.manual-list li{display:flex;align-items:center;gap:10px;color:var(--text-secondary, #94a3b8)}.manual-list svg{color:var(--accent, #4f8ef7)}@media (max-width: 980px){.manual-page{display:block;overflow:auto}.manual-toc{position:static;width:auto;display:flex;gap:8px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border, #273447)}.manual-toc-title{flex:0 0 auto;margin:0 10px 0 0}.manual-toc a{flex:0 0 auto;white-space:nowrap}.manual-content{overflow:visible;padding:20px 14px 48px}.manual-feature-grid,.manual-zone-grid,.manual-mini-flow,.manual-theme-row{grid-template-columns:1fr}.manual-workspace-mock,.manual-annotator-mock{min-height:0;overflow-x:auto}.manual-storage-panel,.manual-label-panel{min-width:180px}.manual-canvas-panel,.manual-image-area{min-width:360px}}.mock-cursor{position:absolute;width:14px;height:20px;pointer-events:none;z-index:10;opacity:0;background:#fff;clip-path:polygon(0% 0%,0% 100%,30% 73%,48% 115%,66% 108%,48% 65%,80% 65%);filter:drop-shadow(0 1px 2px rgba(0,0,0,.6));transform:translate(0);transition:transform .45s cubic-bezier(.25,.46,.45,.94),opacity .2s;top:0;left:0}.mock-cursor.clicking:after{content:"";position:absolute;left:-8px;top:-8px;width:30px;height:30px;border:2px solid var(--accent, #4f8ef7);border-radius:50%;animation:mock-ripple .38s ease-out forwards}@keyframes mock-ripple{0%{transform:scale(0);opacity:1}to{transform:scale(1.4);opacity:0}}.manual-login-card,.manual-mini-flow,.manual-annotator-mock,.manual-shortcuts-mock{position:relative}.manual-input-like.focused{border:1px solid var(--accent, #4f8ef7)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #4f8ef7) 20%,transparent)}.manual-login-card button.active-flash{background:color-mix(in srgb,var(--accent, #4f8ef7) 80%,white)!important;transform:scale(.97)}.manual-mini-flow>div{transition:background .3s,border-color .3s,transform .3s}.manual-mini-flow>div.active{background:color-mix(in srgb,var(--accent, #4f8ef7) 14%,#131d2e)!important;border-color:var(--accent, #4f8ef7)!important;transform:translateY(-2px)}.manual-mini-flow i{display:block;height:8px;border-radius:999px;background:#1e293b;overflow:hidden;position:relative;width:100%}.mock-progress-fill{display:block;height:100%;width:0%;border-radius:999px;background:var(--accent, #4f8ef7)}.manual-box{transition:opacity .3s,transform .3s}.manual-box.drawing{opacity:.5;animation:box-draw .7s cubic-bezier(.25,.46,.45,.94) forwards}.manual-box.drawn{opacity:1}@keyframes box-draw{0%{clip-path:inset(0 100% 100% 0);opacity:.3}to{clip-path:inset(0 0% 0% 0);opacity:1}}.manual-dialog{opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}.manual-dialog.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.manual-mask-shape{transition:opacity 1.2s ease,transform 1.2s ease;opacity:0;transform:scale(0)}.manual-brush-cursor{position:absolute;transition:left .6s ease,top .6s ease,opacity .3s;opacity:0}.manual-sc-row.recording{background:color-mix(in srgb,var(--accent, #4f8ef7) 12%,#0d1422)!important;border-color:var(--accent, #4f8ef7)!important}.manual-sc-row kbd.recording{color:var(--accent, #4f8ef7);border-color:var(--accent, #4f8ef7);animation:kbd-pulse .6s ease infinite alternate}@keyframes kbd-pulse{0%{opacity:.5}to{opacity:1}}.itt{opacity:0;pointer-events:none}.izone:hover .itt{opacity:1}.mock .itt{opacity:0;pointer-events:none;transition:opacity .15s ease}.mock .izone:hover .itt{opacity:1}.mock .izone:hover .ihl{fill-opacity:.08}h3 a[title]{position:relative;opacity:.5;transition:opacity .2s}h3 a[title]:hover{opacity:1}h3 a[title]:hover:after{content:attr(title);position:absolute;top:100%;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;font-size:11px;font-weight:400;padding:3px 8px;border-radius:4px;white-space:nowrap;margin-top:4px}.sp-page{height:100%;overflow-y:auto;padding:28px 20px;background:var(--bg-base)}.sp-shell{width:100%;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.sp-hero{display:flex;align-items:flex-start;gap:12px;padding:22px 24px;background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.sp-hero svg{color:var(--accent);flex-shrink:0;margin-top:3px}.sp-hero h1{font-family:var(--font-mono);font-size:20px;margin-bottom:4px}.sp-hero p{color:var(--text-secondary);margin:0}.sp-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:22px 24px}.sp-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.sp-card-head h2{display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:16px;margin-bottom:3px}.sp-card-head h2 svg{color:var(--accent)}.sp-hint{color:var(--text-secondary);font-size:13px;margin:0}.sp-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;white-space:nowrap;border:1px solid var(--border);color:var(--text-secondary);background:var(--bg-base)}.sp-pill.online{color:#0f7a3f;background:#0f7a3f1a;border-color:#0f7a3f40}.sp-pill.offline{color:#9a5b00;background:#9a5b001a;border-color:#9a5b0040}.sp-notice{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-base);color:var(--text-secondary);font-size:13px;margin-bottom:14px;flex-wrap:wrap}.sp-notice svg{flex-shrink:0}.sp-link-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--accent);font-size:13px;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}.sp-coming-soon-card{opacity:.85}.sp-sections{display:flex;flex-direction:column;gap:18px}.sp-chat-card .sp-chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;align-items:stretch}.sp-chat-main{min-width:0}.sp-chat-window{height:360px;overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:var(--bg-base);padding:12px;display:flex;flex-direction:column;gap:10px}.sp-empty{height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:13px;text-align:center}.sp-bubble{width:auto;max-width:min(85%,520px);min-width:0;padding:9px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-surface);overflow-wrap:anywhere;word-break:break-word}.sp-bubble.mine{align-self:flex-end;border-color:#4a90e24d}.sp-bubble.theirs{align-self:flex-start}.sp-bubble.system{align-self:center;max-width:92%;background:transparent;border-style:dashed;color:var(--text-secondary)}.sp-bubble-meta{display:flex;justify-content:space-between;gap:10px;font-size:10px;font-weight:800;color:var(--text-secondary);margin-bottom:5px;min-width:0;overflow-wrap:anywhere}.sp-bubble p{white-space:pre-wrap;line-height:1.45;margin:0;font-size:13px;overflow-wrap:anywhere;word-break:break-word}.sp-chat-form{display:none}.sp-chat-form textarea{width:100%;resize:vertical}.sp-chat-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sp-history-panel{border:1px solid var(--border);border-radius:12px;background:var(--bg-base);padding:12px;display:flex;flex-direction:column;gap:8px;width:220px;overflow-y:auto;flex:1;min-height:0}.sp-history-col{display:flex;flex-direction:column;gap:8px}.sp-history-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.sp-history-head span{display:flex;align-items:center;gap:5px}.sp-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.sp-icon-btn:hover{color:var(--accent);border-color:var(--accent)}.sp-history-list{display:flex;flex-direction:column;gap:6px;padding-right:4px}.sp-history-panel::-webkit-scrollbar{width:4px}.sp-history-panel::-webkit-scrollbar-track{background:transparent}.sp-history-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.sp-history-panel::-webkit-scrollbar-thumb:hover{background:var(--accent)}.sp-history-item{display:flex;align-items:center;gap:6px;width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--bg-surface);cursor:pointer;text-align:left;overflow:hidden;min-width:0;min-height:56px}.sp-history-item:hover,.sp-history-item.active{border-color:var(--accent);background:#4a90e212}.sp-history-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;overflow:hidden}.sp-history-item-info strong{font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.sp-history-item-info small{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.sp-history-delete-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid transparent;border-radius:6px;background:none;color:var(--text-secondary);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,border-color .15s,background .15s}.sp-history-item:hover .sp-history-delete-btn,.sp-history-item.active .sp-history-delete-btn{opacity:1}.sp-history-delete-btn:hover{color:var(--danger, #e53e3e);border-color:color-mix(in srgb,var(--danger, #e53e3e) 30%,transparent);background:color-mix(in srgb,var(--danger, #e53e3e) 10%,transparent)}.sp-history-delete-btn:disabled{cursor:default;opacity:.5}.sp-exit-history-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;font-size:12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;white-space:nowrap;width:100%}.sp-exit-history-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sp-form{display:flex;flex-direction:column;gap:16px}.sp-field{display:flex;flex-direction:column;gap:6px}.sp-field label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.sp-field input,.sp-field textarea{width:100%}.sp-field textarea{min-height:160px;resize:vertical}.sp-form-actions{display:flex;justify-content:flex-end}.sp-email-link{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-base);color:var(--text-primary);text-decoration:none;width:100%;box-sizing:border-box}.sp-email-link:hover{border-color:var(--accent)}.sp-email-link svg{color:var(--accent);flex-shrink:0}.sp-email-link strong,.sp-email-link small{display:block}.sp-email-link small{color:var(--accent);font-weight:700;margin-top:2px}.sp-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.sp-admin-panel{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-base)}.sp-admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:13px;font-weight:800;font-family:var(--font-mono)}.sp-admin-panel-head>span:first-child{display:flex;align-items:center;gap:6px}.sp-config-tag{font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid}.sp-config-tag.ok{color:#0f7a3f;border-color:#0f7a3f4d;background:#0f7a3f14}.sp-config-tag.bad{color:#9a5b00;border-color:#9a5b004d;background:#9a5b0014}.sp-admin-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary);margin:0 0 5px}.sp-btn-group{display:flex;flex-wrap:wrap;gap:6px}.sp-schedule-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.sp-schedule-field{display:flex;flex-direction:column;gap:5px}.sp-schedule-field label{font-size:11px;font-weight:800;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.sp-schedule-field input{width:80px;height:36px}.sp-day-row{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.sp-day-btn{padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--bg-surface);color:var(--text-secondary);font-size:11px;font-weight:800;cursor:pointer}.sp-day-btn.on{color:var(--accent);border-color:var(--accent);background:#4a90e21a}.sp-admin-info{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:var(--text-secondary);margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.sp-admin-info strong{color:var(--text-primary)}.sp-config-check{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sp-check-btn{padding:2px 8px;font-size:11px;font-weight:700;border:1px solid var(--border);border-radius:6px;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.sp-check-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sp-check-btn:disabled{opacity:.5;cursor:default}.sp-check-result{font-size:12px;font-weight:600;padding:6px 10px;border-radius:8px;margin-top:6px;border:1px solid}.sp-check-result.ok{color:#0f7a3f;background:#0f7a3f14;border-color:#0f7a3f40}.sp-check-result.bad{color:#a83232;background:#a8323214;border-color:#a8323240;word-break:break-all}@keyframes sp-spin{to{transform:rotate(360deg)}}.sp-spin{animation:sp-spin .7s linear infinite}.sp-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.sp-dialog{background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg, 0 20px 60px rgba(0, 0, 0, .35));padding:24px;width:100%;max-width:400px;animation:sp-dialog-in .18s ease}@keyframes sp-dialog-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sp-dialog-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.sp-dialog-head svg{color:var(--accent)}.sp-dialog-head h3{margin:0;font-size:15px;font-weight:700;font-family:var(--font-mono)}.sp-dialog-desc{font-size:13px;color:var(--text-secondary);margin:0 0 14px;line-height:1.5}.sp-dialog-input{width:100%;margin-bottom:16px}.sp-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.sp-email-row{display:grid;grid-template-columns:1fr 300px;gap:18px;align-items:stretch}.sp-email-row .sp-card{height:100%;box-sizing:border-box}.sp-mail-contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;width:100%}.sp-mail-role{display:block;font-size:11px;font-style:normal;color:var(--text-secondary);margin-top:1px}@media (max-width: 900px){.sp-email-row,.sp-chat-card .sp-chat-layout{grid-template-columns:1fr}.sp-history-panel{order:-1;width:100%}.sp-history-list{max-height:160px}}@media (max-width: 620px){.sp-page{padding:16px 12px}.sp-card{padding:16px}.sp-admin-grid{grid-template-columns:1fr}.sp-chat-window{height:280px}.sp-schedule-row{flex-direction:column;align-items:stretch}}.sp-history-head-actions{display:flex;align-items:center;gap:6px}.sp-chat-main--full{grid-column:1 / -1}.sp-chat-form-wrap{margin-top:10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface);overflow:hidden}.sp-chat-textarea{width:100%;border:none!important;outline:none!important;border-radius:0!important;background:transparent!important;padding:10px 12px;resize:none;font-size:13px;line-height:1.5;box-shadow:none!important}.sp-chat-textarea:disabled{opacity:.5;cursor:not-allowed}.sp-chat-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 10px;border-top:1px solid var(--border);background:var(--bg-base);flex-wrap:wrap}.sp-chat-action-btn{flex:1;justify-content:center;min-width:0}.pp-scroll{flex:1;min-width:0;width:100%;display:flex;flex-direction:column;align-items:center;overflow-y:auto;overflow-x:hidden;padding:40px 24px 64px;box-sizing:border-box}.pp-scroll::-webkit-scrollbar{width:6px}.pp-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.pp-scroll::-webkit-scrollbar-track{background:transparent}.pp-root{width:100%;max-width:560px;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;gap:20px}@media (max-width: 900px){.pp-scroll{padding:32px 20px 64px}}@media (max-width: 640px){.pp-scroll{padding:24px 16px 48px}}@media (max-width: 420px){.pp-scroll{padding:16px 12px 40px}}@media (max-width: 380px){.pp-scroll{padding-inline:10px}}.pp-banner{display:flex;align-items:center;gap:8px;padding:11px 16px;border-radius:10px;font-size:13px;font-weight:600;width:100%;box-sizing:border-box}.pp-banner.success{background:#22c55e1a;color:#15803d;border:1px solid rgba(34,197,94,.22)}.pp-banner.warning{background:#f59e0b1a;color:#92400e;border:1px solid rgba(245,158,11,.22)}.pp-hero-card{width:100%;box-sizing:border-box;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border);border-radius:18px;padding:32px 28px 26px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.avatar-hero{display:flex;flex-direction:column;align-items:center;gap:8px}.avatar-hero-circle{position:relative;width:96px;height:96px;border-radius:50%;overflow:hidden;border:3px solid var(--border);background:var(--accent);cursor:pointer;transition:border-color .2s;flex-shrink:0}.avatar-hero-circle:hover{border-color:var(--accent)}.avatar-hero-circle:hover .avatar-hero-overlay{opacity:1}.avatar-hero-img{width:100%;height:100%;object-fit:cover;display:block}.avatar-hero-initial{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:800;color:#fff;-webkit-user-select:none;user-select:none}.avatar-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000085;display:flex;align-items:center;justify-content:center;gap:10px;opacity:0;transition:opacity .2s;border-radius:50%}.avatar-action-btn{width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:#ffffff2e;color:#fff;transition:background .15s,transform .15s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.avatar-action-btn:hover{background:#ffffff52;transform:scale(1.1)}.avatar-action-btn.danger:hover{background:#ef4444bf;transform:scale(1.1)}.avatar-hero-hint{font-size:11px;color:var(--text-secondary);margin:0}.avatar-hero-error{font-size:12px;color:var(--danger);margin:0}.pp-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:pp-spin .7s linear infinite}.pp-spinner.large{width:28px;height:28px}@keyframes pp-spin{to{transform:rotate(360deg)}}.pp-hero-info{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;min-width:0}.pp-id-name{font-size:18px;font-weight:800;color:var(--text-primary);margin:0;word-break:break-word}.pp-id-meta{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--text-secondary);margin:0;word-break:break-all;min-width:0}.pp-role-badge{padding:3px 12px;border-radius:99px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pp-role-badge.admin{background:#6366f11f;color:#6366f1;border:1px solid rgba(99,102,241,.25)}.pp-role-badge.user{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.pp-card{width:100%;box-sizing:border-box;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;padding:22px 24px 26px;display:flex;flex-direction:column;gap:20px}.pp-card-header{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border);min-width:0}.pp-card-icon{width:36px;height:36px;border-radius:9px;background:#1a3cc814;color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.pp-card-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 3px}.pp-card-sub{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.5;word-break:break-word;overflow-wrap:break-word;white-space:normal;min-width:0}.pp-pw-form{display:flex;flex-direction:column;gap:14px;min-width:0}.pp-field{display:flex;flex-direction:column;gap:5px;min-width:0}.pp-field label{font-size:13px;font-weight:600;color:var(--text-primary)}.pp-field-head{display:flex;justify-content:space-between;align-items:center;min-width:0}.pp-input{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;min-width:0;background:var(--bg-panel, var(--bg-base));border:1px solid var(--border);border-radius:9px;padding:0 12px;color:var(--text-secondary);transition:border-color .15s}.pp-input:focus-within{border-color:var(--accent)}.pp-input input{flex:1;min-width:0;width:100%;border:none;background:transparent;font-size:13px;color:var(--text-primary);padding:10px 0;outline:none;font-family:inherit}.pp-eye{background:none;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;padding:0;flex-shrink:0;transition:color .15s}.pp-eye:hover{color:var(--text-primary)}.pp-suggest-btn{display:flex;align-items:center;gap:7px;width:100%;box-sizing:border-box;padding:9px 14px;border:1.5px dashed var(--border);border-radius:9px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;justify-content:center;transition:border-color .2s,color .2s}.pp-suggest-btn:hover{border-color:var(--accent);color:var(--accent)}.pp-copy-btn{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);background:none;border:none;cursor:pointer;font-weight:600;flex-shrink:0;transition:color .15s}.pp-copy-btn:hover{color:var(--text-primary)}.pp-hint{font-size:11px;margin:2px 0 0;font-weight:500}.pp-hint.danger{color:var(--danger)}.pp-field-error{font-size:12px;color:var(--danger);margin:4px 0 0;word-break:break-word}.pp-error-box{display:flex;align-items:center;gap:8px;background:#e74c3c14;border:1px solid rgba(231,76,60,.22);border-radius:9px;padding:10px 12px;font-size:13px;color:var(--danger);word-break:break-word;min-width:0}.strength-wrap{display:flex;align-items:center;gap:8px;margin-top:5px;min-width:0}.strength-track{flex:1;min-width:0;height:4px;border-radius:2px;background:var(--border);overflow:hidden}.strength-fill{height:100%;border-radius:2px;transition:width .3s,background .3s}.strength-label{font-size:11px;font-weight:700;white-space:nowrap;min-width:42px}.pp-sent-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:8px 0}.pp-sent-icon{width:56px;height:56px;border-radius:50%;background:#1a3cc814;display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.pp-sent-state h3{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.pp-sent-state p{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.6;word-break:break-word}.pp-dev-box{margin-top:8px;background:var(--bg-base);border:1.5px dashed var(--border);border-radius:9px;padding:12px 16px;text-align:left;width:100%;box-sizing:border-box}.pp-dev-box p{font-size:11px;color:var(--text-secondary);margin:0 0 6px}.pp-dev-link{font-size:12px;color:var(--accent);word-break:break-all}.crop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.crop-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:18px;width:min(360px,100%);box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0006}.crop-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.crop-title{font-size:14px;font-weight:700;color:var(--text-primary)}.crop-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;padding:4px;border-radius:6px;transition:background .15s}.crop-close:hover{background:var(--border)}.crop-canvas-wrap{position:relative;width:280px;height:280px;margin:20px auto 0;border-radius:50%;overflow:hidden;-webkit-user-select:none;user-select:none}.crop-canvas{display:block;border-radius:50%}.crop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.crop-hint{text-align:center;font-size:11px;color:var(--text-secondary);margin:12px 20px 0;line-height:1.5}.crop-actions{display:flex;gap:10px;justify-content:flex-end;padding:12px 20px 20px}.ppa-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid transparent;box-sizing:border-box;transition:filter .15s,background .15s,border-color .15s,opacity .15s;white-space:nowrap}.ppa-btn:disabled{opacity:.45;cursor:default}.ppa-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.ppa-btn.primary:hover:not(:disabled){filter:brightness(1.1)}.ppa-btn.secondary{background:var(--bg-base);color:var(--text-primary);border-color:var(--border)}.ppa-btn.secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ppa-btn.full{width:100%;justify-content:center;padding:12px;font-size:14px;border-radius:10px}.ap-stepper{display:flex;flex-direction:column;gap:4px}.ap-stepper label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.ap-stepper-control{display:flex;align-items:center;border:1px solid var(--border);border-radius:8px;overflow:hidden}.ap-stepper-control button{width:28px;height:32px;background:var(--bg-base);border:none;color:var(--text-primary);font-size:16px;cursor:pointer;transition:background .15s;flex-shrink:0}.ap-stepper-control button:hover:not(:disabled){background:var(--bg-panel)}.ap-stepper-control button:disabled{opacity:.3;cursor:default}.ap-stepper-control span{min-width:36px;text-align:center;font-size:13px;font-weight:600;color:var(--text-primary);border-left:1px solid var(--border);border-right:1px solid var(--border);padding:0 8px;line-height:32px}.dp-wrapper{position:relative;display:inline-block}.dp-trigger{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-base);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s;font-family:var(--font-body)}.dp-trigger:hover,.dp-trigger.open{border-color:var(--accent)}.dp-trigger svg{color:var(--accent)}.dp-popup{position:absolute;top:calc(100% + 8px);left:0;z-index:100;background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:0 8px 32px #0000002e;width:260px}.dp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dp-month-label{font-size:13px;font-weight:700;color:var(--text-primary)}.dp-nav{background:none;border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;padding:2px 8px;border-radius:6px;transition:background .13s,color .13s;line-height:1}.dp-nav:hover{background:var(--bg-panel);color:var(--text-primary)}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-day-name{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);text-align:center;padding:4px 0 8px}.dp-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;color:var(--text-primary);border-radius:6px;cursor:pointer;transition:background .13s,color .13s}.dp-cell:hover:not(.dp-empty):not(.dp-disabled):not(.dp-selected){background:var(--bg-panel)}.dp-empty{cursor:default}.dp-selected{background:var(--accent);color:#fff;font-weight:700}.dp-today{border:1px solid var(--accent);color:var(--accent);font-weight:700}.dp-disabled{opacity:.25;cursor:default}.ap-page{display:flex;height:100%;overflow:hidden;background:var(--bg-base)}.ap-sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border);overflow:hidden}.ap-sidebar-brand{display:flex;align-items:center;gap:9px;padding:20px 18px 16px;font-family:var(--font-mono);font-size:15px;font-weight:800;color:var(--text-primary);border-bottom:1px solid var(--border);letter-spacing:-.02em}.ap-sidebar-brand svg{color:var(--accent);flex-shrink:0}.ap-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:12px 10px;overflow-y:auto}.ap-nav-btn{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:none;border-radius:9px;background:transparent;cursor:pointer;text-align:left;transition:background .13s,color .13s;color:var(--text-secondary)}.ap-nav-btn:hover{background:var(--bg-base);color:var(--text-primary)}.ap-nav-btn.active{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}.ap-nav-btn.active .ap-nav-icon{color:var(--accent)}.ap-nav-icon{display:flex;align-items:center;flex-shrink:0;color:var(--text-secondary);transition:color .13s}.ap-nav-btn:hover .ap-nav-icon{color:var(--text-primary)}.ap-nav-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ap-nav-label{font-size:13px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ap-nav-hint{font-size:10px;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.ap-nav-btn.active .ap-nav-hint{color:color-mix(in srgb,var(--accent) 70%,var(--text-secondary))}.ap-sidebar-footer{padding:12px 10px;border-top:1px solid var(--border)}.ap-sidebar-user{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;background:var(--bg-base)}.ap-sidebar-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ap-sidebar-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.ap-sidebar-name{font-size:12px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ap-sidebar-role{font-size:10px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.ap-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.ap-panel{display:none;flex:1;overflow-y:auto;overflow-x:hidden}.ap-panel.visible{display:flex;flex-direction:column}.ap-panel .um-page{padding:24px 28px;align-items:flex-start;height:auto}.ap-panel .um-card{max-width:100%}.ap-panel .sp-page{padding:24px 28px}.ap-panel .sp-shell{max-width:100%}.ap-panel .ab-card{margin:24px 28px}@media (max-width: 900px){.ap-sidebar{width:180px}.ap-nav-hint{display:none}.ap-content-header{padding:14px 20px}.ap-panel .um-page,.ap-panel .sp-page{padding:16px 20px}.ap-panel .ab-card{margin:16px 20px}}@media (max-width: 640px){.ap-page{flex-direction:column}.ap-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border)}.ap-sidebar-brand,.ap-sidebar-footer{display:none}.ap-nav{flex-direction:row;padding:8px 10px;gap:4px;overflow-x:auto}.ap-nav-btn{flex-direction:column;align-items:center;gap:4px;padding:8px 14px;min-width:fit-content;flex:1}.ap-nav-text{align-items:center}.ap-nav-label{font-size:11px}.ap-content-header,.ap-panel .um-page,.ap-panel .sp-page{padding:12px 16px}.ap-panel .ab-card{margin:12px 16px}}.ap-content-body{flex:1;overflow-y:auto;overflow-x:hidden}.ap-tab-content{padding:24px 28px;display:flex;flex-direction:column;gap:20px}.ap-settings-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;gap:12px}.ap-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ap-settings-head h2{display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:14px;font-weight:700;margin:0 0 3px}.ap-settings-head h2 svg{color:var(--accent)}.ap-settings-hint{font-size:12px;color:var(--text-secondary);margin:0}.ap-config-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ap-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary);margin:0}.ap-schedule-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.ap-time-field{display:flex;flex-direction:column;gap:4px}.ap-time-field label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.ap-time-field input{width:64px}.ap-content-header{display:flex;align-items:center;gap:12px;padding:16px 28px;border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0}.ap-content-icon{display:flex;align-items:center;color:var(--accent)}.ap-content-title{font-family:var(--font-mono);font-size:16px;font-weight:800;margin:0 0 2px;letter-spacing:-.02em}.ap-content-hint{font-size:12px;color:var(--text-secondary);margin:0}@media (max-width: 900px){.ap-tab-content{padding:16px 20px}}@media (max-width: 640px){.ap-tab-content{padding:12px 16px}.ap-schedule-row{flex-direction:column;align-items:flex-start}}.um-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.um-title{display:flex;align-items:center;gap:10px}.um-title h1{font-family:var(--font-mono);font-size:18px;font-weight:700}.um-title svg{color:var(--accent)}.um-table{width:100%;border-collapse:collapse;font-size:13px}.um-table th{text-align:left;padding:8px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);border-bottom:1px solid var(--border)}.um-table td{padding:10px 16px;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0}.um-table tr:last-child td{border-bottom:none}.um-table tr:hover td{background:var(--bg-panel)}.um-table .me-row td{background:color-mix(in srgb,var(--accent) 5%,transparent)}.user-cell{display:flex;align-items:center;gap:10px}.um-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.you-tag{font-size:10px;font-weight:700;color:var(--text-secondary);background:var(--border);padding:1px 6px;border-radius:8px;text-transform:uppercase;letter-spacing:.4px}.um-loading{text-align:center;padding:40px;color:var(--text-secondary)}.um-filters{display:flex;gap:8px;padding:0 0 12px}.um-search{flex:1;padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.tag.admin{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.tag.user{background:var(--bg-panel);color:var(--text-secondary)}.btn.icon{background:transparent;border:1px solid var(--border);color:var(--text-secondary);transition:all .15s ease}.btn.icon.edit{border:none;background:transparent}.btn.icon.danger,.btn.icon.success{background:transparent;border-color:transparent}.btn.icon.danger{color:var(--danger, #ef4444)}.btn.icon.success{color:var(--success, #22c55e)}.btn.icon.danger:hover{background:color-mix(in srgb,var(--danger) 15%,transparent)}.btn.icon.success:hover{background:color-mix(in srgb,var(--success) 15%,transparent)}.ab-type-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.ab-type-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--border);border-radius:999px;background:var(--bg-base);color:var(--text-secondary);font-size:13px;font-weight:700;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.ab-type-btn.active{border-color:var(--accent);color:var(--accent);background:#4a90e214}.ab-type-btn:hover:not(.active){border-color:var(--accent);color:var(--accent)}.ab-field{display:flex;flex-direction:column;gap:5px}.ab-field label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.ab-field input,.ab-field textarea{width:100%}.ab-field textarea{resize:vertical;min-height:120px}.ab-maint-form{display:flex;flex-direction:column;gap:12px}.ab-field-row{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.ab-time-row{display:flex;align-items:center;gap:4px}.ab-time-input{width:58px!important;text-align:center}.ab-colon{font-weight:800;font-size:16px;color:var(--text-secondary);line-height:1}.ab-maint-info{font-size:12px;color:var(--text-secondary);margin:0;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:8px;line-height:1.5}.ab-custom-form{display:flex;flex-direction:column;gap:12px}.ab-preview-btn{align-self:flex-start;font-size:12px;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;text-decoration:underline;font-weight:600}.ab-preview-box{background:var(--bg-base);border:1px solid var(--border);border-radius:10px;padding:14px 16px;font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-secondary);line-height:1.6}.ab-preview-box p{margin:0}.ab-preview-gap{height:8px}.ab-actions{display:flex;justify-content:flex-end}.ab-send-btn{gap:7px}.um-card{width:100%;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:28px;box-shadow:var(--shadow);overflow:hidden}:root{--bg-base: #f0f4fa;--bg-surface: #ffffff;--bg-panel: #f5f8fd;--bg-sidebar: #0a1628;--sidebar-text: #a8c0e0;--sidebar-hover: rgba(255, 255, 255, .07);--sidebar-active: #2155cd;--border: #dde5f0;--text-primary: #0a1628;--text-secondary: #5a6a8a;--accent: #1a3cc8;--accent-hover: #122db0;--danger: #e74c3c;--success: #27ae60;--warn: #e67e22;--canvas-bg: #0d1b2e;--font-mono: "Space Mono", monospace;--font-body: "DM Sans", sans-serif;--radius: 8px;--shadow: 0 2px 12px rgba(26, 60, 200, .08);--shadow-lg: 0 8px 32px rgba(26, 60, 200, .14);--transition: .18s ease}[data-theme=dark]{--bg-base: #070d1a;--bg-surface: #0e1829;--bg-panel: #131f33;--bg-sidebar: #060c18;--sidebar-text: #7090c0;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: #3d6be8;--border: #1a2a45;--text-primary: #d0dcf0;--text-secondary: #5070a0;--accent: #3d6be8;--accent-hover: #2155cd;--canvas-bg: #040912;--shadow: 0 2px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;min-width:900px;min-height:600px;font-family:var(--font-body);background:var(--bg-base);color:var(--text-primary);font-size:14px;line-height:1.5;transition:background var(--transition),color var(--transition)}body{overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none;transition:all var(--transition)}input,select,textarea{font-family:var(--font-body);background:var(--bg-panel);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius);padding:6px 10px;font-size:13px;outline:none;transition:border-color var(--transition)}input:focus,select:focus{border-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;background:var(--bg-panel);border:1px solid var(--border);color:var(--text-primary);text-align:center;cursor:pointer}.btn:hover{background:var(--border)}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.primary:hover{background:var(--accent-hover)}.btn.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn.icon{padding:7px}.btn:disabled{opacity:.4;cursor:not-allowed}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tag.admin{background:#1a3cc826;color:var(--accent)}.tag.user{background:#27ae6026;color:var(--success)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:28px;width:420px;max-width:95vw;box-shadow:var(--shadow-lg)}.modal h2{font-family:var(--font-mono);font-size:16px;margin-bottom:20px}.form-row{margin-bottom:14px}.form-row label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}.form-row input,.form-row select{width:100%}.divider{height:1px;background:var(--border);margin:16px 0}
