:root{color-scheme:light;font-family:IBM Plex Sans Thai,IBM Plex Sans,Noto Sans Thai,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(118,169,255,.28),transparent 34%),radial-gradient(circle at top right,rgba(122,229,192,.18),transparent 26%),linear-gradient(180deg,#f6fbff,#edf4fb 48%,#e8eef6);color:#112033}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{border:0;cursor:pointer}input,select{width:100%;border:1px solid rgba(120,147,176,.28);background:#ffffffc7;border-radius:16px;padding:13px 15px;color:#112033;box-shadow:inset 0 1px #ffffffbf}input:disabled,select:disabled{background:#f4f7fbeb;color:#607289}label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#27425f}h1,h2,p{margin:0}h1{font-size:clamp(32px,5vw,46px);letter-spacing:-.03em}h2{font-size:clamp(22px,3vw,28px);letter-spacing:-.02em}.section-kicker{margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#4e74a2}.section-copy{margin-top:12px;max-width:58ch;color:#566b83;line-height:1.6}.loading-screen,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden}.login-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 15% 20%,rgba(93,163,255,.33),transparent 26%),radial-gradient(circle at 85% 12%,rgba(121,231,200,.24),transparent 24%),radial-gradient(circle at 60% 85%,rgba(255,255,255,.6),transparent 30%);filter:blur(8px)}.loading-card,.login-card,.glass-card,.sidebar,.topbar{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.loading-card,.login-card{position:relative;z-index:1;width:min(480px,100%);padding:34px;border-radius:28px;background:#ffffffad;border:1px solid rgba(255,255,255,.6);box-shadow:0 24px 70px #1a365924,inset 0 1px #ffffffbd}.stack,.content-stack,.line-stack,.nav-stack{display:grid;gap:18px}.login-card .stack{margin-top:24px}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;padding:20px}.app-shell.sidebar-is-collapsed{grid-template-columns:92px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;gap:22px;padding:22px 18px 18px;border-radius:30px;background:#ffffff8c;border:1px solid rgba(255,255,255,.55);box-shadow:0 22px 50px #1f3f671f,inset 0 1px #ffffffc7;min-width:0}.sidebar.collapsed{padding-inline:10px}.sidebar-panel{border-radius:24px;background:#ffffff70;border:1px solid rgba(255,255,255,.52);box-shadow:inset 0 1px #ffffffb8}.sidebar-brand-panel{padding:16px}.sidebar-menu-panel,.sidebar-signout-panel{padding:14px}.sidebar-signout-panel{margin-top:auto}.sidebar.collapsed .sidebar-panel{padding-inline:10px}.sidebar.collapsed .sidebar-brand-panel,.sidebar.collapsed .sidebar-menu-panel,.sidebar.collapsed .sidebar-signout-panel{padding-inline:8px}.sidebar-label{margin:0 0 10px;padding:0 8px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6d82a0}.sidebar-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-block{display:flex;align-items:center;gap:12px;min-height:60px}.brand-mark,.nav-icon,.pill{display:inline-flex;align-items:center;justify-content:center}.brand-mark{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,#2f7afffa,#1f4eb7f2);color:#fff;font-weight:800;box-shadow:0 12px 28px #2f7aff47}.nav-stack{flex:1}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:18px;background:transparent;color:#27425f;text-align:left;font-weight:700}.nav-item.active{background:#ffffffb8;box-shadow:inset 0 1px #ffffffe0,0 12px 24px #163e7014}.nav-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#5884bf1f;color:#2d5b8c;flex:0 0 auto}.nav-icon svg{width:18px;height:18px;display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-signout{margin-top:0}.sidebar.collapsed .nav-item{justify-content:center;padding-inline:10px}.sidebar.collapsed .nav-icon{margin:0 auto}.sidebar.collapsed .brand-block{width:100%;justify-content:center}.sidebar.collapsed .sidebar-topbar{display:grid;justify-items:center;align-content:start;gap:10px}.sidebar.collapsed .sidebar-hamburger{order:-1;justify-self:center;align-self:start;margin:0}.main-shell{min-width:0;display:grid;grid-template-rows:auto 1fr;gap:18px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-radius:28px;background:#ffffff8c;border:1px solid rgba(255,255,255,.55);box-shadow:0 18px 42px #1f3f671a,inset 0 1px #ffffffb8}.topbar-left,.topbar-user,.section-header,.action-row,.footer-actions,.line-card-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.topbar-user{flex-wrap:wrap;justify-content:flex-end;color:#39506a;font-weight:700}.section-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.table-toolbar{margin-top:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.search-field{width:min(420px,100%)}.search-field span{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6a809a}.pill{min-height:32px;padding:0 12px;border-radius:999px;background:#ffffffb3;color:#37557b;border:1px solid rgba(116,148,184,.18);font-size:12px;font-weight:800}.hamburger{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;gap:4px;background:#ffffffb8;box-shadow:inset 0 1px #ffffffe6}.sidebar-hamburger{width:40px;height:40px;flex:0 0 auto}.hamburger span{display:block;width:18px;height:2px;border-radius:999px;background:#355476}.content-area{min-width:0}.glass-card{padding:24px;border-radius:30px;background:#ffffff8f;border:1px solid rgba(255,255,255,.55);box-shadow:0 24px 56px #1c37581c,inset 0 1px #fffc}.data-page-section,.data-table-section{padding:0;background:transparent;border:0;box-shadow:none}.data-page-section>.section-header,.data-page-section>.table-toolbar,.data-table-section>.section-header{padding-inline:6px}.data-page-section>.table-toolbar{margin-top:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.full-width{grid-column:1 / -1}.order-list{display:grid;gap:14px}.order-table-shell{margin-top:16px;border-radius:18px;overflow:hidden;border:1px solid rgba(133,160,191,.24);background:#ffffffc7;box-shadow:0 16px 30px #22456e0f}.table-sections{margin-top:20px}.line-table-shell{margin-top:16px;border-radius:18px;overflow:hidden;border:1px solid rgba(133,160,191,.24);background:#ffffffc7;box-shadow:0 16px 30px #22456e0f}.line-table-grid{display:grid;grid-template-columns:1.6fr 1fr .9fr .9fr .9fr .7fr;gap:12px}.line-table-header{padding:14px 18px;background:#e8f0f8fa;border-bottom:1px solid rgba(133,160,191,.2)}.line-table-header span{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6a809a}.line-table-body{gap:0}.line-table-row{padding:14px 18px;align-items:end;background:#ffffffeb;border-bottom:1px solid rgba(133,160,191,.16)}.line-table-row:last-child{border-bottom:0}.line-cell-label span{display:none}.line-action-cell{display:flex;align-items:center;justify-content:center;min-height:52px}.order-table-grid{display:grid;grid-template-columns:1.4fr .9fr 1.2fr .9fr .7fr;gap:16px}.order-table-header{position:sticky;top:0;z-index:2;padding:14px 18px;background:#e8f0f8fa;border-bottom:1px solid rgba(133,160,191,.2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.order-table-header span{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6a809a}.order-table-scroll{max-height:520px;overflow:auto}.order-row{width:100%;padding:18px;border-radius:0;background:#ffffffeb;color:#17314b;text-align:left;box-shadow:inset 0 1px #ffffffd6;border-bottom:1px solid rgba(133,160,191,.16)}.order-row p{color:#496178}.order-row:last-child{border-bottom:0}.line-card{padding:18px;border-radius:24px;background:#ffffffbd;box-shadow:inset 0 1px #ffffffd6,0 14px 28px #1f3f6714}.line-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:14px}.profile-grid{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(320px,1.1fr);gap:20px}.profile-summary{display:grid;gap:16px}.profile-summary dl{display:grid;gap:12px;margin:0}.profile-summary dt{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#60758f}.profile-summary dd{margin:6px 0 0;color:#1c344e;font-weight:700}.error,.success,.empty-state{padding:14px 16px;border-radius:18px;font-weight:700}.error{background:#ffe6e4d9;color:#9d2d26;border:1px solid rgba(208,104,90,.18)}.success{background:#e9f9efd9;color:#17663a;border:1px solid rgba(61,153,94,.18)}.empty-state{background:#ffffffa6;color:#60758f;border:1px dashed rgba(118,147,176,.28)}button{padding:13px 18px;border-radius:16px;background:linear-gradient(135deg,#2f7aff,#1f4eb7);color:#fff;font-weight:800;box-shadow:0 16px 28px #2f7aff38}button.secondary,.ghost-button{background:#ffffffbd;color:#22476c;box-shadow:inset 0 1px #ffffffe6}.ghost-button{padding:10px 14px}button:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 1180px){.order-table-grid,.line-table-grid,.line-grid,.profile-grid{grid-template-columns:1fr}.order-table-header{display:none}.order-row{border-radius:22px;margin:0 12px 12px;border-bottom:0;box-shadow:inset 0 1px #ffffffd6,0 14px 28px #22456e14}.order-list{padding-top:12px}.line-table-header{display:none}.line-table-row{gap:14px}.line-cell-label span{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6a809a}}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{gap:14px}.sidebar.collapsed{padding-inline:18px}.nav-stack,.sidebar{grid-auto-flow:row}.topbar,.topbar-left,.topbar-user,.section-header,.action-row,.footer-actions,.table-toolbar{align-items:flex-start;flex-direction:column}.sidebar-topbar{align-items:center}.form-grid{grid-template-columns:1fr}}@media (max-width: 720px){.app-shell{padding:14px;gap:14px}.glass-card,.sidebar,.topbar,.loading-card,.login-card{border-radius:24px;padding:18px}.order-row{padding:16px}}
