html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.promo-page{--p-paper: #f3f3ef;--p-paper-deep: #ecece5;--p-card: #fbfbf8;--p-ink: #14201a;--p-text: #3f463f;--p-muted: #6d736c;--p-soft: #8f948d;--p-line: #e0e0d8;--p-line-strong: #cfcfc5;--p-green: #1f5c46;--p-green-light: #8fc19e;--p-salmon: #e0736a;--p-amber: #a46f2e;--p-danger: #a8412f;min-height:100vh;overflow-x:hidden;background:var(--p-paper);color:var(--p-ink)}.promo-page ::selection{background:var(--p-salmon);color:#fff}.promo-page a:focus-visible{outline:2px solid var(--p-green);outline-offset:3px;border-radius:4px}.promo-shell{width:100%;max-width:1280px;margin:0 auto;padding:0 48px}.promo-page h2{margin:0;font-size:clamp(38px,4.4vw,58px);line-height:1.06;letter-spacing:-.045em;font-weight:650;color:var(--p-ink);text-wrap:balance}.promo-page section[id]{scroll-margin-top:88px}.promo-nav{position:sticky;top:0;z-index:50;background:#f3f3efe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(224,224,216,.85)}.promo-nav-inner{display:flex;align-items:center;gap:28px;min-height:72px}.promo-brand{display:inline-flex;align-items:center;gap:10px;color:var(--p-ink);text-decoration:none;flex-shrink:0}.promo-brand-mark{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--p-ink);color:#fff;font-size:14px;font-weight:700;line-height:1}.promo-brand-text{font-size:16px;font-weight:650;letter-spacing:-.02em}.promo-brand-note{padding-left:10px;border-left:1px solid var(--p-line-strong);font-size:10px;color:var(--p-muted);letter-spacing:.08em;white-space:nowrap}.promo-nav-links{display:flex;align-items:center;gap:26px;margin-left:auto}.promo-nav-links a{font-size:13px;color:var(--p-muted);text-decoration:none;transition:color .15s ease}.promo-nav-links a:hover{color:var(--p-ink)}.promo-nav-cta{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:10px;background:var(--p-ink);color:#f6f4ee;font-size:12.5px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .18s ease}.promo-nav-cta:hover{background:var(--p-green);color:#fff}.promo-nav-cta .anticon{font-size:11px}.promo-hero{position:relative;padding:72px 0 88px}.promo-hero:before{content:"";position:absolute;top:8%;right:-220px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(31,92,70,.09);pointer-events:none}.promo-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(360px,.94fr);align-items:center;gap:72px}.promo-hero-copy{animation:promo-rise .7s ease both}.promo-kicker{display:flex;align-items:center;gap:9px;margin:0 0 20px;font-size:11px;font-weight:650;letter-spacing:.18em;color:var(--p-green);text-transform:uppercase}.promo-kicker-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--p-salmon)}.promo-kicker-light{color:#ffffff80}.promo-hero h1{margin:0;font-size:clamp(52px,6vw,84px);line-height:1.02;letter-spacing:-.055em;font-weight:650;color:var(--p-ink)}.promo-hero h1 span{color:var(--p-green)}.promo-h1-dot{color:var(--p-salmon);font-style:normal}.promo-lead{max-width:500px;margin:26px 0 0;font-size:16px;line-height:1.85;color:var(--p-muted)}.promo-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.promo-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border:1px solid transparent;border-radius:12px;font-size:14px;font-weight:600;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.promo-button .anticon{font-size:12px;transition:transform .18s ease}.promo-button:hover .anticon{transform:translate(3px)}.promo-button-dark{background:var(--p-ink);color:#f6f4ee}.promo-button-dark:hover{background:var(--p-green);color:#fff;transform:translateY(-1px)}.promo-button-ghost{border-color:var(--p-line-strong);color:var(--p-ink);background:transparent}.promo-button-ghost:hover{border-color:var(--p-ink);background:#fff;color:var(--p-ink)}.promo-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 0;margin-top:30px;font-size:12px;color:var(--p-muted)}.promo-hero-meta span{display:inline-flex;align-items:center}.promo-hero-meta span+span:before{content:"";width:1px;height:11px;margin:0 14px;background:var(--p-line-strong)}.promo-hero-visual{display:flex;justify-content:center;animation:promo-rise .8s .08s ease both}.promo-phone-wrap{position:relative;width:360px}.promo-phone-wrap:before{content:"";position:absolute;z-index:0;top:46px;left:16px;right:-14px;bottom:-14px;border:1px solid var(--p-line-strong);border-radius:42px;background:var(--p-paper-deep)}.promo-phone-label{position:relative;z-index:1;display:flex;align-items:center;gap:10px;margin-bottom:13px;font-size:10px;font-weight:650;letter-spacing:.14em;color:var(--p-muted)}.promo-phone-label:after{content:"";flex:1;height:1px;background:var(--p-line)}.promo-phone{position:relative;z-index:1;padding:9px;border:1px solid #d7d7cd;border-radius:40px;background:#e7e7df}.promo-phone-screen{padding:12px 13px 13px;border:1px solid var(--p-line);border-radius:32px;background:var(--p-paper)}.promo-phone-status{display:flex;align-items:center;justify-content:space-between;padding:0 5px 8px;font-size:9px;font-weight:650;color:var(--p-ink);letter-spacing:.02em}.promo-phone-status-icons{display:flex;align-items:flex-end;gap:2px}.promo-phone-status-icons i{display:block;width:3px;height:5px;border-radius:1px;background:var(--p-ink);opacity:.7}.promo-phone-status-icons i:nth-child(2){height:7px}.promo-phone-status-icons i:nth-child(3){height:9px}.promo-phone-head{display:flex;align-items:flex-end;justify-content:space-between;padding:0 2px 12px}.promo-phone-date{font-size:9.5px;color:var(--p-muted);letter-spacing:.03em}.promo-phone-greet{margin-top:3px;font-size:22px;font-weight:650;letter-spacing:-.035em;line-height:1.15}.promo-phone-week{padding:3px 7px;border:1px solid #d5ddd4;border-radius:999px;font-size:8px;color:#4a6b57;white-space:nowrap}.promo-phone-focus{padding:16px 15px 13px;border-radius:18px;background:var(--p-ink);color:#fff}.promo-phone-focus-label{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:600;letter-spacing:.1em;color:#ffffff8f}.promo-dot{display:inline-block;width:5px;height:5px;flex:0 0 5px;border-radius:50%}.promo-dot-salmon{background:var(--p-salmon)}.promo-dot-green{background:var(--p-green)}.promo-dot-line{background:var(--p-line-strong)}.promo-phone-focus-title{margin-top:8px;font-size:18px;line-height:1.3;font-weight:600;letter-spacing:-.025em}.promo-phone-focus-sub{margin-top:4px;font-size:9.5px;color:#ffffff80}.promo-phone-focus-bar{height:3px;margin-top:14px;overflow:hidden;border-radius:999px;background:#ffffff29}.promo-phone-focus-bar span{display:block;height:100%;border-radius:999px;background:var(--p-salmon);animation:promo-progress 1.1s cubic-bezier(.22,1,.36,1) both}.promo-phone-focus-foot{display:flex;align-items:center;justify-content:space-between;margin-top:7px;font-size:7.5px;color:#ffffff75}.promo-phone-focus-actions{display:flex;gap:6px;margin-top:12px}.promo-phone-focus-actions span{flex:1;padding:7px 0;border-radius:7px;text-align:center;font-size:8.5px;font-weight:600}.promo-phone-focus-actions span:first-child{background:#fff;color:var(--p-ink)}.promo-phone-focus-actions span:last-child{border:1px solid rgba(255,255,255,.22);color:#ffffffdb}.promo-phone-courses{display:flex;gap:6px;margin-top:10px}.promo-phone-course{flex:1;min-width:0;padding:7px 7px 6px;border:1px solid var(--p-line);border-radius:10px;background:#fff}.promo-phone-course-now{border-color:var(--p-ink)}.promo-phone-course strong{display:block;overflow:hidden;font-size:8.5px;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.promo-phone-course span{display:block;margin-top:2px;font-size:7.5px;font-weight:650;color:var(--p-green)}.promo-phone-course em{display:block;overflow:hidden;margin-top:1px;font-size:7.5px;font-style:normal;color:var(--p-soft);white-space:nowrap;text-overflow:ellipsis}.promo-phone-group{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-bottom:5px;border-bottom:1px solid var(--p-line);font-size:8.5px;color:var(--p-muted)}.promo-phone-group-count{font-weight:650;color:var(--p-ink)}.promo-phone-row{display:flex;align-items:flex-start;gap:7px;padding:8px 0;border-bottom:1px solid #e6e6de}.promo-phone-check{position:relative;width:11px;height:11px;flex:0 0 11px;margin-top:1px;border:2px solid var(--p-amber);border-radius:50%}.promo-phone-check:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;background:var(--p-amber)}.promo-phone-check-high{border-color:var(--p-danger)}.promo-phone-check-high:after{background:var(--p-danger)}.promo-phone-row-main{flex:1;min-width:0}.promo-phone-row-title{overflow:hidden;font-size:10px;font-weight:500;line-height:1.35;white-space:nowrap;text-overflow:ellipsis}.promo-phone-row-meta{overflow:hidden;margin-top:2px;font-size:7.5px;color:var(--p-soft);white-space:nowrap;text-overflow:ellipsis}.promo-phone-row-time{flex-shrink:0;font-size:8.5px;font-weight:650;color:var(--p-green)}.promo-phone-quiet{padding:8px 0 0;font-size:7.5px;color:var(--p-soft)}.promo-phone-capture{display:flex;gap:6px;margin-top:9px;padding-top:9px;border-top:1px solid var(--p-line)}.promo-phone-capture-input{flex:1;padding:7px 8px;border:1px solid var(--p-line);border-radius:9px;background:#fff;font-size:8px;color:var(--p-soft)}.promo-phone-capture-btn{padding:7px 12px;border-radius:9px;background:var(--p-ink);color:#fff;font-size:8px;font-weight:600}.promo-strip{border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line)}.promo-strip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.promo-strip-item{display:flex;align-items:flex-start;gap:18px;padding:28px 0}.promo-strip-item+.promo-strip-item{padding-left:36px;border-left:1px solid var(--p-line)}.promo-strip-item strong{min-width:58px;font-size:24px;font-weight:650;line-height:1.15;letter-spacing:-.04em;color:var(--p-ink)}.promo-strip-item span{display:block;font-size:13px;font-weight:600;color:var(--p-ink)}.promo-strip-item em{display:block;margin-top:4px;font-size:11.5px;font-style:normal;line-height:1.6;color:var(--p-muted)}.promo-section{padding:104px 0}.promo-features{border-top:1px solid var(--p-line)}.promo-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:52px}.promo-section-copy{max-width:400px;margin:0 0 6px;font-size:14px;line-height:1.85;color:var(--p-muted)}.promo-focus-body{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;align-items:stretch}.promo-quote{display:flex;flex-direction:column;justify-content:space-between;min-height:380px;margin:0;padding:40px;border-radius:26px;background:var(--p-ink);color:#fff}.promo-quote-mark{font-family:Georgia,Times New Roman,serif;font-size:60px;line-height:.8;color:var(--p-salmon)}.promo-quote p{margin:24px 0 40px;font-size:25px;line-height:1.5;font-weight:500;letter-spacing:-.025em}.promo-quote footer{padding-top:16px;border-top:1px solid rgba(255,255,255,.12);font-size:10px;letter-spacing:.1em;color:#ffffff73}.promo-rules{margin:0;padding:0;list-style:none}.promo-rules li{display:flex;gap:22px;padding:23px 0;border-top:1px solid var(--p-line)}.promo-rules li:last-child{border-bottom:1px solid var(--p-line)}.promo-rules>li>span{padding-top:3px;font-size:11px;font-weight:650;letter-spacing:.08em;color:var(--p-green)}.promo-rules strong{display:block;font-size:16.5px;font-weight:600;letter-spacing:-.015em;color:var(--p-ink)}.promo-rules p{margin:7px 0 0;font-size:12.5px;line-height:1.75;color:var(--p-muted)}.promo-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.promo-feature{display:flex;flex-direction:column;min-height:430px;padding:28px 26px 26px;border:1px solid var(--p-line);border-radius:22px;background:var(--p-card);transition:border-color .2s ease,transform .2s ease}.promo-feature:hover{border-color:#b9bdb3;transform:translateY(-3px)}.promo-feature-top{display:flex;align-items:center;justify-content:space-between}.promo-feature-index{font-size:11px;font-weight:650;letter-spacing:.1em;color:var(--p-green)}.promo-tag{padding:4px 8px;border:1px solid var(--p-line);border-radius:999px;font-size:8px;letter-spacing:.13em;color:var(--p-muted)}.promo-feature h3{margin:24px 0 0;font-size:20px;font-weight:600;letter-spacing:-.025em;color:var(--p-ink)}.promo-feature p{margin:8px 0 0;font-size:12.5px;line-height:1.75;color:var(--p-muted)}.promo-feature-demo{margin-top:auto;padding-top:28px}.promo-mini-focus{padding:16px 16px 14px;border-radius:16px;background:var(--p-ink);color:#fff}.promo-mini-label{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:600;letter-spacing:.1em;color:#ffffff8f}.promo-mini-focus>strong{display:block;margin-top:9px;font-size:15px;font-weight:600;letter-spacing:-.02em}.promo-mini-sub{display:block;margin-top:4px;font-size:8.5px;color:#ffffff7a}.promo-mini-bar{height:3px;margin-top:16px;overflow:hidden;border-radius:999px;background:#ffffff29}.promo-mini-bar span{display:block;width:62%;height:100%;border-radius:999px;background:var(--p-salmon)}.promo-mini-foot{display:flex;justify-content:space-between;margin-top:7px;font-size:7.5px;color:#ffffff75}.promo-mini-week{padding:14px;border:1px solid var(--p-line);border-radius:16px;background:#fff}.promo-mini-week-head{display:flex;align-items:center;justify-content:space-between;font-size:8.5px;color:var(--p-muted)}.promo-mini-week-head span:first-child{font-weight:600;color:var(--p-ink)}.promo-mini-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:10px}.promo-mini-week-days span{display:grid;place-items:center;height:24px;border-radius:7px;font-size:9px;color:var(--p-muted)}.promo-mini-week-days .is-active{background:var(--p-ink);color:#fff;font-weight:600}.promo-mini-course{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--p-line)}.promo-mini-course>div{flex:1;min-width:0}.promo-mini-course strong{display:block;font-size:10px;font-weight:600;color:var(--p-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-mini-course span{display:block;margin-top:2px;font-size:8.5px;color:var(--p-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-mini-course em{flex-shrink:0;font-size:8.5px;font-style:normal;font-weight:650;color:var(--p-green)}.promo-mini-input{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 10px 12px;border:1px solid var(--p-line);border-radius:10px;background:#fff;font-size:9.5px;color:var(--p-soft)}.promo-mini-input em{padding:5px 10px;border-radius:6px;background:var(--p-ink);color:#fff;font-size:8.5px;font-style:normal;font-weight:600}.promo-mini-inbox{display:flex;align-items:center;gap:8px;margin-top:8px;padding:9px 11px;border:1px solid var(--p-line);border-radius:11px;background:#fff}.promo-mini-inbox>div{flex:1;min-width:0}.promo-mini-inbox strong{display:block;font-size:10px;font-weight:500;color:var(--p-ink)}.promo-mini-inbox span{display:block;margin-top:2px;font-size:8px;color:var(--p-soft)}.promo-mini-inbox time{flex-shrink:0;font-size:8px;color:var(--p-soft)}.promo-mini-inbox-quiet{opacity:.55}.promo-remind{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.9fr);gap:56px;overflow:hidden;padding:62px 60px;border-radius:30px;background:var(--p-ink);color:#fff}.promo-remind:after{content:"";position:absolute;right:-150px;bottom:-200px;width:480px;height:480px;border-radius:50%;border:1px solid rgba(255,255,255,.08);pointer-events:none}.promo-remind h2{color:#fff}.promo-remind-lead{max-width:440px;margin:22px 0 0;font-size:14px;line-height:1.85;color:#ffffff94}.promo-remind-list{margin:34px 0 0;padding:0;list-style:none}.promo-remind-list li{display:flex;gap:18px;padding:17px 0;border-top:1px solid rgba(255,255,255,.1)}.promo-remind-list li>span{padding-top:2px;font-size:10px;font-weight:650;letter-spacing:.08em;color:var(--p-green-light)}.promo-remind-list strong{display:block;font-size:13.5px;font-weight:600;color:#fff}.promo-remind-list p{margin:5px 0 0;font-size:12px;line-height:1.7;color:#ffffff80}.promo-notify{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.promo-notify-caption{font-size:9px;letter-spacing:.14em;color:#ffffff61}.promo-notify-card{width:100%;max-width:340px;padding:20px;border-radius:16px;background:#fff;color:var(--p-ink)}.promo-notify-card-main{transform:rotate(-1.2deg)}.promo-notify-card-ghost{border:1px solid rgba(255,255,255,.14);background:#ffffff0d;color:#ffffffb8;transform:rotate(1.2deg)}.promo-notify-card-ghost .promo-notify-icon{background:#ffffff24;color:#ffffffa8}.promo-notify-card-ghost .promo-notify-head strong,.promo-notify-card-ghost .promo-notify-title{color:#ffffffb8}.promo-notify-card-ghost .promo-notify-head span,.promo-notify-card-ghost .promo-notify-body{color:#ffffff61}.promo-notify-head{display:flex;align-items:center;gap:9px}.promo-notify-icon{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:7px;background:var(--p-green);color:#fff;font-size:12px;font-weight:700}.promo-notify-head strong{display:block;font-size:11px;font-weight:600}.promo-notify-head span{display:block;margin-top:1px;font-size:8.5px;color:var(--p-soft)}.promo-notify-title{margin:14px 0 0;font-size:15px;font-weight:600;letter-spacing:-.015em}.promo-notify-body{margin:5px 0 0;font-size:11px;line-height:1.6;color:var(--p-muted)}.promo-notify-foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--p-line);font-size:10px;font-weight:600;color:var(--p-green)}.promo-privacy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:80px;align-items:start}.promo-privacy h2{margin-bottom:22px}.promo-privacy-list{margin:34px 0 0;padding:0;list-style:none}.promo-privacy-list li{display:flex;gap:16px;padding:19px 0;border-top:1px solid var(--p-line)}.promo-privacy-list li:last-child{border-bottom:1px solid var(--p-line)}.promo-privacy-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#e7ece4;color:var(--p-green);font-size:16px}.promo-privacy-list strong{display:block;font-size:14.5px;font-weight:600;color:var(--p-ink)}.promo-privacy-list p{margin:5px 0 0;font-size:12px;line-height:1.7;color:var(--p-muted)}.promo-admin{overflow:hidden;border:1px solid var(--p-line);border-radius:24px;background:var(--p-card)}.promo-admin-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 22px;border-bottom:1px solid var(--p-line)}.promo-admin-brand{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--p-ink)}.promo-admin-brand span{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--p-ink);color:#fff;font-size:9px}.promo-admin-pill{padding:3px 8px;border-radius:999px;background:#e7ece4;font-size:9px;font-weight:600;color:var(--p-green);white-space:nowrap}.promo-admin-filter{display:flex;align-items:center;gap:16px;padding:11px 22px;border-bottom:1px solid var(--p-line);background:#f6f6f0;font-size:9px;color:var(--p-soft)}.promo-admin-filter span:first-child{font-weight:600;color:var(--p-ink)}.promo-admin-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px 22px;border-bottom:1px solid #e9e9e1}.promo-admin-row strong{display:block;font-size:11.5px;font-weight:600;color:var(--p-ink)}.promo-admin-row p{margin:4px 0 0;font-size:10.5px;color:var(--p-muted)}.promo-admin-code{display:inline-block;margin-top:6px;padding:2px 6px;border-radius:4px;background:#f0f0e9;font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:8px;letter-spacing:.03em;color:var(--p-muted)}.promo-admin-row time{flex-shrink:0;font-size:9px;color:var(--p-soft)}.promo-admin-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 22px;font-size:9px;color:var(--p-soft)}#start{border-top:1px solid var(--p-line)}.promo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);list-style:none}.promo-steps li{padding:32px 32px 36px}.promo-steps li:first-child{padding-left:0}.promo-steps li:last-child{padding-right:0}.promo-steps li+li{border-left:1px solid var(--p-line)}.promo-steps li>span{font-size:26px;font-weight:650;letter-spacing:-.04em;color:var(--p-salmon)}.promo-steps h3{margin:22px 0 0;font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--p-ink)}.promo-steps p{margin:8px 0 0;font-size:12.5px;line-height:1.75;color:var(--p-muted)}.promo-start-note{margin:18px 0 0;font-size:11px;color:var(--p-soft)}.promo-final-section{padding-top:0}.promo-final-panel{position:relative;overflow:hidden;padding:72px 64px;border-radius:30px;background:var(--p-ink);color:#fff}.promo-final-panel:after{content:"";position:absolute;top:-160px;right:-120px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.08);pointer-events:none}.promo-final-panel h2{position:relative;z-index:1;font-size:clamp(44px,5.4vw,76px);color:#fff}.promo-final-panel>p:not(.promo-kicker){position:relative;z-index:1;max-width:460px;margin:22px 0 0;font-size:14px;line-height:1.85;color:#fff9}.promo-final-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.promo-button-light{background:#f6f4ee;color:var(--p-ink)}.promo-button-light:hover{background:#fff;color:var(--p-ink);transform:translateY(-1px)}.promo-button-outline-light{border-color:#ffffff3d;color:#fff;background:transparent}.promo-button-outline-light:hover{border-color:#ffffff80;background:#ffffff0f;color:#fff}.promo-footer{padding:42px 0 52px;border-top:1px solid var(--p-line)}.promo-footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}.promo-footer-brand{display:flex;align-items:center;gap:10px}.promo-footer-brand strong{display:block;font-size:13px;font-weight:650;color:var(--p-ink)}.promo-footer-brand span{display:block;margin-top:2px;font-size:10.5px;color:var(--p-soft)}.promo-footer-links{display:flex;flex-wrap:wrap;gap:22px}.promo-footer-links a{font-size:12px;color:var(--p-muted);text-decoration:none;transition:color .15s ease}.promo-footer-links a:hover{color:var(--p-ink)}.promo-footer-copy{margin:32px 0 0;font-size:10.5px;color:var(--p-soft)}@keyframes promo-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes promo-progress{0%{width:0}to{width:62%}}@media(max-width:1120px){.promo-hero-grid{gap:40px}.promo-hero h1{font-size:clamp(48px,6.4vw,72px)}.promo-focus-body{gap:36px}.promo-quote{padding:32px}.promo-quote p{font-size:22px}.promo-remind{padding:48px 44px;gap:40px}.promo-privacy{gap:48px}}@media(max-width:960px){.promo-hero:before{display:none}.promo-hero-grid{grid-template-columns:1fr}.promo-hero-copy{max-width:720px}.promo-hero-visual{margin-top:56px}.promo-feature-grid{grid-template-columns:1fr}.promo-feature{min-height:0}.promo-feature-demo{margin-top:24px;padding-top:0}.promo-focus-body,.promo-remind,.promo-privacy{grid-template-columns:1fr}.promo-quote{min-height:0}.promo-notify{padding-top:8px}.promo-notify-card{max-width:400px}.promo-admin{max-width:640px}}@media(max-width:820px){.promo-shell{padding:0 24px}.promo-nav-inner{min-height:64px;gap:16px}.promo-brand-note,.promo-nav-links{display:none}.promo-nav-cta{margin-left:auto}.promo-hero{padding:48px 0 64px}.promo-hero h1{font-size:clamp(44px,10vw,64px)}.promo-lead{margin-top:20px;font-size:14px}.promo-section{padding:72px 0}.promo-section-head{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:36px}.promo-section-copy{max-width:560px;margin:0}.promo-strip-grid{grid-template-columns:1fr}.promo-strip-item{padding:20px 0}.promo-strip-item+.promo-strip-item{padding-left:0;border-top:1px solid var(--p-line);border-left:0}.promo-steps{grid-template-columns:1fr}.promo-steps li,.promo-steps li:first-child,.promo-steps li:last-child{padding:26px 0 30px}.promo-steps li+li{border-top:1px solid var(--p-line);border-left:0}.promo-steps h3{margin-top:14px}.promo-remind{padding:38px 26px;border-radius:24px}.promo-final-section{padding-top:0}.promo-final-panel{padding:44px 28px;border-radius:24px}.promo-footer{padding:32px 0 40px}}@media(max-width:560px){.promo-shell{padding:0 18px}.promo-brand-text{font-size:15px}.promo-nav-cta{height:36px;padding:0 12px;font-size:11.5px}.promo-kicker{font-size:10px;letter-spacing:.14em}.promo-hero h1{font-size:clamp(38px,12vw,52px)}.promo-hero-actions{flex-direction:column;align-items:stretch}.promo-button{height:48px}.promo-hero-meta{gap:8px 0;font-size:11px}.promo-hero-meta span+span:before{margin:0 9px}.promo-phone-wrap{width:min(360px,100%)}.promo-phone-wrap:before{left:10px;right:-8px}.promo-page h2{font-size:clamp(32px,9vw,42px)}.promo-quote{padding:26px;border-radius:20px}.promo-quote p{font-size:20px}.promo-feature{padding:22px 18px;border-radius:18px}.promo-remind{padding:32px 20px}.promo-remind-list li{gap:14px}.promo-notify-card{padding:16px}.promo-admin-top,.promo-admin-row,.promo-admin-filter,.promo-admin-foot{padding-left:16px;padding-right:16px}.promo-admin-code{font-size:8px}.promo-final-panel{padding:36px 22px}.promo-final-panel h2{font-size:clamp(36px,10.5vw,48px)}.promo-footer-inner{flex-direction:column}}@media(prefers-reduced-motion:reduce){.promo-hero-copy,.promo-hero-visual,.promo-phone-focus-bar span{animation:none}.promo-button,.promo-feature,.promo-button .anticon,.promo-nav-links a,.promo-footer-links a{transition:none}}:root{--brand: #2f6b4f;--brand-dark: #1d3f2d;--bg: #f4f6f1;--surface: #ffffff;--text: #1f2d24;--muted: #718078;--soft: #98a39b;--border: #e4e9e2;--shadow: 0 18px 50px -32px rgba(20, 50, 33, .35)}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}button{font-family:inherit}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--muted);background:var(--bg);padding:32px;text-align:center}.app-shell{min-height:100vh;background:var(--bg)}.app-sider{position:sticky!important;top:0;height:100vh;border-right:1px solid var(--border);background:var(--surface)!important;z-index:20}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;overflow:hidden}.app-brand{height:78px;min-height:78px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid #f0f2ed;white-space:nowrap}.app-brand-mark{width:36px;height:36px;flex:0 0 36px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:19px;font-weight:700;background:linear-gradient(135deg,#2f6b4f,#6c9c7b);box-shadow:0 8px 18px -10px #2f6b4fcc}.app-brand-name{font-size:17px;font-weight:650;letter-spacing:-.01em;color:var(--text)}.app-brand-sub{font-size:11px;color:var(--soft);margin-top:2px;letter-spacing:.08em}.app-menu{flex:1;overflow-y:auto;padding:14px 10px;border-inline-end:0!important;background:transparent!important}.app-menu .ant-menu-item{height:42px;line-height:42px;margin-block:4px;border-radius:10px;color:#516158}.app-menu .ant-menu-item .anticon{font-size:16px}.app-sider-footer{margin-top:auto;padding:16px 20px;border-top:1px solid #f0f2ed;display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--soft);white-space:nowrap}.app-topbar{height:64px;line-height:normal!important;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--border);background:#ffffffeb!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:15}.app-topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.breadcrumb{font-size:13px;white-space:nowrap}.breadcrumb-root{color:var(--soft)}.breadcrumb-separator{color:#c9d1cb}.breadcrumb-current{color:var(--text);font-weight:550}.account-trigger{display:flex;align-items:center;gap:9px;padding:6px 10px;border:1px solid transparent;border-radius:999px;background:transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease}.account-trigger:hover{background:#f5f8f4;border-color:var(--border)}.account-avatar{background:#e5efe7!important;color:var(--brand)!important;font-weight:650}.account-name{font-size:13px;font-weight:600;color:var(--text)}.account-role{font-size:11px;color:var(--muted);background:#f2f5f1;border-radius:999px;padding:2px 8px}.account-summary{padding:4px 2px;cursor:default}.account-summary-name{font-weight:600;color:var(--text);margin-bottom:4px}.account-summary-role .ant-tag{margin-inline-end:4px}.app-content{padding:28px 32px 32px;background:var(--bg)}.app-content-inner{width:100%;max-width:1440px;margin:0 auto}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:320px;color:var(--muted)}.app-footer{margin-top:36px;padding-top:18px;border-top:1px solid rgba(228,233,226,.7);text-align:center;font-size:11px;color:#aab3ac;letter-spacing:.02em}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.page-title{margin:0;font-size:28px;line-height:1.18;letter-spacing:-.03em;font-weight:650;color:var(--text)}.page-description{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.page-extra{padding-bottom:2px}.text-small{font-size:12px}.text-muted{color:var(--muted)}.nowrap{white-space:nowrap}.break-all{word-break:break-all}.mono-muted{font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:11.5px;color:var(--soft)}.number-cell{font-variant-numeric:tabular-nums;font-weight:600}.inline-tag{margin-inline-start:6px;vertical-align:1px}.section-label{font-size:12px;font-weight:650;color:var(--soft);letter-spacing:.08em;text-transform:uppercase;margin:22px 0 12px}.page-alert,.form-alert{margin-bottom:18px}.input-prefix{color:#a9b4ac}.ant-btn{box-shadow:none}.ant-tag{border-radius:6px;font-size:11.5px;line-height:20px}.filter-card,.table-card{border-radius:16px!important;border:1px solid var(--border)!important;box-shadow:0 1px 2px #16312105;background:var(--surface)}.filter-card{margin-bottom:16px}.filter-card .ant-card-body{padding:16px 18px}.table-card{overflow:hidden}.table-card .ant-card-body{padding:0}.table-card .ant-table{background:transparent}.table-card .ant-table-thead>tr>th{background:#fafbf8!important;color:#65726a!important;font-weight:600;font-size:12px;border-bottom:1px solid var(--border);white-space:nowrap}.table-card .ant-table-tbody>tr>td{padding-top:13px;padding-bottom:13px;font-size:13px}.table-card .ant-table-pagination{padding:0 16px;margin:16px 0 14px!important}.clickable-row{cursor:pointer}.clickable-row:hover>td{background:#f8faf7!important}.user-cell{display:flex;align-items:center;gap:10px;min-width:0}.user-cell .ant-avatar{background:#e7f0e9!important;color:var(--brand)!important;font-weight:650;flex-shrink:0}.user-cell-name{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-weight:600;color:var(--text)}.user-cell-meta{margin-top:2px;font-size:11.5px;color:var(--soft);font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace}.admin-cell-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eef4ee;color:var(--brand);font-size:16px;flex-shrink:0}.dashboard-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 34px;margin-bottom:20px;border-radius:20px;color:#fff;background:linear-gradient(118deg,#1d3f2d,#2f6b4f 58%,#5c8b6d);box-shadow:0 20px 45px -32px #1f4a31e6}.dashboard-hero:after{content:"";position:absolute;right:-70px;top:-110px;width:320px;height:320px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle,rgba(255,255,255,.08),transparent 65%);pointer-events:none}.dashboard-eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#ffffff9e;margin-bottom:10px}.dashboard-hero h2{margin:0;font-size:clamp(24px,2.2vw,32px);line-height:1.24;font-weight:600;letter-spacing:-.02em}.dashboard-hero p{margin:10px 0 0;max-width:540px;color:#ffffffad;font-size:13px;line-height:1.7}.dashboard-hero-badge{position:relative;z-index:1;display:flex;align-items:center;gap:9px;white-space:nowrap;padding:11px 16px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);font-size:12.5px;color:#ffffffe6}.stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{border-radius:16px!important;border:1px solid var(--border)!important;background:var(--surface)}.stat-card .ant-card-body{padding:18px 18px 16px}.stat-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:17px;margin-bottom:16px}.stat-icon-green{background:#e8f2ea;color:#2f6b4f}.stat-icon-blue{background:#e9eff8;color:#3f6aa8}.stat-icon-amber{background:#fbf0db;color:#b7791f}.stat-icon-red{background:#fbe9e7;color:#c0503f}.stat-icon-teal{background:#e3f3f0;color:#2c7a6e}.stat-label{font-size:12.5px;color:var(--muted)}.stat-value{margin:4px 0 5px;font-size:29px;font-weight:650;line-height:1.1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stat-hint{font-size:11px;color:#a2aca4}.dashboard-grid{margin-top:0!important}.panel-card{border-radius:16px!important;border:1px solid var(--border)!important;height:auto}.dashboard-grid>.ant-col:first-child .panel-card{height:100%}.panel-card .ant-card-head{min-height:54px;padding:0 20px;border-bottom:1px solid #f0f2ed}.panel-card .ant-card-head-title{font-size:14px;font-weight:600}.panel-card .ant-card-body{padding:8px 20px 20px}.audit-list-item{padding:14px 0!important;border-block-end:1px solid #f3f5f0!important}.audit-list-item:last-child{border-block-end:0!important}.audit-list-content{min-width:0}.audit-list-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:550}.audit-action-code{font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:10.5px;color:#9aa59e;background:#f5f7f3;border-radius:4px;padding:1px 6px}.audit-list-meta{margin-top:6px;display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11.5px;color:var(--muted)}.meta-dot{color:#c5cec7}.reminder-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #eef1ea;font-size:13px;color:var(--muted)}.reminder-row:first-child{padding-top:6px}.reminder-number{font-size:21px;font-weight:650;color:var(--text);font-variant-numeric:tabular-nums;margin-right:2px}.reminder-note{margin-top:16px!important;font-size:11.5px!important;line-height:1.75!important}.quick-panel{margin-top:20px}.quick-links{display:flex;flex-direction:column;gap:4px}.quick-links button{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease}.quick-links button:hover{background:#f7f9f5;border-color:var(--border)}.quick-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eef4ee;color:var(--brand);font-size:15px;flex-shrink:0}.quick-links strong{display:block;font-size:13px;font-weight:600;color:var(--text)}.quick-links small{display:block;margin-top:2px;font-size:11px;color:var(--soft)}.user-detail-head{display:flex;align-items:center;gap:16px;margin-bottom:24px}.user-detail-head .ant-avatar{background:#e7f0e9!important;color:var(--brand)!important;font-size:24px;font-weight:650}.user-detail-name{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:650;letter-spacing:-.02em}.user-detail-id{margin-top:4px;font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:11.5px;color:var(--soft)}.detail-descriptions{padding:14px 16px;background:#fafbf8;border:1px solid #eef1ea;border-radius:12px}.detail-stats .ant-statistic-title{font-size:12px;color:var(--muted)}.detail-stats .ant-statistic-content{font-size:20px;font-weight:600}.drawer-actions{margin-top:26px;padding-top:20px;border-top:1px solid #eef1ea}.task-cell-title{font-weight:550;color:var(--text);line-height:1.45}.task-cell-meta{margin-top:6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-course{font-size:11.5px;color:var(--soft)}.task-time{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text)}.task-time>.anticon{color:#a6b1a8}.task-time>span{display:flex;flex-direction:column;gap:1px}.task-time-label{font-size:10.5px;color:var(--soft)}.task-time-empty{color:var(--soft)}.audit-actor,.audit-resource{display:flex;flex-direction:column;gap:3px}.audit-action{display:flex;flex-direction:column;gap:3px;font-size:12.5px;font-weight:550}.audit-descriptions{margin-bottom:4px}.audit-json{margin:0;max-height:300px;overflow:auto;padding:16px;border-radius:12px;background:#122017;color:#d6e5da;font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:12px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.permission-label-row{display:flex;align-items:center;justify-content:space-between;width:100%}.permission-checkbox-group{display:block!important;width:100%}.permission-group{padding:12px 14px 10px;margin-bottom:12px;border:1px solid #eef1ea;border-radius:12px;background:#fafbf8}.permission-group:last-child{margin-bottom:0}.permission-group-title{margin-bottom:8px;font-size:12px;font-weight:650;color:var(--muted);letter-spacing:.04em}.permission-checkbox{display:flex!important;align-items:flex-start;margin-inline-start:0!important}.permission-checkbox .ant-checkbox+span{display:flex;flex-direction:column;gap:1px;padding-inline-end:0;font-size:12.5px;line-height:1.5}.permission-code{font-family:SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:10.5px;color:var(--soft)}.status-card{border-radius:16px!important;border:1px solid var(--border)!important;height:100%}.status-card .ant-card-head{min-height:54px;border-bottom:1px solid #f0f2ed}.status-card .ant-card-head-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.status-card .ant-card-head-title .anticon{color:var(--brand)}.status-note{font-size:13px!important;line-height:1.75!important;margin-bottom:16px!important}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(460px,.92fr);background:#f3f5f0}.login-brand{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:52px 64px;color:#fff;background:radial-gradient(circle at 85% 8%,rgba(126,174,144,.22),transparent 42%),linear-gradient(150deg,#173a29,#214a35 52%,#2f6348)}.login-brand-glow{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(154,199,166,.2),transparent 68%)}.login-brand-glow-top{width:560px;height:560px;right:-220px;top:-230px}.login-brand-glow-bottom{width:460px;height:460px;left:-200px;bottom:-220px}.login-brand-content{position:relative;z-index:1;margin-top:7vh;max-width:560px}.login-logo{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:600;letter-spacing:.02em}.login-logo-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);font-size:20px;font-weight:700}.login-brand h1{margin:38px 0 20px;font-size:clamp(40px,4.4vw,64px);line-height:1.12;letter-spacing:-.04em;font-weight:600}.login-brand-copy{margin:0;max-width:480px;color:#ffffffb3;font-size:15px;line-height:1.8}.login-features{display:flex;flex-direction:column;gap:13px;margin-top:42px}.login-feature{display:flex;align-items:center;gap:11px;color:#fffc;font-size:13.5px}.login-feature .anticon{color:#8fc19e;font-size:15px}.login-brand-footer{position:relative;z-index:1;font-size:11px;color:#ffffff6b;letter-spacing:.04em}.login-panel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px 72px;background:radial-gradient(circle at 15% 12%,rgba(218,229,216,.55),transparent 34%),#f3f5f0}.login-back{position:absolute;top:28px;left:36px;font-size:12px;color:var(--muted);text-decoration:none;transition:color .15s ease}.login-back:hover{color:var(--text)}.login-card{width:100%;max-width:420px;padding:40px 36px 34px;border:1px solid rgba(228,233,226,.9);border-radius:24px;background:#fff;box-shadow:0 30px 70px -42px #173a2966}.login-mobile-logo{display:none}.login-heading h2{margin:0;font-size:27px;letter-spacing:-.03em;font-weight:650;color:var(--text)}.login-heading p{margin:8px 0 26px;color:var(--muted);font-size:13px}.login-alert{margin-bottom:18px}.login-card .ant-form-item-label>label{font-size:12.5px;color:var(--muted);font-weight:550}.login-card .ant-input-affix-wrapper,.login-card .ant-input{border-radius:10px}.login-submit{height:46px;margin-top:8px;font-weight:600;border-radius:10px}.login-hint{display:flex;align-items:flex-start;gap:8px;margin-top:24px;padding-top:20px;border-top:1px solid #f0f2ed;color:#8a958d;font-size:11px;line-height:1.65}.login-hint .anticon{margin-top:2px;color:#a9b4ac}.login-copyright{position:absolute;bottom:26px;font-size:11px!important}@media(max-width:1280px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1024px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.login-panel{min-height:100vh;padding:40px 20px 72px}.login-mobile-logo{display:flex;align-items:center;gap:10px;margin-bottom:26px;font-size:15px;font-weight:600;color:var(--brand)}.login-mobile-logo .login-logo-mark{width:34px;height:34px;border-radius:10px;border:0;background:linear-gradient(135deg,#2f6b4f,#6c9c7b);font-size:17px}.app-content{padding:24px 22px 28px}.dashboard-hero{padding:26px}}@media(max-width:820px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero{flex-direction:column;align-items:flex-start}.dashboard-hero-badge{white-space:normal}.account-role{display:none}.app-topbar{padding:0 14px}.page-title{font-size:24px}}@media(max-width:560px){.stat-grid{grid-template-columns:1fr}.app-content{padding:20px 14px 24px}.app-topbar{height:58px}.breadcrumb{font-size:12px}.account-name{display:none}.login-card{padding:30px 22px 26px;border-radius:20px}.page-extra{width:100%}.filter-card .ant-card-body{padding:14px}}
