:root{
  --brand:#1f5fe5;--brand-strong:#1748b5;--brand-soft:#eaf1ff;
  --ink:#101828;--text:#344054;--muted:#667085;--line:#e4e9f2;
  --surface:#fff;--canvas:#f3f6fb;--success:#079455;--warning:#d97706;--danger:#d92d20;
  --radius-sm:12px;--radius:18px;--radius-lg:24px;
  --shadow:0 10px 30px rgba(30,64,175,.08);--shadow-lg:0 24px 70px rgba(15,23,42,.18);
  font-family:system-ui,"Microsoft YaHei","PingFang SC",sans-serif;
  color:var(--ink);background:var(--canvas);font-synthesis:none
}
html{background:var(--canvas);-webkit-text-size-adjust:100%}body{min-width:320px;background:var(--canvas);color:var(--ink)}
button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(31,95,229,.2);outline-offset:2px}

.login{position:relative;isolation:isolate;background:radial-gradient(circle at 15% 10%,#dbe8ff 0,transparent 34%),radial-gradient(circle at 90% 85%,#e6f7f1 0,transparent 30%),linear-gradient(145deg,#f8faff,#eef4ff);overflow:hidden}
.login::before,.login::after{content:"";position:absolute;z-index:-1;border-radius:999px;filter:blur(2px)}
.login::before{width:340px;height:340px;right:-150px;top:-130px;background:rgba(31,95,229,.08)}
.login::after{width:260px;height:260px;left:-120px;bottom:-100px;background:rgba(7,148,85,.07)}
.login .card{width:min(440px,100%);padding:34px;border:1px solid rgba(255,255,255,.8);border-radius:28px;box-shadow:var(--shadow-lg);backdrop-filter:blur(12px)}
.logo{align-items:flex-start;margin-bottom:30px}.logo i{width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,#2e70ef,#1748b5);box-shadow:0 12px 28px rgba(31,95,229,.28);font-size:18px}
.logo h1{font-size:23px;line-height:1.35;letter-spacing:-.02em}.logo p{font-size:14px;line-height:1.6;margin-top:7px}

.shell{padding-bottom:40px;background:radial-gradient(circle at 8% 12%,rgba(66,133,244,.12) 0,transparent 28%),radial-gradient(circle at 92% 35%,rgba(36,184,138,.09) 0,transparent 25%),linear-gradient(155deg,#edf4ff 0,#f5f8fc 45%,#eef5f3 100%);background-attachment:fixed}
.top{min-height:72px;padding:13px max(18px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.9);border-color:rgba(220,227,238,.9);box-shadow:0 1px 0 rgba(15,23,42,.03);backdrop-filter:blur(18px)}
.top h1{font-size:19px;letter-spacing:-.01em}.top small{display:block;margin-top:4px;color:var(--muted)}
.content{max-width:1180px;padding:24px 20px 52px}

.card{background:var(--surface);border:1px solid rgba(226,232,240,.9);border-radius:var(--radius);box-shadow:var(--shadow)}
.panel{padding:20px;margin-top:16px}.panel h2{font-size:18px;letter-spacing:-.01em}
.view-title{gap:16px;margin-bottom:14px}.view-title h2{font-size:24px;letter-spacing:-.025em}.view-title .muted{line-height:1.55}
.section-heading{font-size:22px;letter-spacing:-.02em}

label{color:var(--text);font-size:13px;font-weight:650}input,select,textarea{min-height:46px;padding:11px 13px;border:1px solid #d5ddea;border-radius:var(--radius-sm);background:#fff;color:var(--ink);transition:border-color .18s,box-shadow .18s,background .18s}
textarea{min-height:92px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:#b8c5d8}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(31,95,229,.1)}
input:disabled,input[readonly],select:disabled,textarea:disabled{background:#f4f6f9;color:#526174;border-color:#e1e6ee;opacity:1}
.btn{min-height:44px;padding:10px 17px;border-radius:12px;background:linear-gradient(145deg,#2d6fee,var(--brand));box-shadow:0 6px 16px rgba(31,95,229,.18);transition:transform .16s,box-shadow .16s,filter .16s}
.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 22px rgba(31,95,229,.23);filter:saturate(1.05)}.btn:active:not(:disabled){transform:translateY(0)}
.btn.secondary{background:var(--brand-soft);color:var(--brand);box-shadow:none}.btn.danger{background:#fff0ef;color:var(--danger);box-shadow:none}.text-btn{min-height:40px;border:0;border-radius:10px;padding:8px 10px;background:transparent;color:var(--brand);font-weight:700;cursor:pointer}.text-btn:hover{background:var(--brand-soft)}
.actions{gap:10px;flex-wrap:wrap}.actions .btn{min-width:112px}

.metric{position:relative;overflow:hidden;padding:20px}.metric::after{content:"";position:absolute;width:72px;height:72px;right:-24px;top:-24px;border-radius:50%;background:var(--brand-soft)}
.metric span{position:relative;z-index:1;color:var(--muted);font-weight:600}.metric b{position:relative;z-index:1;font-size:26px;letter-spacing:-.025em}.metrics,.monthly-metrics,.workforce-metrics{gap:14px}
.monthly-metrics .metric:nth-child(2)::after{background:#fff3e5}.monthly-metrics .metric:nth-child(3)::after{background:#f1eafe}.monthly-metrics .metric:nth-child(4)::after{background:#e7f8ef}

.manager-welcome{padding-top:34px}.manager-welcome>h2{font-size:27px;letter-spacing:-.025em}.manager-entry-grid{gap:16px}
.manager-entry{position:relative;overflow:hidden;min-height:178px;padding:22px;border:1px solid #e2e8f2;border-radius:22px;box-shadow:0 8px 24px rgba(16,24,40,.06);transition:transform .18s,box-shadow .18s,border-color .18s}
.manager-entry::after{content:"›";position:absolute;right:20px;top:22px;color:#a6b0c0;font-size:25px}.manager-entry:hover{transform:translateY(-3px);border-color:#cad7ec;box-shadow:0 15px 34px rgba(31,95,229,.11)}
.manager-entry span{width:54px;height:54px;margin-bottom:24px;border-radius:17px}.manager-entry b{font-size:19px}.manager-entry small{line-height:1.55}
.manager-context{padding:16px 18px;border:0;background:linear-gradient(145deg,#fff,#f9fbff)}
.manager-page-head{min-height:42px}.role-back,.manager-back{padding-left:2px}

.category-choices{gap:9px}.category-choice{min-height:46px;padding:9px 8px;border-color:#d9e2f0;border-radius:13px;background:#f8faff;color:#34445d;transition:all .16s}
.category-choice:hover:not(:disabled){border-color:#9bb7ea;background:#f0f5ff}.category-choice.on{background:linear-gradient(145deg,#2d6fee,#1f5fe5);border-color:var(--brand);box-shadow:0 7px 18px rgba(31,95,229,.22)}
.items{gap:14px}.item,.choice-item{padding:16px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 5px 16px rgba(16,24,40,.04)}
.supplementary{border:1px solid #96b5f0;background:#f7faff}.total{align-items:center;margin-top:18px;padding:17px 4px 2px}.total b{font-size:22px;color:var(--brand)}

.inventory-row,.attendance-row{margin:0 -4px;padding:17px 4px;border-color:#e9edf4}.inventory-row>b,.attendance-check b{font-size:15px}.inventory-row strong{min-height:46px;display:flex;align-items:center;background:var(--brand-soft);border-radius:12px}
.attendance-summary b{padding:16px;border:1px solid #cceaf2;border-radius:14px;background:linear-gradient(145deg,#effbfe,#e6f7fb);color:#087b94}.attendance-row.off{filter:grayscale(.2)}

.base-tabs{padding:4px 2px 8px;scrollbar-width:none}.base-tabs::-webkit-scrollbar{display:none}.base-tabs button{min-height:42px;padding:9px 15px;border-color:#dce3ed;border-radius:999px;font-weight:700;cursor:pointer}.base-tabs button.on{background:var(--brand);box-shadow:0 7px 16px rgba(31,95,229,.2)}
.salary-toolbar,.monthly-toolbar{padding:16px 18px}.salary-state{padding:14px 16px;border-radius:14px;background:#f8faff}

.table-wrap{border-radius:16px}.table{font-variant-numeric:tabular-nums}.table th{padding:12px 10px;background:#f7f9fc;color:#526174;font-size:12px;font-weight:750;white-space:nowrap}.table td{padding:13px 10px;border-color:#ebeff5;color:var(--text)}.table tbody tr{transition:background .15s}.table tbody tr:hover{background:#f8faff}.table tfoot td{border-top:2px solid #dbe4f0}
.payroll-table td:first-child{box-shadow:5px 0 12px rgba(16,24,40,.04)}

.dashboard-period{padding:5px;border:1px solid var(--line);border-radius:15px;background:#fff}.dashboard-period select,.dashboard-period input{border:0;background:#f7f9fc}.grouped-chart{border-radius:14px;padding-left:10px;padding-right:10px}.chart-bar,.grouped-column i{box-shadow:0 4px 12px rgba(31,95,229,.12)}.heat-table td{border-left:4px solid #fff}

.pill{padding:6px 10px;background:#fff4d6;color:#9a5b00;font-weight:750}.pill.ok{background:#e7f8ef;color:#087647}
.reimburse-summary{gap:14px}.reimburse-filters{padding:2px}.reimbursement-detail{border-radius:24px!important}.detail-grid p,.detail-note{border:1px solid #e9edf4;background:#f8fafd}.attachment-card{border-color:#e1e7f0;border-radius:15px;background:#fff}.attachment-preview{height:125px;background:#f0f3f8}.upload-button{cursor:pointer}

.modal{padding:20px;background:rgba(15,23,42,.55);place-items:center;backdrop-filter:blur(6px)}.modal .card{width:min(580px,100%);max-height:min(88vh,820px);padding:22px;border-radius:24px;box-shadow:var(--shadow-lg)}
.notice{max-width:calc(100vw - 32px);bottom:28px;padding:12px 18px;border-radius:13px;background:#172033;box-shadow:0 12px 30px rgba(15,23,42,.25);text-align:center}
.empty{padding:40px 20px;color:#7c899d}

@media(max-width:800px){
  .content{padding:18px 14px 44px}.top{min-height:66px;padding:11px 14px}.top h1{font-size:16px}.top .btn{min-height:38px;padding:8px 12px}
  .view-title h2{font-size:21px}.panel{padding:16px}.manager-welcome{padding-top:20px}.manager-welcome>h2{font-size:23px}
  .manager-entry,.role-entry-grid .manager-entry{display:grid;grid-template-columns:56px 1fr;column-gap:14px;min-height:116px;padding:17px;align-content:center}.manager-entry span{grid-row:1/3;margin:0}.manager-entry b{align-self:end}.manager-entry small{align-self:start}.manager-entry::after{right:16px;top:50%;transform:translateY(-50%)}
  .metrics,.monthly-metrics{grid-template-columns:1fr 1fr}.metric{padding:17px}.metric b{font-size:22px}
  .choice-item{grid-template-columns:1fr 1fr!important}.category-choices{grid-template-columns:repeat(3,minmax(0,1fr))}
  .inventory-row,.attendance-row{margin:0;padding:16px 0}.dashboard-period{display:grid;padding:4px}.dashboard-title{align-items:flex-start}
  .modal{padding:0;place-items:end center}.modal .card{max-height:92vh;border-radius:24px 24px 0 0;padding:20px 16px calc(18px + env(safe-area-inset-bottom))}
  .actions{display:grid;grid-template-columns:1fr 1fr}.actions .btn{width:100%;min-width:0}.attachment-grid{gap:9px}
}
@media(max-width:480px){
  .login{padding:16px}.login .card{padding:25px 20px;border-radius:24px}.logo i{width:52px;height:52px}.logo h1{font-size:19px}.logo p{font-size:12px}
  .metrics,.monthly-metrics,.reimburse-summary{grid-template-columns:1fr 1fr}.metric b{font-size:20px}.metric span{font-size:12px}
  .category-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.reimburse-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .choice-item{grid-template-columns:1fr!important}.choice-item>*{grid-column:1!important}.choice-item .del{width:100%}
  .inventory-row,.attendance-row{grid-template-columns:1fr 1fr}.inventory-row>b,.inventory-row>small,.attendance-check{grid-column:1/-1!important}
  .tool-title{align-items:flex-start}.tool-title input{width:145px}.dashboard-title{display:grid;grid-template-columns:1fr}.dashboard-period{width:100%;grid-template-columns:1fr 1fr}.dashboard-period select,.dashboard-period input{width:100%;min-width:0}
  .reimburse-filters,.salary-toolbar,.monthly-toolbar,.monthly-form{grid-template-columns:1fr}.reimburse-filters .btn,.salary-toolbar button,.monthly-form .monthly-remark{grid-column:1}.attachment-grid{grid-template-columns:1fr 1fr}
}
/* 店长快捷录入：项目即入口，弹窗即表单 */
.entry-workspace{display:grid;gap:20px}.entry-intro{padding:8px 2px 0}.entry-intro h2{margin:5px 0 7px;font-size:25px;letter-spacing:-.025em}.entry-intro p{margin:0;color:var(--muted);font-size:14px}.eyebrow{display:block;color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.12em}
.entry-launch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.entry-launch{position:relative;display:flex;min-height:104px;flex-direction:column;align-items:flex-start;justify-content:flex-end;overflow:hidden;padding:16px;border:1px solid #dbe4f2;border-radius:19px;background:linear-gradient(155deg,#fff 50%,#f4f8ff);color:#15223a;text-align:left;box-shadow:0 7px 20px rgba(30,64,120,.07);cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.entry-launch:hover{transform:translateY(-3px);border-color:#8eb1ed;box-shadow:0 14px 28px rgba(31,95,229,.14)}.entry-launch:active{transform:scale(.98)}.entry-launch>span{position:absolute;top:14px;right:14px;color:#aab8cb;font-size:12px;font-weight:800}.entry-launch>b{max-width:100%;font-size:16px;line-height:1.28;white-space:normal;overflow-wrap:anywhere}.entry-launch>small{display:block;margin-top:6px;color:#748298;font-size:11px;line-height:1.35}.income-launch::before,.expense-launch::before{content:"";position:absolute;top:0;bottom:0;left:0;width:5px}.income-launch::before{background:#1f67e8}.expense-launch::before{background:#ef7d35}.expense-launch{background:linear-gradient(155deg,#fff 50%,#fff8f3)}
.entry-list-panel{margin-top:2px!important;padding:22px!important}.entry-list-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.entry-list-title h2{margin:4px 0 0!important;font-size:20px!important}.entry-list-title>b{color:var(--brand);font-size:25px}.entry-records{gap:9px}.entry-record{display:grid!important;grid-template-columns:44px minmax(0,1fr) auto auto auto!important;gap:12px;align-items:center!important;min-height:76px;padding:12px 14px!important;border:1px solid #e5eaf2!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important}.record-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;font-size:14px;font-weight:900}.income-record-icon{background:#e9f1ff;color:#1f63df}.expense-record-icon{background:#fff0e7;color:#d96722}.record-main{min-width:0}.record-main b,.record-main small{display:block}.record-main b{font-size:15px}.record-main small{margin-top:4px;overflow:hidden;color:#77869b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.entry-record>strong{font-size:17px;white-space:nowrap}.record-edit,.record-delete{border:0;border-radius:9px;padding:8px 10px;background:#eef4ff;color:#2463d7;font-size:12px;font-weight:800;cursor:pointer}.record-delete{background:#fff0f0;color:#c73a3a}.entry-empty{display:grid;justify-items:center;padding:34px 16px;color:#758399;text-align:center}.entry-empty>span{display:grid;width:50px;height:50px;place-items:center;margin-bottom:12px;border-radius:16px;background:#eef4ff;color:#2563eb;font-weight:900}.entry-empty>b{color:#26344b;font-size:15px}.entry-empty>small{margin-top:5px}
.entry-sheet{width:min(520px,100%)!important}.sheet-handle{display:none}.entry-sheet-head{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;margin-bottom:22px}.entry-sheet-head h2{margin:2px 0 0;font-size:23px}.entry-sheet-head small{color:#718097;font-size:12px}.sheet-close{display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:12px;background:#f0f3f8;color:#64748b;font-size:26px;cursor:pointer}.entry-sheet label{margin-top:16px;font-weight:700}.entry-sheet input,.entry-sheet textarea{margin-top:7px;font-weight:500}.entry-primary-field{color:#25334b!important}.money-input{position:relative}.money-input>span{position:absolute;left:16px;top:50%;z-index:1;transform:translateY(-50%);color:#2563eb;font-size:25px;font-weight:800}.money-input input{height:64px;padding-left:48px;font-size:27px;font-weight:800}.entry-primary-field>input{height:58px;font-size:22px;font-weight:800}.pricing-note{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid #cfe0fa;border-radius:14px;background:#f2f7ff}.pricing-note span{color:#6780a5;font-size:12px;font-weight:700}.pricing-note b{color:#1d5fd2}.sheet-save{width:100%;min-height:52px;margin-top:22px;font-size:16px}
.reimbursement-title h2{margin:4px 0 0;font-size:27px}.reimbursement-create{position:relative;display:grid;width:100%;grid-template-columns:64px 1fr auto;gap:17px;align-items:center;min-height:124px;padding:22px;border:0;border-radius:24px;background:linear-gradient(135deg,#1765e8,#2f78ef);color:#fff;text-align:left;box-shadow:0 16px 34px rgba(31,95,229,.28);cursor:pointer}.reimbursement-create>span{display:grid;width:58px;height:58px;place-items:center;border-radius:18px;background:rgba(255,255,255,.17);font-size:32px}.reimbursement-create b,.reimbursement-create small{display:block}.reimbursement-create b{font-size:22px}.reimbursement-create small{margin-top:6px;color:#dbe9ff;font-size:13px}.reimbursement-create i{font-size:34px;font-style:normal}.manager-reimburse-list{margin-top:18px!important}.reimbursement-row{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:center;padding:15px 5px;border:0;border-bottom:1px solid #e8edf4;background:transparent;color:inherit;text-align:left;cursor:pointer}.reimbursement-row b,.reimbursement-row small{display:block}.reimbursement-row small{margin-top:4px;color:#77869b}.reimbursement-row strong{font-size:16px}.reimbursement-row i{color:#9aabc1;font-size:24px;font-style:normal}
@media(max-width:760px){.entry-launch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.entry-launch{min-height:98px;padding:14px}.entry-record{grid-template-columns:42px minmax(0,1fr) auto!important}.entry-record .record-edit,.entry-record .record-delete{grid-row:2;min-height:38px}.entry-record .record-edit{grid-column:2}.entry-record .record-delete{grid-column:3}.entry-list-panel{padding:17px!important}}
@media(max-width:480px){.entry-intro h2{font-size:21px}.entry-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-launch{min-height:108px}.entry-launch>b{font-size:15px}.entry-record{gap:10px;padding:12px 10px!important}.entry-record>strong{font-size:15px}.modal.entry-modal{place-items:end center}.entry-modal .entry-sheet{border-radius:26px 26px 0 0!important;padding-top:10px!important}.sheet-handle{display:block;width:46px;height:5px;margin:0 auto 15px;border-radius:99px;background:#d8dee8}.reimbursement-create{grid-template-columns:54px 1fr auto;min-height:112px;padding:18px}.reimbursement-create>span{width:50px;height:50px}.reimbursement-create b{font-size:19px}.reimbursement-row{grid-template-columns:minmax(0,1fr) auto auto}.reimbursement-row .pill{grid-row:2;grid-column:1}.reimbursement-row i{grid-column:3;grid-row:1/3}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Inventory table and tactile quick-entry controls */
[hidden]{display:none!important}
.inventory-panel{overflow:hidden}.inventory-toolbar,.inventory-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.inventory-toolbar{margin-bottom:18px}.inventory-toolbar b{font-size:20px}.inventory-toolbar p{margin:5px 0 0}.opening-inventory-btn{flex:0 0 auto}.inventory-table-wrap,.opening-table-wrap{overflow:auto;border:1px solid #dfe7f2;border-radius:16px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.inventory-table,.opening-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0}.inventory-table th,.inventory-table td,.opening-table th,.opening-table td{padding:13px 14px;border-bottom:1px solid #e8edf4;text-align:center;white-space:nowrap}.inventory-table thead th,.opening-table thead th{position:sticky;top:0;z-index:2;background:#f3f7fd;color:#52647c;font-size:12px;letter-spacing:.04em}.inventory-table tbody th,.opening-table tbody th{position:sticky;left:0;z-index:1;background:#fff;color:#1d2b40;text-align:left}.inventory-table tbody tr:last-child>*,.opening-table tbody tr:last-child>*{border-bottom:0}.inventory-table tbody tr{transition:background .2s ease}.inventory-table tbody tr:focus-within{background:#f4f8ff}.number-cell{font-variant-numeric:tabular-nums;color:#52647c}.received-cell{color:#16835b;font-weight:700}.table-number-input,.opening-qty{width:112px!important;min-height:42px!important;padding:8px 10px!important;text-align:center;font-weight:800;font-variant-numeric:tabular-nums}.stock-value{display:inline-grid;min-width:88px;min-height:38px;place-items:center;border-radius:11px;background:#eaf7f1;color:#087e54;font-variant-numeric:tabular-nums}.stock-negative{background:#fff0f0;color:#cf3434}.inventory-footer{margin-top:18px}.inventory-save{min-width:170px}.opening-sheet{width:min(650px,100%)!important}.opening-tip{margin:-4px 0 16px;padding:12px 14px;border-radius:12px;background:#eef5ff;color:#47617f;font-size:13px;line-height:1.6}.opening-table{min-width:460px}
.inventory-table .inventory-row{display:table-row!important;grid-template-columns:none!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.inventory-table .inventory-row>*{width:auto!important;margin:0!important}.inventory-formula{display:inline-block;padding:7px 11px;border-radius:10px;background:#eef5ff;color:#315f9e!important;font-weight:700}
.used-readonly{display:inline-flex;min-width:96px;min-height:42px;align-items:center;justify-content:center;border:1px solid #d9e2ef;border-radius:11px;background:#f1f4f8;color:#596a80;font-weight:800;font-variant-numeric:tabular-nums}.used-readonly::after{content:"自动";margin-left:6px;padding:2px 5px;border-radius:5px;background:#dfe7f2;color:#6b7c91;font-size:9px;vertical-align:middle}
.entry-launch{position:relative;overflow:hidden;border:1px solid rgba(37,99,235,.2)!important;border-bottom-width:4px!important;background:linear-gradient(160deg,#fff 0%,#f4f8ff 100%)!important;box-shadow:0 7px 0 #c9d9f4,0 12px 22px rgba(37,99,235,.14)!important;transform:translateY(0);animation:entry-rise .42s both}.entry-launch:nth-child(2n){animation-delay:.04s}.entry-launch:nth-child(3n){animation-delay:.08s}.entry-launch::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.85) 48%,transparent 70%);transform:translateX(-140%);transition:transform .55s ease}.entry-launch:hover{transform:translateY(-3px)!important;box-shadow:0 10px 0 #c9d9f4,0 17px 28px rgba(37,99,235,.18)!important}.entry-launch:hover::after{transform:translateX(140%)}.entry-launch:active{transform:translateY(5px)!important;box-shadow:0 2px 0 #b8cbea,0 5px 10px rgba(37,99,235,.12)!important}.income-launch{border-color:rgba(31,98,221,.25)!important}.expense-launch{border-color:rgba(12,142,100,.23)!important;background:linear-gradient(160deg,#fff 0%,#effbf6 100%)!important;box-shadow:0 7px 0 #bfe5d5,0 12px 22px rgba(10,132,91,.13)!important}.expense-launch:hover{box-shadow:0 10px 0 #bfe5d5,0 17px 28px rgba(10,132,91,.18)!important}.expense-launch:active{box-shadow:0 2px 0 #abd8c5,0 5px 10px rgba(10,132,91,.11)!important}.entry-modal{animation:modal-fade .2s ease both}.entry-sheet{animation:sheet-rise .3s cubic-bezier(.2,.8,.2,1) both}.entry-record{animation:record-slide .28s ease both}.stock-bump{animation:stock-bump .26s ease}.notice{animation:notice-pop .25s ease both}@keyframes entry-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-fade{from{opacity:0}to{opacity:1}}@keyframes sheet-rise{from{opacity:0;transform:translateY(22px) scale(.985)}to{opacity:1;transform:none}}@keyframes record-slide{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}@keyframes stock-bump{50%{transform:scale(1.08)}}@keyframes notice-pop{from{opacity:0;transform:translate(-50%,-8px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@media(max-width:600px){.inventory-toolbar{align-items:flex-start;flex-direction:column}.opening-inventory-btn,.inventory-save{width:100%}.inventory-footer{align-items:stretch;flex-direction:column}.inventory-table th,.inventory-table td{padding:11px 10px}.inventory-table-wrap{margin-right:-4px}.table-number-input{width:96px!important}}
@media(prefers-reduced-motion:reduce){.entry-launch,.entry-modal,.entry-sheet,.entry-record,.stock-bump,.notice{animation:none!important}.entry-launch::after{display:none}}
