/* Academy noticeboard: warm paper, ruled sections, restrained ink. */
:root,body{--bg:#f6f5f0;--paper:#fffefa;--ink:#293d39;--muted:#737c74;--line:#dedfd5;--soft:#efefe7;--accent:#31574b;--accent-soft:#e8ede5;--radius:4px;--shadow:0 14px 48px #26332b19}
body{letter-spacing:-.025em;background:var(--bg)}body[data-tone=blue]{--accent:#365571;--accent-soft:#e8edf1}body[data-tone=ink]{--accent:#424d51;--accent-soft:#eaedeb}body[data-tone=sand]{--accent:#806a48;--accent-soft:#f0ebe1}
.btn,.badge,.input,.field input,.field select,.field textarea,.table-shell,.sheet-panel,.line-list,.stats-strip,.modal,.msw-result,.v2-log{border-radius:4px;box-shadow:none}.btn{font-weight:600;border-color:#d4d8cd}.btn.primary{box-shadow:none;background:var(--accent);border-color:var(--accent)}.btn.primary:hover{background:var(--accent);filter:brightness(.94)}.btn:hover{background:#eeeee5}.btn.ghost:hover{background:var(--soft)}.mark{background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:1px;box-shadow:none;font:700 22px Georgia,serif;letter-spacing:-2px}
.sidebar{background:#f1f0e8;border-right:1px solid var(--line);padding:30px 14px 16px}.sidebar .logo{padding:0 10px 26px;border-bottom:1px solid #d9dccf;margin-bottom:14px}.logo small{letter-spacing:.025em;font-size:10px;color:#7a8176}.nav-label{letter-spacing:.08em;color:#8a8e80;font-size:10px}.nav-item{border-radius:2px;padding:11px 12px;color:#617064}.nav-item.active{background:#e2e8dc;color:#274c3b;box-shadow:inset 3px 0 #31574b;font-weight:700}.avatar{border-radius:50%;background:#e6e8dd;color:#53644f}.sidebar-bottom{border-top-color:#d9dccf}.topbar{background:#fffefa;border-bottom:1px solid var(--line);box-shadow:none;height:66px}.breadcrumb{color:#909587}.breadcrumb strong{color:#445746}.main{max-width:1540px;margin:0 auto;padding:36px 36px 65px}.page-head{padding-bottom:22px;border-bottom:1px solid #bcc7b6;margin-bottom:24px}.page-head h1{font-size:27px;color:#30473a;font-weight:650;letter-spacing:-.045em}.page-head .subtitle{color:#7a8277;font-size:12px;margin-top:8px}.stats-strip{border:0;border-top:2px solid #5e735b;border-bottom:1px solid #bcc7b6;background:#fffefa;border-radius:0;padding:23px 0;margin-bottom:30px}.stat{border-right:1px solid #e0e2d5}.stat strong{font-family:Georgia,'Malgun Gothic',serif;font-weight:400;font-size:34px}.stat label{color:#62705f;font-size:12px}.stat small{color:#8b9182}.section>h2,.section-head h2{font-size:17px}.section{margin-bottom:28px}.table-shell{border:1px solid #dce0d4}.table-tools{background:#fffefa}.data-table th{background:#f0f1e8;border-bottom:1px solid #d4dbca;color:#677360;font-weight:600}.data-table td{background:#fffefa;border-bottom-color:#e8eade;color:#445344}.data-table tbody tr:hover td{background:#f3f5ed}.data-table .primary-text{color:#293f32}.table-footer{background:#fffefa}.search-trigger{border-radius:3px;background:#f6f6ef}.contextbar{font-size:12px}.badge{padding:3px 6px;font-size:10px;background:#eef0e7}.empty{padding:35px 20px;color:#88917e}.empty>svg{opacity:.35}.empty strong{font-size:13px;font-weight:500}.msw-banner{border:0;border-top:1px solid #ccd4c4;border-bottom:1px solid #ccd4c4;border-radius:0;background:#edf0e5;padding:17px 20px;margin:0 0 24px;box-shadow:none}.msw-banner small{color:#7a8870}.msw-banner:hover{background:#e6ecdd}.settings-section{padding:25px;background:#fffefa;border:1px solid var(--line);margin-bottom:20px}.settings-section h2{margin-bottom:13px}.v2-log{background:#24382f;color:#d8e3d4;font-size:12px}.msw-result{background:#edf0e5;color:#476043;border-left:3px solid #7b9170}.v2-sms-grid>.section{padding:22px;background:#fffefa;border:1px solid var(--line);min-width:0}.v2-sms-grid h2{margin-bottom:18px}.v2-sms-grid form{display:flex;gap:7px;flex-wrap:wrap}.v2-sms-grid input[name=keyword]{flex:1;min-width:120px}.v2-sms-grid .field{display:block;margin-top:14px}.v2-sms-grid .field select{display:block;width:100%;margin-top:7px;padding:9px;border:1px solid #d5dcce;background:white;border-radius:3px}.v2-sms-grid .v2-message{border:1px solid #d5dcce;border-radius:3px}.modal{border-radius:7px}.modal-head{border-bottom:1px solid var(--line)}.modal-overlay{background:#23372a55;backdrop-filter:blur(2px)}.toast{border-radius:4px}
.academy-seal{border:1px solid #6b7658;color:#556143;display:inline-flex;align-items:center;justify-content:center;width:35px;height:39px;flex:none;font:24px Georgia,'Batang',serif}.login-layout{grid-template-columns:minmax(0,1.3fr) minmax(380px,.85fr);background:#f8f7f0;min-height:100svh}.login-layout>.login-brand{display:flex;min-height:100svh;background:#eeeee3;border-right:1px solid #d8dccb;padding:48px clamp(30px,6vw,100px) 30px;isolation:isolate}.login-brand:before,.login-brand:after{display:none!important}.login-brand .logo{gap:13px}.login-brand .logo strong{font-size:21px;letter-spacing:-.08em}.login-brand .logo small{margin-top:5px;letter-spacing:.03em;font-size:10px}.login-story{margin:74px 0 30px;max-width:640px}.login-story .eyebrow{font-size:11px;color:#6f7a60;letter-spacing:.02em;margin-bottom:26px;display:flex;align-items:center;gap:14px}.login-story .eyebrow:before{content:'';height:1px;width:26px;background:#8c9478}.login-story h1{font-family:'Batang','Georgia','Malgun Gothic',serif;font-size:clamp(37px,3.5vw,55px);font-weight:500;letter-spacing:-.055em;line-height:1.5;color:#35472e;white-space:pre-line;overflow-wrap:anywhere}.login-story p{display:block!important;margin-top:23px;max-width:470px;font-size:13px;color:#737d64;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere}.login-notice-rule{margin-top:36px;width:40px;height:3px;background:#a9ad95}.login-promotions{margin:12px 0 28px;position:relative;z-index:1}.promotion-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.promotion-links[data-count="1"]{grid-template-columns:1fr}.promotion-links[data-count="2"],.promotion-links[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-link{display:grid;grid-template-columns:1fr auto;align-content:space-between;gap:9px;min-height:98px;padding:14px;background:#f8f8f0;border:1px solid #cdd4bf;color:#465538;border-radius:0;transition:background .15s,border-color .15s;min-width:0}.promotion-link:hover{background:#fffef9;border-color:#7b906b}.promotion-link .promotion-index{grid-column:1/-1;font:11px Georgia,serif;letter-spacing:.08em;color:#8e977e}.promotion-link strong{font-size:13px;font-weight:600;overflow-wrap:anywhere;line-height:1.5}.promotion-link>span:last-child{font-size:18px}.brand-bottom{border-top:1px solid #cdd2be;padding-top:16px;display:flex;justify-content:space-between;color:#919882;font-size:10px;letter-spacing:.02em}.login-layout>.login-side{background:#fffefa;min-height:100svh;padding:65px clamp(30px,4.5vw,80px);border:0;display:flex;align-items:center;justify-content:center}.login-form{max-width:335px;width:100%;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.login-form-number{font:10px Georgia,serif;letter-spacing:.1em;color:#9c9e8b;display:block;margin-bottom:22px}.login-form h2{font-size:26px;letter-spacing:-.04em;color:#354934;font-weight:600}.login-form .subtitle{font-size:12px;line-height:1.8;color:#838c76;margin:12px 0 35px}.login-form .field label{font-size:12px;color:#647354}.login-form .field input{border-radius:2px;background:#fbfcf5;border:1px solid #d5ddc9;font-size:14px;height:48px}.login-form .field input:focus{border-color:#687c59;box-shadow:none}.login-form .form-grid{gap:20px}.login-form .login-submit{margin-top:25px;background:#3f5937;border:1px solid #3f5937;border-radius:2px;height:49px;box-shadow:none}.login-form .login-submit:hover{background:#334c2d}.login-form .login-foot{border-top:1px solid #e1e5d8;padding-top:22px;margin-top:26px;color:#8b947e;font-size:11px;line-height:1.8}.login-form .mobile-logo{display:none}.login-layout[data-align=center] .login-story{text-align:center}.login-layout[data-align=center] .eyebrow{justify-content:center}.login-layout[data-align=center] .login-story p{margin-left:auto;margin-right:auto}.login-layout[data-align=center] .login-notice-rule{margin-left:auto;margin-right:auto}.login-layout[data-layout=center]{max-width:1150px;margin:auto;grid-template-columns:minmax(0,1fr) minmax(360px,1fr)}.login-layout[data-layout=center]>.login-brand{display:flex!important}.design-editor{grid-template-columns:minmax(320px,390px) minmax(380px,1fr)}.design-controls{border-radius:3px;background:#fffefa;padding:24px}.design-controls h2{font-size:16px;margin-bottom:16px}.design-live{top:86px}.design-live-label{font-size:12px;color:#63745d}.promotion-editor{margin-top:25px;padding-top:25px;border-top:1px solid #dce2d1}.promotion-editor h2{display:flex;justify-content:space-between;margin-bottom:8px}.promotion-editor p{font-size:11px;color:#8b9581;line-height:1.8;margin-bottom:16px}.promo-edit-row{display:grid;grid-template-columns:18px 1fr;gap:8px;padding:15px 0;border-top:1px solid #e3e7d9}.promo-edit-number{color:#8e987d;font:12px Georgia,serif;padding-top:3px}.promo-edit-fields{min-width:0;display:grid;gap:10px}.promo-edit-fields label{font-size:11px;color:#6b785c}.promo-edit-fields input{display:block;width:100%;margin-top:5px;border:1px solid #d5ddc9;border-radius:2px;background:#fff;padding:9px;color:#43583a;font-size:12px}.promo-edit-tools{grid-column:2;display:flex;justify-content:flex-end;gap:3px}.promo-edit-tools .btn{font-size:11px;padding:3px 8px;min-height:27px}#promo-add{width:100%;margin-top:12px}#design-live-canvas{border-radius:3px}#design-live-canvas .login-layout.design-preview{grid-template-columns:1.15fr 1fr!important}#design-live-canvas .design-preview .login-brand{display:flex!important;padding:35px 42px!important}#design-live-canvas .design-preview .login-story{margin:42px 0 25px!important}#design-live-canvas .design-preview .login-story h1{font-size:39px!important}#design-live-canvas .design-preview .login-form{max-width:325px!important}#design-live-canvas .design-preview .login-promotions{margin-top:0!important}#design-live-canvas .design-preview .promotion-link{min-height:78px;font-size:12px}#design-live-canvas .design-preview .login-notice-rule{margin-top:20px}
.pc-only{display:inline-flex!important}.pc-indicator{font-size:11px!important;gap:7px!important;white-space:nowrap;color:#7d8375!important;padding:7px 9px!important}.pc-light{width:7px;height:7px;border-radius:50%;background:#acb1a6;display:inline-block;flex:none}.pc-indicator[data-state=connected]{color:#3d6a40!important}.pc-indicator[data-state=connected] .pc-light{background:#409350;box-shadow:0 0 0 3px #e6f1e0}.pc-indicator[data-state=connecting] .pc-light{background:#c4a45c;animation:pc-wait 1s alternate infinite}.pc-indicator[data-state=update] .pc-light{background:#bc8243}.pc-dialog{z-index:500;display:flex;align-items:center;justify-content:center;padding:20px}.pc-dialog .modal{width:520px;max-width:100%;border-top:3px solid #617a4e}.pc-dialog-content{padding:35px}.pc-dialog-kicker{font-size:11px;letter-spacing:.05em;color:#849375;display:block;margin-bottom:17px}.pc-dialog h2{font-size:23px;line-height:1.4;margin-bottom:18px}.pc-dialog p{font-size:13px;line-height:1.9;white-space:pre-line;margin-bottom:14px;color:#65765a}.pc-dialog p.muted{font-size:12px;color:#879279}.pc-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:24px 0 18px}.pc-dialog-actions button:last-child{grid-column:1/-1;font-size:12px}.pc-dialog small{font-size:10px;color:#8f9981}@keyframes pc-wait{to{opacity:.35}}
@media(max-width:1180px){.main{padding:28px 24px}.login-layout>.login-brand{padding-left:38px;padding-right:38px}.login-layout>.login-side{padding-left:32px;padding-right:32px}.promotion-links{gap:7px}.promotion-link{padding:12px}.promotion-link strong{font-size:12px}.design-editor{grid-template-columns:1fr}.design-live{position:static;max-width:850px}.design-controls .field.wide{grid-column:1/-1}}
@media(max-width:760px){.main{padding:25px 16px 65px}.sidebar{padding-top:23px}.topbar{height:58px}.stats-strip{padding:0;grid-template-columns:1fr 1fr}.stat{padding:17px}.stat strong{font-size:29px}.page-head{padding-bottom:18px}.pc-indicator{max-width:160px;font-size:10px!important;padding:6px!important}.topbar-right{gap:5px!important}.login-layout,.login-layout[data-layout=center]{display:flex!important;flex-direction:column;min-height:100svh}.login-layout>.login-brand{display:flex!important;min-height:0!important;padding:28px 25px 25px;border-right:0;border-bottom:1px solid #d4dac6;order:0}.login-brand .logo strong{font-size:18px}.login-story{margin:25px 0 8px}.login-story .eyebrow{font-size:10px;margin-bottom:10px}.login-story h1{font-size:30px;line-height:1.4}.login-story p{font-size:12px;margin-top:14px}.login-notice-rule{display:none}.login-promotions{margin:14px 0 0}.promotion-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.promotion-links[data-count="3"]{grid-template-columns:1fr}.promotion-link{min-height:60px;padding:11px;grid-template-columns:18px 1fr auto;align-content:center;align-items:center;gap:8px}.promotion-link .promotion-index{grid-column:auto;font-size:9px}.promotion-link strong{font-size:12px}.brand-bottom{display:none}.login-layout>.login-side{min-height:0!important;padding:30px 25px 40px;order:1}.login-form .mobile-logo{display:none}.login-form-number{display:none}.login-form .subtitle{margin-bottom:22px}.login-form .field input{font-size:16px}.login-form .login-foot{margin-top:23px}.pc-dialog-content{padding:27px 23px}.pc-dialog h2{font-size:21px}.pc-dialog-actions{grid-template-columns:1fr}.pc-dialog-actions button:last-child{grid-column:auto}.settings-section{padding:20px}.design-controls{padding:18px}.design-editor{display:block}.design-live{margin-top:20px}.msw-banner{padding:16px}.v2-sms-grid>.section{padding:18px}}
@media(prefers-reduced-motion:reduce){.pc-light{animation:none!important}}

.login-form{animation:none}.toast{background:#3c5141;max-width:480px}#toast-root .toast:nth-last-child(n+4){display:none}
