:root{--ink:#25372f;--ink2:#33483e;--lav:#a8a1c9;--lav-light:#f1eff8;--bg:#f5f7f5;--line:#e2e8e3;--muted:#718077;--white:#fff;--danger:#a83b45;--ok:#23764c;--shadow:0 10px 30px rgba(31,53,43,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px max(24px,calc((100% - 1240px)/2));background:var(--ink);color:#fff}.brand{display:flex;align-items:center;gap:12px}.brand-mark,.logo-large{display:grid;place-items:center;background:var(--lav);color:#fff;font-family:Georgia,serif;font-weight:bold}.brand-mark{width:44px;height:44px;border-radius:14px;font-size:25px}.brand strong{display:block;letter-spacing:1.4px}.brand small{display:block;color:#d6dfd9;font-size:12px}.user-area{display:flex;gap:18px;align-items:center;font-size:13px}.user-area a{padding:7px 12px;border:1px solid #607267;border-radius:9px}.container{width:min(1240px,calc(100% - 36px));margin:30px auto 64px}.welcome,.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.welcome h1,.page-heading h1{margin:4px 0;font-size:clamp(23px,3vw,32px);letter-spacing:-.6px}.welcome p,.page-heading p{margin:5px 0;color:var(--muted)}.eyebrow{font-size:11px;color:#7d719f;font-weight:bold;letter-spacing:1.2px;text-transform:uppercase}.version-pill,.status-chip{border:1px solid #dcd5ee;background:var(--lav-light);color:#6a5c8d;padding:8px 13px;border-radius:99px;font-size:12px;white-space:nowrap}.notice{padding:14px 17px;background:#fff;border:1px solid var(--line);border-right:4px solid var(--lav);border-radius:12px;color:#53645a;margin-bottom:22px;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:32px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;box-shadow:var(--shadow)}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;font-size:28px;margin:8px 0;color:var(--ink2)}.section-title{font-size:20px;margin:0 0 15px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.module-card{display:flex;align-items:flex-start;gap:13px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;min-height:142px;transition:.15s box-shadow,.15s transform}.module-card:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:#c9c1df}.module-number{display:grid;place-items:center;min-width:37px;height:37px;border-radius:11px;background:var(--lav-light);color:#766b98;font-size:12px;font-weight:bold}.module-card h3{font-size:15px;margin:0 0 2px}.module-card small{color:#897eaa;font-size:11px}.module-card p{font-size:12px;color:var(--muted);margin:9px 0 0}.arrow{margin-right:auto;color:#8a7cae}.back-link{display:inline-block;color:#766b98;margin-bottom:20px;font-size:13px}.empty-state{margin-top:26px;background:#fff;border:1px dashed #cfc8e0;border-radius:18px;padding:50px 24px;text-align:center}.empty-icon{font-size:38px;color:#8e82b1}.empty-state h2{font-size:20px}.empty-state p{max-width:650px;margin:0 auto;color:var(--muted)}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin:18px 0;box-shadow:var(--shadow)}.panel h2{font-size:18px;margin:0 0 17px}.user-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.user-form label,.form-stack label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:bold}.user-form input,.user-form select,.form-stack input,input{width:100%;padding:12px 13px;border:1px solid #dce3dd;border-radius:10px;background:#fff;font:inherit;color:var(--ink);outline:none}.user-form input:focus,.user-form select:focus,.form-stack input:focus{border-color:#9d92bd;box-shadow:0 0 0 3px #f0edf7}.primary,.secondary{border:0;border-radius:10px;padding:12px 17px;font:inherit;font-weight:bold;cursor:pointer}.primary{background:var(--ink);color:#fff}.primary:hover{background:var(--ink2)}.secondary{background:#eeebf6;color:#62577e}.small{padding:6px 10px;font-size:12px}.full{width:100%;margin-top:18px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:right;padding:12px;border-bottom:1px solid var(--line);font-size:13px}th{background:#f7f7fa;color:#59665d}.inline-form{margin:0}.alert{padding:12px 14px;border-radius:10px;margin:12px 0;font-size:13px}.alert.error{background:#fff0f1;color:var(--danger);border:1px solid #f3d2d5}.alert.success{background:#edf8f1;color:var(--ok);border:1px solid #d1ebda}.narrow{max-width:680px}.form-stack{display:flex;flex-direction:column;gap:17px}footer{text-align:center;color:#8b978f;padding:20px;font-size:11px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 20%,#e5e0f2,transparent 35%),var(--bg)}.login-shell{display:grid;grid-template-columns:1fr 1.1fr;width:min(900px,100%);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 25px 80px rgba(37,55,47,.15);border:1px solid #e6e7e5}.login-brand{background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:42px 24px}.logo-large{width:78px;height:78px;border-radius:24px;font-size:45px;box-shadow:0 0 0 8px rgba(255,255,255,.07)}.login-brand h1{font-size:30px;letter-spacing:4px;margin:20px 0 0}.login-brand p{font-size:11px;letter-spacing:2px;color:#d6dfd9}.login-brand span{font-size:13px;color:#e0e6e2}.login-form{padding:46px 38px}.login-form h2{margin:0;font-size:25px}.muted{color:var(--muted);font-size:12px}.login-form form{margin:24px 0;display:flex;flex-direction:column;gap:9px}.login-form label{font-size:13px;font-weight:bold;margin-top:5px}.login-form input{padding:13px}.standalone{width:min(520px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:var(--shadow)}@media(max-width:900px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.topbar{padding:13px 16px;align-items:flex-start}.user-area{flex-direction:column;gap:4px;align-items:flex-end}.container{width:calc(100% - 24px);margin-top:20px}.welcome,.page-heading{align-items:flex-start;flex-direction:column}.module-grid{grid-template-columns:1fr}.stats{gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:23px}.login-shell{grid-template-columns:1fr}.login-brand{padding:28px 18px}.logo-large{width:55px;height:55px;font-size:32px;border-radius:17px}.login-brand h1{font-size:23px;margin-top:12px}.login-brand p{margin:4px}.login-form{padding:28px 23px}.user-form{grid-template-columns:1fr}}

/* LAVENDER brand refresh — inspired by the supplied brand logo and tissue packaging */
:root{--ink:#29252f;--ink2:#3c3346;--lav:#6b4b86;--lav-light:#f4eff7;--bg:#f8f7fa;--line:#e7e0eb;--muted:#77717c;--white:#fff;--sage:#858b68;--shadow:0 14px 38px rgba(54,38,68,.075);--lav-mid:#d9cbe4}
body{background:linear-gradient(135deg,#faf9fb 0%,#f6f2f8 54%,#f8f7f3 100%);color:var(--ink)}
.topbar{background:#29232f;border-bottom:3px solid #8a739c;box-shadow:0 4px 18px rgba(35,24,43,.12)}
.brand-mark{background:#fff url("lavender-logo.png") center/contain no-repeat;color:transparent;border-radius:12px;border:1px solid rgba(255,255,255,.3)}
.brand strong{letter-spacing:1.1px}
.container{margin-top:28px}
.eyebrow{color:#75528b}
.version-pill,.status-chip{background:#f3edf7;border-color:#dfd2e8;color:#6b4b86}
.notice{border-right-color:#806198;background:#fffdfd}
.primary{background:#332a3b}.primary:hover{background:#51405e}
.secondary{background:#f0e9f4;color:#65487b}
.back-link{color:#704e87}
.module-number{background:#f2ebf7;color:#6e4d85}
.module-card:hover{border-color:#c8b5d6}
.module-card small{color:#806198}
.login-page{background:radial-gradient(circle at 15% 15%,#e7dced 0,transparent 34%),radial-gradient(circle at 90% 90%,#e6e8d9 0,transparent 30%),#f8f6fa}
.login-shell{border-color:#e8dfed;box-shadow:0 28px 90px rgba(55,39,68,.17)}
.login-brand{background:linear-gradient(145deg,#302737 0%,#403047 55%,#4c3858 100%);position:relative;isolation:isolate;overflow:hidden}
.login-brand::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 30%,rgba(151,122,174,.22),transparent 48%),linear-gradient(135deg,transparent 55%,rgba(134,143,102,.18))}
.login-brand h1{letter-spacing:0;font-size:24px;margin:12px 0 0}
.login-brand p{color:#e1d4e8}
.logo-large{background:#fff url("lavender-logo.png") center/contain no-repeat;color:transparent}
.login-form input:focus{border-color:#8b6ba1;box-shadow:0 0 0 3px #f1e9f6}
.user-form input:focus,.user-form select:focus,.form-stack input:focus{border-color:#8b6ba1;box-shadow:0 0 0 3px #f1e9f6}
.alert.success{background:#f0f6ec;color:#4f6542;border-color:#d9e6d0}
.stats-refresh .stat-card{border-color:#e9e1ed;position:relative;overflow:hidden}
.stats-refresh .stat-card::after{content:"";position:absolute;inset:auto -20px -36px auto;width:100px;height:100px;border-radius:50%;background:#f3edf7;z-index:0}
.stats-refresh .stat-card>*{position:relative;z-index:1}
.stat-head{display:flex;justify-content:space-between;align-items:center;color:#6f6875;font-size:12px}
.stat-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#f1eaf5;color:#76558b;font-size:16px}
.dashboard-container{margin-top:25px}
.hero-panel{position:relative;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:20px;overflow:hidden;padding:34px 38px;margin-bottom:22px;border-radius:24px;background:linear-gradient(120deg,#fff 0%,#faf6fc 55%,#f0e8f4 100%);border:1px solid #e6dbea;box-shadow:var(--shadow)}
.hero-copy,.hero-brand{position:relative;z-index:1}
.hero-panel h1{font-size:clamp(25px,3vw,36px);line-height:1.35;margin:12px 0 8px;color:#2f2736}
.hero-panel h1 span{color:#76518c}
.hero-panel p{color:#756e7a;margin:0;max-width:650px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.hero-actions .primary,.hero-actions .secondary{display:inline-flex;align-items:center;gap:12px}
.hero-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:190px}
.hero-logo{width:135px;height:150px;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(69,44,83,.08))}
.hero-brand-caption{font-size:11px;color:#82728a;text-align:center}
.hero-orb{position:absolute;border-radius:50%;pointer-events:none}
.orb-one{width:230px;height:230px;border:1px solid rgba(128,93,151,.13);top:-130px;left:40%}
.orb-two{width:140px;height:140px;background:rgba(132,143,101,.07);bottom:-90px;right:30%}
.release-note{display:flex;align-items:center;gap:13px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:15px;margin-bottom:27px}
.release-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#f2ebf7;color:#75518c;font-weight:bold}
.release-note strong{font-size:13px}
.release-note p{margin:3px 0 0;color:var(--muted);font-size:12px}
.release-tag{margin-right:auto;white-space:nowrap;font-size:10px;letter-spacing:.6px;color:#806198;background:#f7f1fa;padding:7px 9px;border-radius:99px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:6px 0 15px}
.section-heading .section-title{margin:4px 0 0;font-size:22px}
.section-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}
.section-count{border:1px solid #e4d7eb;background:#f8f3fa;color:#77578b;border-radius:10px;padding:7px 11px;font-size:12px;white-space:nowrap}
.module-grid-refresh{gap:15px}
.module-card-refresh{position:relative;min-height:150px;border-color:#e9e1ed;padding:20px 18px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.module-card-refresh:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(66,45,79,.1);border-color:#cbb5d9}
.module-card-refresh.primary{background:linear-gradient(145deg,#3a2e43,#4b3857);color:#fff;border-color:#4b3857}
.module-card-refresh.primary .module-number{background:rgba(255,255,255,.13);color:#f2e6f8}
.module-card-refresh.primary small,.module-card-refresh.primary p,.module-card-refresh.primary .arrow{color:#dfd0e7}
.module-card-refresh.primary .module-content h3{color:#fff}
.module-content{min-width:0}
.module-card-refresh .arrow{font-size:17px}
.next-step-panel{display:flex;align-items:center;gap:15px;margin-top:24px;padding:20px 22px;border-radius:18px;background:linear-gradient(110deg,#f0e8f5,#fff 78%);border:1px solid #e5d9eb}
.next-step-mark{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:14px;background:#fff;color:#76528b;font-size:22px;box-shadow:0 5px 14px rgba(66,45,79,.07)}
.next-step-panel>div:nth-child(2){flex:1}
.next-step-panel h2{font-size:16px;margin:3px 0}
.next-step-panel p{font-size:12px;color:var(--muted);margin:0}
.next-step-panel .secondary{white-space:nowrap;display:inline-flex;gap:9px;align-items:center}
.login-shell-refresh{grid-template-columns:1fr 1fr;width:min(1000px,100%);min-height:580px}
.login-brand-refresh{padding:36px 32px}
.login-brand-top{display:flex;align-items:center;justify-content:space-between;width:100%;position:absolute;top:24px;right:26px;left:26px;color:#d9c9e2}
.login-brand-label{font-size:9px;letter-spacing:1.3px}
.login-brand-dot{width:8px;height:8px;border-radius:50%;background:#9ba17a;box-shadow:0 0 0 5px rgba(155,161,122,.14)}
.login-logo-wrap{display:grid;place-items:center;width:180px;height:180px;background:rgba(255,255,255,.97);border-radius:35px;padding:16px;box-shadow:0 16px 45px rgba(12,7,18,.2);margin-top:24px}
.login-logo{width:100%;height:100%;object-fit:contain}
.login-brand-en{font-size:10px!important;letter-spacing:2.2px!important;margin:8px 0}
.login-brand-divider{width:62px;height:2px;background:#929873;margin:9px auto}
.login-brand-caption{font-size:14px!important;color:#fff!important}
.login-brand-note{font-size:11px;color:#d6c7df;margin-top:9px}
.login-decoration{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;z-index:-1}
.decoration-a{width:290px;height:290px;bottom:-170px;right:-80px}
.decoration-b{width:180px;height:180px;top:90px;left:-100px}
.login-form-refresh{display:flex;flex-direction:column;justify-content:center;padding:50px 45px}
.login-form-refresh .eyebrow{font-size:10px;letter-spacing:1.5px}
.login-form-refresh h2{font-size:30px;margin-top:9px}
.login-form-refresh .muted{font-size:13px}
.login-form-refresh form{gap:10px;margin:27px 0 18px}
.login-form-refresh label{margin-top:8px}
.login-form-refresh input{border-radius:12px;padding:14px 15px;background:#fdfcfe}
.login-form-refresh .primary{padding:14px 16px;margin-top:12px;display:flex;justify-content:center;align-items:center;gap:12px}
.login-security{display:flex;align-items:center;gap:9px;color:#706977;font-size:11px;background:#faf7fb;border:1px solid #eee5f1;padding:11px;border-radius:11px}
.security-icon{display:grid;place-items:center;width:20px;height:20px;background:#eaf0e3;color:#60744c;border-radius:50%;font-weight:bold}
.login-footnote{margin-top:16px}
@media(max-width:800px){.hero-panel{grid-template-columns:1fr;padding:26px}.hero-brand{min-height:auto;flex-direction:row;justify-content:flex-start}.hero-logo{width:65px;height:75px}.hero-brand-caption{text-align:right}.release-note{align-items:flex-start;flex-wrap:wrap}.release-tag{margin-right:43px}.login-shell-refresh{grid-template-columns:1fr}.login-brand-refresh{padding:34px 22px 27px}.login-brand-top{position:relative;top:auto;right:auto;left:auto}.login-logo-wrap{width:105px;height:105px;border-radius:25px;margin-top:22px}.login-brand-refresh h1{font-size:20px}.login-brand-note{display:none}.login-form-refresh{padding:30px 25px}.next-step-panel{align-items:flex-start;flex-wrap:wrap}.next-step-panel>div:nth-child(2){min-width:65%}}
@media(max-width:620px){.hero-panel h1{font-size:25px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions a{justify-content:center}.section-heading{align-items:flex-start}.module-card-refresh{min-height:125px}.release-tag{margin-right:0}.next-step-panel .secondary{width:100%;justify-content:center}.login-form-refresh h2{font-size:26px}}

/* Official LAVENDER ERP palette approved 2026-10-13 */
:root{
  --ink:#4B0082;
  --ink2:#390061;
  --lav:#4B0082;
  --lav-light:#F5F2EB;
  --bg:#F5F2EB;
  --line:#e5dfd2;
  --muted:#665f6a;
  --white:#ffffff;
  --sage:#858B68;
  --gold:#D4AF37;
  --shadow:0 14px 38px rgba(75,0,130,.10);
  --lav-mid:#e8d9a7;
}
body{background:linear-gradient(135deg,#F5F2EB 0%,#fffdf8 60%,#f3efe5 100%);color:#302737}
.topbar{background:#4B0082;border-bottom:3px solid #D4AF37;box-shadow:0 4px 18px rgba(75,0,130,.16)}
.brand-mark{background-color:#F5F2EB;border-color:rgba(212,175,55,.55)}
.eyebrow{color:#4B0082}
.version-pill,.status-chip{background:#F5F2EB;border-color:#D4AF37;color:#4B0082}
.notice{border-right-color:#D4AF37;background:#fffdf8}
.primary{background:#4B0082;color:#fff}
.primary:hover{background:#390061}
.secondary{background:#F5F2EB;color:#4B0082;border:1px solid #e4d8b8}
.back-link{color:#4B0082}
.module-number{background:#F5F2EB;color:#4B0082;border:1px solid #e4d8b8}
.module-card small,.arrow{color:#4B0082}
.module-card:hover,.module-card-refresh:hover{border-color:#D4AF37}
.login-page{background:radial-gradient(circle at 15% 15%,rgba(212,175,55,.16) 0,transparent 34%),radial-gradient(circle at 90% 90%,rgba(133,139,104,.16) 0,transparent 30%),#F5F2EB}
.login-shell{border-color:#e5dfd2;box-shadow:0 28px 90px rgba(75,0,130,.17)}
.login-brand{background:linear-gradient(145deg,#4B0082 0%,#390061 58%,#2d004f 100%)}
.login-brand::before{background:radial-gradient(ellipse at 50% 30%,rgba(212,175,55,.18),transparent 48%),linear-gradient(135deg,transparent 55%,rgba(133,139,104,.20))}
.login-brand-divider{background:#D4AF37}
.login-brand-dot{background:#D4AF37;box-shadow:0 0 0 5px rgba(212,175,55,.16)}
.login-brand-top{color:#F5F2EB}
.login-form input:focus,.user-form input:focus,.user-form select:focus,.form-stack input:focus{border-color:#4B0082;box-shadow:0 0 0 3px rgba(75,0,130,.12)}
.hero-panel{background:linear-gradient(120deg,#fffdf8 0%,#F5F2EB 70%,#eee6d3 100%);border-color:#e5dfd2}
.hero-panel h1{color:#302737}
.hero-panel h1 span{color:#4B0082}
.release-icon,.stat-icon,.next-step-mark{background:#F5F2EB;color:#4B0082;border:1px solid #e8dcc0}
.release-tag,.section-count{background:#F5F2EB;color:#4B0082;border-color:#D4AF37}
.module-card-refresh.primary{background:linear-gradient(145deg,#4B0082,#390061);border-color:#4B0082}
.module-card-refresh.primary .module-number{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(212,175,55,.6)}
.next-step-panel{background:linear-gradient(110deg,#F5F2EB,#fffdf8 78%);border-color:#e5dfd2}
