:root{color:#172033;background:#eef5fb;font-family:Inter,Noto Sans TC,Microsoft JhengHei,Arial,sans-serif;--blue: #0877e8;--cyan: #14aaf5;--orange: #ff8a00;--ink: #172033;--muted: #64748b;--line: #d9e6f2;--card: rgba(255, 255, 255, .94);--shadow: 0 22px 60px rgba(29, 63, 104, .12)}*{box-sizing:border-box}body{margin:0}.auth-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,rgba(5,153,255,.18),transparent 34%),linear-gradient(135deg,#eef8ff,#fff8ef);padding:24px}.auth-card{width:min(460px,100%);border:1px solid #d7e6f5;border-radius:24px;background:#ffffffeb;box-shadow:0 24px 80px #10254129;padding:30px}.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.auth-logo{width:82px;height:82px;flex:0 0 auto;border-radius:18px;object-fit:contain;background:#fff;box-shadow:0 12px 28px #0877e81f}.auth-brand .brand-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;font-weight:900}.auth-brand strong{display:block;font-size:28px}.auth-brand span,.auth-hint{color:var(--muted)}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:8px;color:var(--ink);font-weight:900}.auth-form input{min-height:48px;border:1px solid #d7e6f5;border-radius:12px;background:#f8fbff;padding:10px 14px;color:var(--ink);outline:0}.auth-form button{min-height:48px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:900}.auth-hint{margin:16px 0 0;font-size:13px}.topbar-actions{display:flex;align-items:center;gap:10px}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr;background:radial-gradient(circle at top left,rgba(20,170,245,.22),transparent 36%),radial-gradient(circle at top right,rgba(255,138,0,.12),transparent 28%),#eef5fb}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:20px;padding:24px 20px;background:#102541;color:#fff;overflow-y:auto;overflow-x:hidden}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:66px;height:66px;flex:0 0 auto;border-radius:18px;object-fit:contain;background:#fff;box-shadow:0 14px 30px #00000024}.brand strong,.brand small{display:block}.brand small{color:#ffffffad}.brand-mark{display:flex;align-items:center;gap:14px}.brand-mark>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--cyan),var(--blue));font-weight:900}.brand-mark strong,.brand-mark small{display:block}.brand-mark small,.side-note span{color:#ffffffad}.system-switch{min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:linear-gradient(135deg,#14aaf533,#ff8a0029);color:#fff;font-weight:900}.menu-block{display:grid;gap:16px}.menu-block h2{margin:0;color:#ffffffc7;font-size:13px;letter-spacing:0}.menu-group{display:grid;gap:8px}.menu-group h3{margin:0;color:#ffffff85;font-size:12px;font-weight:800}.sidebar nav{display:grid;gap:6px}.sidebar nav button{min-height:40px;display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:transparent;color:#fff;padding:0 10px;text-align:left}.sidebar nav button span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar nav button em{flex:0 0 auto;border-radius:999px;background:#ff8a002e;color:#ffd08f;padding:2px 6px;font-size:11px;font-style:normal;font-weight:900}.sidebar nav button.active{background:#14aaf52e;border-color:#14aaf57a}.side-note{display:grid;gap:8px;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px}.workspace{padding:32px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar p{margin:0 0 4px;color:var(--blue);font-weight:800;text-transform:uppercase}.topbar h1{margin:0;font-size:34px}.topbar span{display:block;margin-top:6px;color:var(--muted)}.ghost-button{min-height:42px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:0 14px}.notice{margin-bottom:18px;border:1px solid #bfe7d0;border-radius:12px;background:#edfff4;color:#17663a;padding:12px 14px}.page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.full-span,.profile-card{grid-column:1 / -1}.profile-card,.panel{border:1px solid rgba(217,230,242,.9);border-radius:18px;background:var(--card);box-shadow:var(--shadow)}.placeholder-page{min-height:520px;display:grid;place-items:center;align-content:center;gap:12px;border:1px solid rgba(217,230,242,.9);border-radius:18px;background:var(--card);box-shadow:var(--shadow);padding:44px;text-align:center}.placeholder-page .placeholder-icon{width:68px;height:68px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#14aaf529,#ff8a0029);color:var(--blue)}.placeholder-page p,.placeholder-page h2,.placeholder-page span,.placeholder-page strong{margin:0}.placeholder-page p{color:var(--blue);font-weight:900}.placeholder-page h2{font-size:32px}.placeholder-page span{color:var(--muted)}.placeholder-page strong{max-width:560px;border-radius:999px;background:#fff7e8;color:#9a5800;padding:10px 16px}.member-overview{display:grid;gap:18px}.overview-top-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.overview-card{border:1px solid rgba(217,230,242,.9);border-radius:18px;background:#fffffff0;box-shadow:var(--shadow);padding:22px}.member-profile-summary{display:flex;align-items:center;gap:22px}.default-avatar{width:86px;height:86px;flex:0 0 auto;border-radius:24px;object-fit:contain;background:#fff;box-shadow:0 16px 38px #0877e83d}.member-profile-summary h2,.overview-card-title h2{margin:0}.member-profile-summary p{margin:4px 0 12px;color:var(--muted)}.member-profile-summary dl{display:grid;gap:7px;margin:0}.member-profile-summary dl div{display:flex;gap:10px}.member-profile-summary dt,.member-profile-summary dd{margin:0}.member-profile-summary dt{min-width:86px;color:var(--muted)}.member-profile-summary dd{color:var(--ink);font-weight:800}.link-action{margin-top:12px;border:0;background:transparent;color:var(--blue);font-weight:900;padding:0}.account-assets-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:center}.asset-number strong{display:block;color:#07172f;font-size:40px;line-height:1}.asset-number span{display:block;margin-top:8px;color:var(--muted);font-weight:800}.overview-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px}.overview-actions button{min-height:34px;border:1px solid var(--orange);border-radius:999px;background:#fff8ef;color:#d76500;padding:0 18px;font-weight:900}.overview-actions button.secondary{border-color:#dbe7f3;background:#fff;color:var(--ink)}.order-overview-card{display:grid;gap:26px}.overview-tabs{display:flex;gap:18px}.overview-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ink);padding:0 0 10px;font-weight:900}.overview-tabs button.active{border-color:var(--orange);color:#d76500}.order-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:18px}.status-circle-card{min-height:112px;display:grid;justify-items:center;align-content:center;gap:10px;border:0;background:transparent;color:var(--ink)}.status-circle-card strong,.order-create-card svg{width:72px;height:72px;display:grid;place-items:center;border:4px solid #e6ebf1;border-radius:50%;font-size:24px;line-height:64px}.status-circle-card span{color:var(--muted);font-weight:800}.status-circle-card:hover strong{border-color:#0877e859;color:var(--blue)}.order-create-card svg{border-color:transparent;background:var(--orange);color:#fff;padding:18px}.overview-card-title{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px}.overview-card-title span{color:var(--muted)}.overview-warehouse-card .warehouse-list{gap:16px}.overview-warehouse-card .warehouse-code-note{margin-bottom:2px}.warehouse-list{display:grid;gap:20px}.warehouse-code-note{display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(8,119,232,.18);border-radius:14px;background:#eef7ff;padding:14px 16px}.warehouse-code-note strong{color:var(--blue)}.warehouse-code-note span{color:var(--muted)}.warehouse-card{border:1px solid rgba(217,230,242,.9);border-radius:18px;background:var(--card);box-shadow:var(--shadow);padding:22px}.warehouse-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:1px solid var(--line);padding-bottom:16px}.warehouse-card-header .panel-title{margin-bottom:0}.warehouse-card-header>span{max-width:520px;color:var(--muted);text-align:right}.warehouse-table{margin:18px 0 0;border:1px solid #dceaf4;border-bottom:0}.warehouse-table div{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:58px;border-bottom:1px solid #dceaf4}.warehouse-table dt,.warehouse-table dd{display:flex;align-items:center;margin:0;padding:12px 16px}.warehouse-table dt{background:#c8eef5;color:#37566b;font-weight:900}.warehouse-table dd{color:var(--ink);gap:10px;justify-content:space-between}.warehouse-table dd>span{min-width:0;overflow-wrap:anywhere}.copy-field-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border:1px solid #c9ddec;border-radius:10px;background:#fff;color:var(--blue);cursor:pointer}.copy-field-button:hover{border-color:var(--blue);background:#eaf5ff}.warehouse-actions{display:flex;justify-content:center;padding-top:22px}.warehouse-actions button{min-height:44px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;padding:0 24px;font-weight:900}.balance-hero{display:flex;align-items:center;justify-content:space-between;border-radius:20px;background:linear-gradient(135deg,#103962,#0a87e8);box-shadow:var(--shadow);color:#fff;padding:26px}.balance-hero span,.balance-hero small{display:block;color:#ffffffb8}.balance-hero strong{display:block;margin:8px 0;font-size:34px}.topup-form{margin-top:16px}.topup-records-block{margin-top:18px}.refund-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.refund-summary-grid article{border:1px solid #dce9f6;border-radius:16px;background:linear-gradient(135deg,#f7fbff,#fff);box-shadow:0 8px 20px #133f760f;padding:16px}.refund-summary-grid span{display:block;color:var(--muted);font-size:12px;font-weight:900}.refund-summary-grid strong{display:block;margin-top:8px;color:var(--ink);font-size:22px}.points-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.points-summary-grid article{border:1px solid #dce9f6;border-radius:16px;background:linear-gradient(135deg,#f7fbff,#fff);box-shadow:0 8px 20px #133f760f;padding:16px}.points-summary-grid span{display:block;color:var(--muted);font-size:12px;font-weight:900}.points-summary-grid strong{display:block;margin-top:8px;color:var(--ink);font-size:24px}.refund-records-block{margin-top:18px}.refund-table table{min-width:1060px}.admin-note-field{display:grid;gap:8px;width:100%}.admin-note-field textarea{width:100%;min-height:86px;border:1px solid var(--line);border-radius:14px;background:#f7fbff;padding:10px 12px;color:var(--ink);resize:vertical}.refund-admin-stats{margin-bottom:18px}.topup-records-block .panel-title{margin-bottom:0}.amount-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.amount-picker button{min-height:48px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-weight:900}.amount-picker button.active{border-color:#0877e87a;background:#eef7ff;color:var(--blue);box-shadow:inset 0 0 0 1px #0877e829}.payment-method-picker{display:grid;gap:12px}.payment-method-picker button{min-height:54px;display:flex;align-items:center;gap:16px;border:1px dashed #cfddea;border-radius:999px;background:#fff;color:#30445f;padding:0 18px;text-align:left;font-weight:800}.payment-method-picker button.active{border-color:var(--cyan);background:#eefbff;color:var(--blue);box-shadow:0 10px 26px #14aaf529}.payment-method-picker b{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:14px}.payment-method-picker button:nth-child(3) b{background:linear-gradient(135deg,#16b83e,#09d05a)}.payment-account-list{display:grid;gap:10px}.payment-account-list article{display:grid;gap:4px;border:1px solid var(--line);border-radius:14px;background:#f8fbff;padding:12px}.payment-account-list strong,.payment-account-list span{display:block}.payment-account-list span{color:var(--muted);font-size:13px}.ticket-grid{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1fr);gap:20px}.ticket-list{display:grid;gap:10px}.ticket-list button{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:12px;text-align:left}.ticket-list button.active{border-color:#0877e87a;background:#f0f7ff}.ticket-list strong,.ticket-list span,.ticket-list small{display:block}.ticket-list strong{font-size:13px}.ticket-list span{color:var(--blue);font-size:13px;font-weight:800}.ticket-list small{grid-column:1 / -1;color:var(--muted);font-size:12px}.ticket-list mark{align-self:start;grid-row:1 / span 2;grid-column:2}.ticket-list em{justify-self:end;grid-column:2;color:var(--blue);font-size:12px;font-style:normal;font-weight:900}.message-list{display:grid;gap:10px}.message-list>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);padding:14px;text-align:left}.message-list>button.unread{border-color:#147df559;background:linear-gradient(135deg,#eef7ff,#fff)}.message-list>button.read{opacity:.78}.message-list>button:hover{border-color:#147df56b;box-shadow:var(--shadow-soft)}.message-dot{width:9px;height:9px;margin-top:8px;border-radius:50%;background:#cbd5e1}.message-list>button.unread .message-dot{background:var(--orange);box-shadow:0 0 0 4px #ff7a001f}.message-list strong,.message-list small,.message-list p{display:block}.message-list strong{font-size:16px}.message-list small{margin-top:4px;color:var(--muted);font-size:12px}.message-list p{display:-webkit-box;margin:8px 0 0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#34445c;line-height:1.45}.message-detail h2{margin:16px 0 8px}.message-detail>span,.message-detail small{display:block;color:var(--muted)}.message-detail p{margin:18px 0;color:var(--ink);line-height:1.7;white-space:pre-wrap}.ticket-detail{min-height:360px}.ticket-detail.empty-state,.empty-state{display:grid;place-items:center;min-height:180px;color:var(--muted)}.ticket-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:14px}.ticket-meta>span{color:var(--muted)}.message-thread{display:grid;gap:12px;padding:16px 0}.message-thread article{max-width:82%;border-radius:14px;background:#eef7ff;padding:12px 14px}.message-thread article.staff{justify-self:end;background:#fff7e8}.message-thread strong,.message-thread p,.message-thread small{display:block;margin:0}.message-thread p{margin-top:6px;white-space:pre-wrap}.message-thread small{margin-top:8px;color:var(--muted);font-size:12px}.ticket-reply-form{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:14px}.ticket-reply-form textarea{min-height:98px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;padding:12px;resize:vertical}.ticket-reply-form button{justify-self:start;min-height:40px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--orange),#ffb000);color:#fff;padding:0 18px;font-weight:900}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#0f233f75;padding:24px}.ticket-modal{position:relative;width:min(920px,100%);max-height:calc(100vh - 48px);overflow:auto}.ticket-modal .panel{box-shadow:0 28px 80px #081c383d}.ticket-modal .panel+.panel{margin-top:14px}.ticket-status-panel{min-height:auto}.detail-list{display:grid;gap:0;margin:0;border:1px solid var(--line);border-bottom:0}.detail-list div{display:grid;grid-template-columns:138px minmax(0,1fr);border-bottom:1px solid var(--line)}.detail-list dt,.detail-list dd{margin:0;padding:12px 14px}.detail-list dt{background:#eef7ff;color:#31506c;font-weight:900}.detail-list dd{min-width:0}.detail-list a{color:var(--blue);overflow-wrap:anywhere}.detail-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:16px}.detail-actions a,.detail-actions button{display:inline-flex;min-height:40px;align-items:center;border:0;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;padding:0 18px;font-weight:900;text-decoration:none}.detail-actions button.secondary{background:#e6edf5;color:#334155}.detail-actions button.danger{background:#ffe8e6;color:#b42318}.review-log-block{display:grid;gap:10px;margin-top:16px;border:1px solid var(--line);border-radius:14px;background:#f8fbff;padding:14px}.review-log-block strong{color:var(--ink);font-size:16px}.review-log-block p,.review-log-block ul{margin:0}.review-log-block ul{display:grid;gap:8px;padding:0;list-style:none}.review-log-block li{display:grid;gap:3px;border-radius:12px;background:#fff;padding:10px 12px}.review-log-block li span{font-weight:900}.review-log-block li small,.review-log-block li em{color:var(--muted);font-style:normal}.modal-close{position:absolute;top:14px;right:14px;z-index:1;min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:0 12px;font-weight:900}.profile-card{display:flex;justify-content:space-between;gap:18px;padding:24px;background:linear-gradient(135deg,#123a68,#0d87eb);color:#fff}.profile-card span{color:#ffffffb3}.profile-card h2{margin:8px 0}.profile-card p{margin:0;color:#ffffffc7}.profile-card strong{display:block;margin-top:8px;font-size:26px}.profile-settings-grid{display:grid;grid-template-columns:minmax(260px,.32fr) minmax(0,1fr);gap:18px}.profile-readonly-card{display:grid;align-content:start;gap:14px;border:1px solid #dce9f6;border-radius:18px;background:linear-gradient(135deg,#f7fbff,#fff);box-shadow:var(--shadow-soft);padding:18px}.profile-readonly-card span{display:block;color:var(--muted);font-size:12px;font-weight:900}.profile-readonly-card strong{display:block;margin-top:4px;color:var(--ink);font-size:18px;word-break:break-word}.profile-avatar{display:grid;place-items:center;width:112px;height:112px;border:1px solid #dce9f6;border-radius:24px;background:#fff;box-shadow:0 12px 24px #147df51a}.profile-avatar img{width:92px;height:92px;object-fit:contain}.profile-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:1px solid #dce9f6;border-radius:18px;background:#ffffffc2;box-shadow:var(--shadow-soft);padding:18px}.profile-settings-form label{display:grid;gap:8px}.profile-settings-form label.wide{grid-column:1 / -1}.profile-settings-form label span{color:var(--ink);font-size:13px;font-weight:900}.profile-settings-form input,.profile-settings-form select,.profile-settings-form textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:14px;background:#f7fbff;padding:0 14px}.profile-settings-form textarea{min-height:110px;padding:12px 14px;resize:vertical}.profile-settings-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px}.profile-settings-actions small{color:var(--muted)}.profile-settings-actions button{min-height:42px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--orange),#ff9f1c);color:#fff;padding:0 18px;font-weight:900}.panel{padding:22px}.panel-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.panel-heading-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.panel-heading-row .panel-title{margin-bottom:0}.panel-heading-row>span{color:var(--muted);font-size:14px}.panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.panel-actions span{color:var(--muted);font-size:14px}.panel-actions button{min-height:38px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;padding:0 16px;font-weight:900}.member-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.member-summary-grid article{border:1px solid #dbe7f3;border-radius:14px;background:#f8fbff;padding:14px 16px}.member-summary-grid span{display:block;color:var(--muted);font-size:12px;font-weight:800}.member-summary-grid strong{display:block;margin-top:6px;color:var(--ink);font-size:20px}.member-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.member-toolbar label{display:flex;align-items:center;gap:8px;width:min(460px,100%);border:1px solid #d7e5f2;border-radius:999px;background:#fff;color:var(--muted);padding:0 14px}.member-toolbar input{width:100%;min-height:40px;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}.member-toolbar span{color:var(--muted);font-size:13px;white-space:nowrap}.ledger-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.ledger-toolbar label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:900}.ledger-toolbar select{min-height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:0 12px}.status-filter-bar{display:flex;gap:8px;margin:0 0 16px;overflow-x:auto;padding-bottom:2px}.status-filter-bar button{min-height:36px;display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#30445f;padding:0 12px;font-weight:800}.status-filter-bar button.active{border-color:#0877e873;background:#eef7ff;color:var(--blue)}.status-filter-bar em{min-width:22px;min-height:22px;display:grid;place-items:center;border-radius:999px;background:#edf3f8;color:var(--muted);font-size:12px;font-style:normal}.status-filter-bar button.active em{background:var(--blue);color:#fff}.panel-title svg{color:var(--blue)}.panel-title h2{margin:0;font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label{display:grid;gap:7px;color:#30445f;font-weight:700}.form-grid .full{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;color:var(--ink);padding:10px 12px;outline:0}.form-grid textarea{min-height:92px;resize:vertical}.form-grid button,.row-actions button{min-height:42px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--orange),#ffb000);color:#fff;padding:0 16px;font-weight:900}.form-grid button{justify-self:start}.permission-grid{display:grid;gap:9px;color:#30445f;font-weight:700}.permission-grid>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#f8fbff;padding:10px}.permission-grid label{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"check title" "check group";column-gap:8px;align-items:center;border:1px solid #e0ebf5;border-radius:12px;background:#fff;padding:10px}.permission-grid input{grid-area:check;width:auto;min-height:auto}.permission-grid strong{grid-area:title;font-size:13px}.permission-grid small{grid-area:group;color:var(--muted);font-size:11px}.permission-groups{display:grid;gap:10px;color:#30445f;font-weight:700}.permission-groups>span{font-weight:900}.permission-groups fieldset{display:grid;gap:10px;border:1px solid #d8e8f6;border-radius:14px;background:#f8fbff;margin:0;padding:14px 16px}.permission-groups legend{color:#2a4664;font-weight:900;padding:0 8px}.permission-groups fieldset>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 24px}.permission-groups label{display:inline-flex;align-items:center;gap:9px;min-height:32px;font-weight:900}.permission-groups input{width:18px;min-height:18px;accent-color:var(--blue)}.permission-groups strong{line-height:1.25}.compact-form{margin-bottom:20px;border:1px solid #e4edf6;border-radius:16px;background:#fbfdff;padding:16px}.inline-claim{display:flex;flex-wrap:wrap;gap:8px}.inline-claim input{width:130px;min-height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px 10px}.procurement-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 42px;width:100%}.procurement-form label,.readonly-amount,.image-upload-field{min-width:0;display:grid;grid-template-columns:116px minmax(0,1fr);align-items:start;gap:12px 16px}.procurement-form .full{grid-column:1 / -1}.procurement-form label>span,.readonly-amount>span,.image-upload-field>span{padding-top:12px;color:#071527;font-weight:900}.procurement-form .required>span:before{content:"* ";color:#f04444}.procurement-form input,.procurement-form select,.procurement-form textarea{width:100%;min-height:46px;border:0;border-radius:999px;background:#e7f1fb;color:var(--ink);padding:11px 18px;outline:0}.product-link-control,.image-url-control{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px}.product-link-control button,.image-url-control button{min-height:46px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:900}.procurement-form textarea{min-height:96px;border-radius:18px;resize:vertical}.procurement-form small{grid-column:2;color:#ff4d55;font-size:13px}.form-hint,.form-warning{margin:0;padding-left:132px;color:#ff4d55;font-weight:900}.readonly-amount strong{min-height:46px;display:flex;align-items:center;color:#475569}.image-upload-field{grid-template-rows:auto auto auto auto;align-items:start}.image-url-control,.image-preview,.procurement-image-block .upload-box{grid-column:2}.image-preview{width:168px;min-height:112px;overflow:hidden;border:1px solid #d8e4ef;border-radius:12px;background:#fff}.image-preview img{width:100%;height:100%;max-height:168px;display:block;object-fit:cover}.upload-box{width:168px;height:168px;display:grid;place-items:center;border:1px dashed #c9d3df;border-radius:12px;background:#fff;cursor:pointer}.upload-box input{display:none}.upload-box b{color:#7f8fa3;font-size:42px;font-weight:300}.upload-box img{width:100%;height:100%;display:block;object-fit:cover}.image-upload-field small{grid-column:2;color:var(--muted)}.image-upload-field small b{color:#ff4d55}.procurement-form>button{justify-self:start;min-height:46px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--orange),#ffb000);color:#fff;padding:0 22px;font-weight:900}.offline-procurement-form{display:grid;gap:22px}.offline-section-title,.offline-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--ink);font-weight:900}.offline-list-heading small{display:block;margin-top:5px;color:var(--muted);font-weight:600}.offline-total{min-width:220px;border-radius:999px;background:#e6f8f9;color:#06737f;padding:10px 16px;text-align:center}.offline-store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 22px}.offline-store-grid label,.offline-remarks{display:grid;gap:8px;color:var(--ink);font-weight:800}.offline-store-grid .wide{grid-column:1 / -1}.offline-store-grid input,.offline-item-row input,.offline-item-row select,.offline-remarks textarea{width:100%;min-height:38px;border:1px solid #d8e4f2;border-radius:8px;background:#fff;color:var(--ink);padding:8px 10px;outline:0}.offline-items-table{overflow-x:auto;border:1px solid #e0e8f2;border-radius:12px}.offline-items-head,.offline-item-row{display:grid;grid-template-columns:minmax(160px,1.3fr) 140px 140px 110px 120px 90px minmax(220px,1.5fr) 142px;min-width:1180px}.offline-items-head{background:#f1f5f9;color:#516174;font-size:12px;font-weight:900}.offline-items-head span,.offline-item-row>*{padding:10px;border-bottom:1px solid #e6edf5}.offline-image-cell{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:8px}.offline-image-cell label{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--blue);border-radius:8px;color:var(--blue);font-weight:900;overflow:hidden;cursor:pointer}.offline-image-cell input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.offline-remarks textarea{min-height:88px;resize:vertical}.offline-procurement-form>button{justify-self:start;min-height:42px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--orange),#ffb000);color:#fff;padding:0 20px;font-weight:900}.inline-error{border-radius:10px;background:#fff1f2;color:#be123c;padding:10px 12px;font-weight:800}.procurement-detail-modal{max-width:1080px}.order-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.order-detail-grid article{border:1px solid #e0e8f2;border-radius:12px;background:#f8fbff;padding:12px}.order-detail-grid span{display:block;color:var(--muted);font-size:12px;font-weight:800}.order-detail-section{margin-top:18px}.order-detail-section h3{margin:0 0 10px}.order-detail-section p{margin:6px 0;word-break:break-word}button:disabled{opacity:.56;cursor:wait}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card{min-height:110px;display:grid;align-content:center;gap:8px;border-radius:16px;background:#fff;box-shadow:var(--shadow);padding:20px;border-left:5px solid var(--blue)}.stat-card.orange{border-left-color:var(--orange)}.stat-card.green{border-left-color:#16a36a}.stat-card.dark{border-left-color:#102541}.stat-card span{color:var(--muted)}.stat-card strong{font-size:30px}.table-wrap{overflow-x:auto}.compact-table table{font-size:13px;min-width:900px}.compact-table th,.compact-table td{padding:9px 10px}.point-table table{min-width:980px}table{width:100%;border-collapse:collapse;min-width:980px;font-size:14px}th,td{border-bottom:1px solid #e6edf5;padding:10px 12px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:12px;font-weight:800}td strong,td span,td small{display:block}td small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}td strong,td span{line-height:1.35}.product-title-link{display:block;color:var(--ink);font-weight:800;line-height:1.35;text-decoration:none}.product-title-link:hover{color:var(--blue);text-decoration:underline}.amount-credit{color:#14865a;font-weight:900}.amount-debit{color:#d86b00;font-weight:900}.line-clamp{display:-webkit-box;max-width:520px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#334155;line-height:1.4}.muted-text{color:var(--muted);font-size:13px;font-weight:800}.claim-inline-form{display:flex;gap:8px;min-width:220px}.claim-inline-form input{min-width:0;width:118px;min-height:34px;border:1px solid var(--line);border-radius:10px;background:#f8fbff;padding:0 10px}.claim-inline-form button{min-height:34px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;padding:0 12px;font-weight:900}.package-claim-table table{min-width:1160px}.exchange-rate-table table{min-width:1040px}.ledger-table table{min-width:1080px}.warehouse-admin-table table{min-width:1120px}.checkbox-row{display:flex;flex-wrap:wrap;gap:14px}.checkbox-row label{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:999px;background:#f8fbff;padding:0 14px;font-weight:900}.checkbox-row input{width:16px;min-height:16px;accent-color:var(--blue)}mark{display:inline-grid;min-width:62px;place-items:center;border-radius:999px;background:#e8f3ff;color:#075cba;padding:4px 8px;font-size:13px;font-weight:800}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.row-actions button{display:inline-flex;align-items:center;gap:6px}.row-actions button.secondary{background:#e6edf5;color:#334155}.row-actions button.danger{background:#ffe8e6;color:#b42318}.row-actions button{min-height:34px;border-radius:10px;padding:0 12px;font-size:13px}.address-table table{min-width:900px}.address-table td{font-size:13px}.checkbox-field{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px}.checkbox-field input{width:18px;min-height:18px}.checkbox-field span{font-weight:800}.permission-editor{display:grid;gap:12px}.permission-editor>strong{color:var(--ink);font-size:16px}.permission-editor fieldset{border:1px solid var(--line);border-radius:14px;background:#f8fbff;padding:12px}.permission-editor legend{padding:0 6px;color:#30445f;font-weight:900}.permission-editor fieldset>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px}.admin-staff-table table,.admin-role-table table{min-width:900px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:18px}.pagination button{min-height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:0 14px;font-weight:800}.pagination span{color:var(--muted)}:root{--blue: #147df5;--blue-dark: #0e4fbd;--cyan: #28b8ff;--orange: #ff7a00;--orange-soft: #fff3e6;--ink: #111c33;--muted: #6b7588;--line: #dfe9f5;--soft-blue: #f2f8ff;--card: rgba(255, 255, 255, .96);--shadow: 0 16px 42px rgba(19, 63, 118, .1);--shadow-soft: 0 8px 24px rgba(19, 63, 118, .08)}body{background:#f4f8fd;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}button,a,input,select,textarea{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}button:hover{transform:translateY(-1px)}.app-shell{background:radial-gradient(circle at 12% 0%,rgba(40,184,255,.2),transparent 30%),radial-gradient(circle at 100% 0%,rgba(255,122,0,.12),transparent 24%),linear-gradient(180deg,#f7fbff,#edf5fc)}.content,.workspace{min-width:0;padding:30px}.sidebar{background:#0f2747;border-right:1px solid rgba(255,255,255,.08);box-shadow:none}.brand-logo{width:56px;height:56px;border-radius:14px;box-shadow:none}.brand strong{color:#fff;font-size:20px;letter-spacing:0}.brand small,.brand-mark small,.side-note span{color:#ffffffb8}.menu-section>p,.menu-group h3{color:#ffffff8f;letter-spacing:0}.sidebar nav{gap:4px}.sidebar nav button{min-height:42px;border:0;border-radius:10px;background:transparent;color:#ffffffe6;padding:0 10px}.sidebar nav button svg{color:#ffffffbd}.sidebar nav button:hover{background:#ffffff12;transform:none}.sidebar nav button.active{background:#147df5;color:#fff;box-shadow:none}.sidebar nav button.active svg{color:#fff}.sidebar nav button em{background:#ffffff1f;color:#ffffffb8}.topbar{min-height:78px;align-items:flex-start}.topbar .eyebrow,.topbar p{color:var(--blue);font-size:13px;font-weight:900;letter-spacing:0}.topbar h1{color:var(--ink);font-size:36px;letter-spacing:0}.topbar small,.topbar span{color:var(--muted)}.topbar-actions .secondary,.ghost-button,.secondary{border:1px solid #d7e5f4;border-radius:14px;background:#ffffffdb;color:#1b3557;box-shadow:var(--shadow-soft)}.topbar-actions .secondary:hover,.ghost-button:hover,.secondary:hover{border-color:#147df559;background:#eef7ff;color:var(--blue)}.profile-card,.panel,.overview-card,.warehouse-card,.placeholder-page,.auth-card,.ticket-modal{border:1px solid rgba(213,228,243,.95);border-radius:22px;background:#fffffff5;box-shadow:var(--shadow)}.panel,.overview-card,.warehouse-card{padding:24px}.panel-title{gap:12px}.panel-title svg{color:var(--blue);filter:drop-shadow(0 4px 8px rgba(20,125,245,.16))}.panel-title h2,.panel-heading-row h2{color:var(--ink);font-size:23px;letter-spacing:0}.notice{border-color:#b8e8cc;border-radius:16px;background:linear-gradient(135deg,#effff6,#f7fffb);box-shadow:var(--shadow-soft)}input,select,textarea,.form-grid input,.form-grid select,.form-grid textarea,.procurement-form input,.procurement-form select,.procurement-form textarea,.offline-store-grid input,.offline-item-row input,.offline-item-row select,.offline-remarks textarea,.claim-inline-form input,.member-toolbar label,.ledger-toolbar select{border-color:#d8e6f5;border-radius:14px;background:#f7fbff;color:var(--ink)}input:focus,select:focus,textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.procurement-form input:focus,.procurement-form select:focus,.procurement-form textarea:focus{border-color:#147df5ad;background:#fff;box-shadow:0 0 0 4px #147df51a;outline:0}.auth-shell{background:radial-gradient(circle at 18% 10%,rgba(40,184,255,.18),transparent 28%),radial-gradient(circle at 86% 14%,rgba(255,122,0,.12),transparent 24%),linear-gradient(135deg,#f5fbff,#fff8f0)}.auth-logo{width:92px;height:92px;border-radius:22px}.auth-form button,.panel-actions button,.warehouse-actions button,.claim-inline-form button,.product-link-control button,.image-url-control button,.procurement-form>button,.offline-procurement-form>button{border:0;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;box-shadow:0 12px 24px #147df538}.auth-form button:hover,.panel-actions button:hover,.warehouse-actions button:hover,.claim-inline-form button:hover,.product-link-control button:hover,.image-url-control button:hover,.procurement-form>button:hover,.offline-procurement-form>button:hover{box-shadow:0 16px 30px #147df547}.form-grid button,.row-actions button,.overview-actions button{border-radius:14px;background:linear-gradient(135deg,var(--orange),#ffad32);color:#fff;box-shadow:0 10px 22px #ff7a0033}.overview-actions button.secondary,.row-actions button.secondary,.detail-actions button.secondary{border:1px solid #d8e6f5;background:#eef6ff;color:#244462;box-shadow:none}.row-actions button.danger,.detail-actions button.danger{background:#fff0ef;color:#be2f24;box-shadow:none}.status-filter-bar button,.amount-picker button,.payment-method-picker button,.ticket-list button,.checkbox-row label,.permission-grid label,.payment-account-list article,.member-summary-grid article,.stat-card{border-color:#dce9f6;border-radius:16px;background:#fff;box-shadow:0 8px 20px #133f760f}.status-filter-bar button.active,.amount-picker button.active,.ticket-list button.active{border-color:#147df56b;background:linear-gradient(135deg,#eef7ff,#fff);color:var(--blue);box-shadow:0 10px 22px #147df51f}.payment-method-picker button.active{border-color:#28b8ffb8;background:linear-gradient(135deg,#ecfbff,#fff)}.overview-card{background:linear-gradient(180deg,#fffffffa,#fafdfffa)}.default-avatar,.brand-logo,.auth-logo{border:1px solid rgba(216,230,245,.85)}.asset-number strong{color:var(--ink)}.status-circle-card strong{background:#fff;border-color:#e3edf7;box-shadow:inset 0 0 0 4px #f7fbff,0 8px 18px #133f7614}.status-circle-card:hover strong{border-color:#147df56b;box-shadow:inset 0 0 0 4px #f1f8ff,0 12px 22px #147df526}.order-create-card svg{background:linear-gradient(135deg,var(--orange),#ffad32);box-shadow:0 12px 24px #ff7a003d}.warehouse-code-note{border-color:#147df52e;background:linear-gradient(135deg,#edf7ff,#fff)}.warehouse-table{overflow:hidden;border-color:#dce9f6;border-radius:16px}.warehouse-table div{border-color:#dce9f6}.warehouse-table dt{background:#e9f8ff;color:#28526f}.copy-field-button{border-color:#d7e6f5;border-radius:12px;color:var(--blue)}.copy-field-button:hover{background:#edf7ff;box-shadow:0 8px 18px #147df51f}.balance-hero,.profile-card{background:radial-gradient(circle at 95% 20%,rgba(255,255,255,.24),transparent 24%),linear-gradient(135deg,var(--blue-dark),var(--blue) 58%,var(--cyan));box-shadow:0 18px 44px #147df533}.table-wrap{border:1px solid #e2edf7;border-radius:16px;background:#fff}table{background:#fff}th{background:#f7fbff;color:#52657d;font-size:12px;letter-spacing:0}td{border-bottom-color:#e8f0f8}tbody tr:hover{background:#f8fbff}mark{min-width:0;border:1px solid rgba(20,125,245,.12);background:#eaf5ff;color:#0c63c7;padding:4px 10px;font-size:12px}.stat-card{border-left:0;border-top:4px solid var(--blue)}.stat-card.orange{border-top-color:var(--orange)}.stat-card.green{border-top-color:#18a66f}.stat-card.dark{border-top-color:#1b3557}.modal-backdrop{background:#111c338a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-close{border-color:#d7e6f5;background:#fff;color:var(--ink)}.inline-error{border:1px solid #ffd5d0;border-radius:12px;background:#fff3f1;color:#b42318;padding:10px 12px}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;max-height:72vh}.page-grid,.form-grid,.stat-grid,.points-summary-grid,.profile-settings-grid,.profile-settings-form,.overview-top-grid{grid-template-columns:1fr}.profile-settings-actions,.member-profile-summary,.overview-card-title{display:grid}.account-assets-card{grid-template-columns:1fr}.asset-number strong{font-size:32px}.order-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.procurement-form,.procurement-form label,.readonly-amount,.image-upload-field{grid-template-columns:1fr}.procurement-form small,.image-upload-field small{grid-column:1}.form-hint,.form-warning{padding-left:0}.product-link-control{grid-template-columns:1fr}.warehouse-card-header,.warehouse-code-note{display:grid}.warehouse-card-header>span{text-align:left}.warehouse-table div{grid-template-columns:112px minmax(0,1fr)}.ticket-grid{grid-template-columns:1fr}.message-thread article{max-width:100%}}
