:root{--red:#e60012;--dark:#242629;--muted:#777;--bg:#f5f6f8;--line:#e9eaed;--green:#16a36a;--shadow:0 5px 20px rgba(25,30,40,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--dark);font-family:"Microsoft YaHei",system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.login-page{min-height:100vh;background:linear-gradient(150deg,#d80013 0,#f22736 38%,#f5f6f8 38.1%);padding:54px 20px}.brand{display:flex;align-items:center;gap:12px;color:#fff;max-width:420px;margin:auto}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border:3px solid #fff;border-radius:15px;font-weight:bold;font-size:25px}.brand h1{margin:0;font-size:25px}.brand p{margin:3px 0;opacity:.85}.login-card{max-width:420px;margin:55px auto 0;padding:28px;background:#fff;border-radius:20px;box-shadow:0 16px 50px rgba(0,0,0,.16)}h1,h2,h3,p{margin-top:0}.login-card h2{margin-bottom:6px}.muted,.page-title p,.tip{color:var(--muted);font-size:13px}.login-card label,.form-grid label,.card>label{display:grid;gap:7px;font-size:14px;margin:17px 0}input,select,textarea{width:100%;padding:12px;border:1px solid #dadde2;border-radius:10px;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(230,0,18,.08)}button{border:0;border-radius:10px;padding:11px 16px}.primary{background:var(--red);color:#fff;font-weight:bold}.wide{width:100%}.tip{text-align:center;margin:14px 0 0}header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;height:65px;padding:0 max(18px,calc((100% - 1100px)/2));background:#fff;border-bottom:1px solid var(--line)}header b{display:block;color:var(--red)}header small{color:#777}.text-btn{background:none;color:var(--red);padding:6px}main{max-width:1100px;margin:auto;padding:22px 18px 90px}.page{display:none}.page.active{display:block}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.page-title h2{margin-bottom:4px}.page-title p{margin-bottom:0}.page-title select{width:auto;max-width:210px}.card{background:#fff;border-radius:15px;padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.kpi{background:#fff;border-radius:14px;padding:17px;box-shadow:var(--shadow);border-top:3px solid var(--red)}.kpi b{display:block;font-size:27px;margin-top:9px}.kpi span{font-size:13px;color:var(--muted)}.business-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.business-grid div{background:#f8f8fa;padding:12px;border-radius:10px;text-align:center}.business-grid b{display:block;color:var(--red);font-size:20px}.quick{display:flex;gap:10px;align-items:center}.quick h3{margin:0 auto 0 0}.quick button{color:var(--red);background:#fff2f3}.filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px}.list{display:grid;gap:10px}.list-item{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:13px;padding:15px 17px;box-shadow:var(--shadow)}.list-item h3{margin:0 0 5px;font-size:16px}.list-item p{margin:2px 0;color:#666;font-size:13px}.tag{display:inline-block;background:#fff1f2;color:var(--red);padding:4px 9px;border-radius:20px;font-size:12px}.upload{background:var(--red);color:#fff;padding:10px 14px;border-radius:10px;cursor:pointer;font-size:14px}.activity-meta{text-align:right}.activity-meta b{font-size:20px;color:var(--red)}.activity-meta small{display:block;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid label{margin:8px 0}.full{grid-column:1/-1}.card-head{display:flex;justify-content:space-between;align-items:center}.card-head h3{margin:0}.card-head select{width:auto;max-width:230px}.compact-list{margin-top:12px}.lead-row{display:grid;grid-template-columns:1fr auto;gap:6px;padding:12px 0;border-top:1px solid var(--line)}.lead-row p{margin:2px 0;font-size:13px;color:#666}.lead-row select{padding:7px;width:auto}.rank-filters{grid-template-columns:repeat(4,1fr)}.ranking{background:#fff;border-radius:15px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:14px}.rank-row{display:grid;grid-template-columns:55px 1fr 90px 90px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.rank-row:first-child,.rank-row:nth-child(2),.rank-row:nth-child(3){background:linear-gradient(90deg,#fff5f6,#fff)}.rank-no{font-size:18px;font-weight:bold;color:var(--red)}.rank-row small{color:var(--muted)}.export-btn{background:#fff;border:1px solid #ddd;margin:0 8px 8px 0}.report-card{background:#fff;border-radius:15px;margin-bottom:15px;padding:18px;box-shadow:var(--shadow)}.report-card pre{font-family:inherit;white-space:pre-wrap;line-height:1.75;background:#f7f7f8;padding:15px;border-radius:10px}.report-card button{background:#fff1f2;color:var(--red)}nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:center;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}nav button{width:100px;background:none;color:#666;border-radius:0;padding:14px 5px}nav button.active{color:var(--red);font-weight:bold;border-top:2px solid var(--red)}dialog{border:0;border-radius:18px;padding:0;width:min(850px,94vw);max-height:92vh}dialog::backdrop{background:rgba(0,0,0,.45)}.modal-card{padding:22px}.modal-head{display:flex;justify-content:space-between}.modal-head button{font-size:25px;background:none}.participant-box{border:1px solid var(--line);border-radius:12px;padding:14px;margin:15px 0}.participant-box .filters{grid-template-columns:repeat(4,1fr);margin:12px 0}.batch-btn{color:var(--red);background:#fff1f2;margin-bottom:8px}.picker-list{max-height:250px;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:4px}.picker-list label{display:flex;gap:8px;align-items:center;padding:8px;border-radius:8px}.picker-list label:hover{background:#f7f7f8}.picker-list input{width:auto}#toast{display:none;position:fixed;z-index:100;top:16px;left:50%;transform:translateX(-50%);background:#222;color:#fff;padding:11px 18px;border-radius:9px;box-shadow:var(--shadow)}.empty{text-align:center;padding:35px;color:#999}
@media(max-width:720px){header{padding:0 15px}header b{font-size:14px}main{padding:17px 12px 86px}.page-title{align-items:flex-start}.page-title h2{font-size:21px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi-grid .kpi:last-child{grid-column:1/-1}.business-grid{grid-template-columns:repeat(2,1fr)}.filters,.rank-filters,.participant-box .filters{grid-template-columns:1fr 1fr}.filters input:first-child{grid-column:1/-1}.list-item{align-items:flex-start}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.quick{align-items:stretch;flex-wrap:wrap}.quick h3{width:100%}.rank-row{grid-template-columns:42px 1fr 65px}.rank-row .completed{display:none}.picker-list{grid-template-columns:1fr}dialog{width:96vw}.modal-card{padding:15px}.participant-box{padding:10px}nav button{font-size:13px;padding:13px 3px}.more{display:none}.activity-meta{min-width:70px}}

/* 中国移动品牌主题 */
:root{--red:#0085d0}
.login-page{background:linear-gradient(150deg,#0074be 0,#20a7e8 38%,#f5f6f8 38.1%)}
.login-card{border-top:4px solid #0085d0}
.header-brand,.header-user{display:flex;align-items:center;gap:10px}
.header-brand>span:last-child{display:grid;gap:2px}
.header-mark{display:grid;place-items:center;width:34px;height:34px;border:2px solid #0085d0;border-radius:11px;color:#0085d0;font-weight:800;font-style:italic}
.header-brand b{font-size:16px;line-height:1}
.header-brand small{font-size:12px;color:#777}
.quick button,.batch-btn,.report-card button,.tag{background:#eef8fe}
.rank-row:first-child,.rank-row:nth-child(2),.rank-row:nth-child(3){background:linear-gradient(90deg,#eff9ff,#fff)}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px rgba(0,133,208,.1)}
@media(max-width:720px){.header-brand small{display:none}.header-user{gap:2px}.header-user>small{max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand h1{font-size:22px}}

.brand-logo{width:174px;height:64px;object-fit:cover;border-radius:12px;box-shadow:0 4px 16px rgba(0,75,125,.16)}
.header-logo{width:140px;height:44px;object-fit:cover;border-radius:6px}
@media(max-width:720px){.brand{align-items:flex-start;flex-direction:column}.brand-logo{width:166px;height:60px}.brand h1{font-size:20px}.header-logo{width:118px;height:38px}.header-brand>span:last-child{display:none}}

#rankings .rank-row,#rankings .rank-header{grid-template-columns:70px minmax(120px,1.25fr) repeat(4,minmax(90px,1fr));min-width:680px}
.reward-tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.reward-tags em{font-style:normal;font-size:12px;color:#0074be;background:#eaf7ff;border:1px solid #b9e3f8;padding:4px 7px;border-radius:20px;white-space:nowrap}
.reward-tags small{color:#aaa}
@media(max-width:720px){#rankings .rank-row{grid-template-columns:42px 1fr 65px}.reward-tags{grid-column:2/-1;justify-content:flex-start;margin-top:5px}}

.ranking-title{display:flex;justify-content:space-between;align-items:end;margin:20px 4px 10px}.ranking-title h3{margin:0}.ranking-title span{font-size:12px;color:#888}.reward-title{margin-top:28px}.reward-ranking{background:#fff;border-radius:15px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:16px}.reward-row{display:grid;grid-template-columns:85px 1fr minmax(130px,auto) 110px;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.reward-order{font-weight:bold;color:#0085d0}.reward-row>small{text-align:right;color:#888}.reward-row .reward-tags{grid-column:auto;margin:0}
@media(max-width:720px){.ranking-title{display:block}.ranking-title span{display:block;margin-top:4px}.reward-row{grid-template-columns:70px 1fr}.reward-row .reward-tags{grid-column:1/-1}.reward-row>small{grid-column:1/-1;text-align:left}}

.rank-header{display:grid;align-items:center;padding:12px 18px;background:#eef8fe;color:var(--dark);font-size:inherit;border-bottom:1px solid #d9edf8}.rank-header b:nth-child(n+3),.rank-row>span:nth-child(n+3){text-align:right}.rank-row>strong{text-align:right;color:#0085d0}.incentive-setting{display:flex;align-items:end;justify-content:flex-end;gap:10px;background:#fff;padding:14px 16px;border-radius:14px;box-shadow:var(--shadow);margin-bottom:14px}.incentive-setting label{display:grid;gap:5px;font-size:13px;color:#666}.incentive-setting input{width:150px;padding:9px}.incentive-setting button{padding:10px 16px}#rankingList{overflow-x:auto}
@media(max-width:720px){#rankings .rank-row,#rankings .rank-header{padding-left:12px;padding-right:12px}.rank-header{font-size:inherit}.incentive-setting{align-items:stretch;flex-wrap:wrap}.incentive-setting label{flex:1;min-width:120px}.incentive-setting input{width:100%}.incentive-setting button{width:100%}}

#rankings .rank-header>*,#rankings .rank-row>*{text-align:center!important;justify-self:stretch}

.date-filter{display:grid;gap:5px;margin:0!important}.date-filter span{display:none;font-size:12px;color:#777}
.rank-filters{grid-template-columns:2fr 1fr 1fr}.ranking-title-main{display:flex;align-items:center;gap:12px}.ranking-title-main h3{margin:0}.ranking-title-main #rankGroup{width:auto;min-width:120px;padding:8px 32px 8px 10px}
#rankingControls{margin-top:28px}#rankingControls::before{content:"活动任务与奖励设置";display:block;font-size:18px;font-weight:bold;margin:0 4px 10px}
#rankingControls .incentive-setting{justify-content:center;text-align:center}
#rankingControls .incentive-setting>span{display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap;width:100%;font-size:16px}
#rankingControls .incentive-setting b{color:#263746;font-size:18px}
.knowledge-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.knowledge-card{margin:0}.knowledge-card h3{color:#0085d0;margin-bottom:12px}.knowledge-card p{line-height:1.7;margin-bottom:8px;color:#555}.knowledge-card b{color:#263746}
.knowledge-grid.single{grid-template-columns:1fr}
.knowledge-grid.single .knowledge-card{min-height:180px}
.knowledge-policy{display:grid;gap:14px}
.knowledge-policy label{margin:0}
.knowledge-policy textarea{line-height:1.8;resize:vertical}
.knowledge-policy textarea[readonly]{background:#f8fbfd;color:#263746}
.knowledge-policy .primary{justify-self:end}
.text-btn.danger{color:#d93025;background:#fff4f2}
.activity-meta .text-btn{display:block;margin-top:4px;margin-left:auto}
@media(max-width:720px){
  .rank-filters{grid-template-columns:1fr;align-items:end}
  .rank-filters{padding:14px;gap:8px}
.rank-filters select{height:40px;padding:7px 10px;font-size:13px}
  .knowledge-grid{grid-template-columns:1fr;gap:12px}.knowledge-card{padding:16px}
  .date-filter span{display:block}
  .date-filter span{font-size:11px}.date-filter input{min-width:0;height:38px;padding:6px 8px;font-size:13px}
  .ranking-title-main{justify-content:space-between;gap:8px}.ranking-title-main #rankGroup{min-width:112px;max-width:130px}
  #rankings .rank-header,#rankings .rank-row{grid-template-columns:32px minmax(58px,1.2fr) repeat(3,minmax(46px,.85fr)) minmax(66px,1fr);min-width:0;padding:10px 5px;font-size:11px}
  #rankings .rank-header>* ,#rankings .rank-row>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #rankings .rank-row{min-height:48px}
  #rankings .rank-no{font-size:15px}
  .reward-row{grid-template-columns:52px minmax(58px,1fr) minmax(132px,1.7fr);gap:6px;padding:12px 10px}
  .reward-row>small{display:none}
  .reward-row>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .reward-row .reward-tags{grid-column:auto;justify-content:flex-end;flex-wrap:nowrap;margin:0}
  .reward-row .reward-tags em{font-size:11px;padding:4px 6px;overflow:hidden;text-overflow:ellipsis}
  #rankingControls::before{text-align:center;margin-bottom:8px}
  #rankingControls .incentive-setting{padding:14px 10px}
  #rankingControls .incentive-setting>span{gap:10px;font-size:14px;line-height:1.8}
  #rankingControls .incentive-setting b{font-size:16px}
}

.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.tool-card{display:flex;flex-direction:column;justify-content:space-between;min-height:220px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.tool-card h3{margin:8px 0 8px;font-size:20px}.tool-card p{color:#666;font-size:14px;line-height:1.6;margin-bottom:18px}.tool-kicker{display:inline-flex;align-items:center;width:max-content;background:#fff1f2;color:var(--red);padding:4px 9px;border-radius:999px;font-size:12px;font-weight:bold}.tool-card.primary-tool{border-top:3px solid var(--red)}.tool-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;background:#fff1f2;color:var(--red);font-weight:bold;text-decoration:none}.ops-card{display:flex;align-items:center;justify-content:space-between;gap:14px}.ops-card h3{margin-bottom:6px}.ops-card p{margin-bottom:0;line-height:1.6}.ops-card button{flex:0 0 auto;background:#fff1f2;color:var(--red)}
@media(max-width:860px){.tool-grid{grid-template-columns:1fr}.tool-card{min-height:0}.ops-card{align-items:stretch;flex-direction:column}nav{justify-content:space-around}nav button{width:auto;min-width:48px;flex:1;font-size:12px;padding-left:2px;padding-right:2px}}

.embedded-section{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.embedded-section>.page-title{margin-top:0}.embedded-section .card.filters{box-shadow:none;border:1px solid var(--line)}#dashboardStaff .list-item{box-shadow:none;border:1px solid var(--line)}#rankingReports{margin-top:26px}#rankingReports .report-card{box-shadow:none;border:1px solid var(--line)}#rankingReports .card{box-shadow:none;border:1px solid var(--line)}
@media(max-width:720px){.embedded-section{margin-top:18px;padding-top:16px}.embedded-section>.page-title{display:block}.embedded-section .page-title .upload{display:inline-flex;margin-top:10px}.embedded-section .card.filters{grid-template-columns:1fr 1fr}.embedded-section .card.filters input:first-child{grid-column:1/-1}#dashboardStaff .list-item{padding:12px}#dashboardStaff .list-item h3{font-size:15px}#dashboardStaff .list-item p{font-size:12px;line-height:1.5}#rankingReports .report-card pre{font-size:14px;line-height:1.65;max-height:46vh;overflow:auto}#rankingReports .card-head{align-items:flex-start;gap:10px}#rankingReports .card-head button{width:auto;white-space:nowrap}nav button{font-size:13px;min-width:0}}

.ticket-tabs{display:flex;gap:8px;overflow-x:auto;margin:0 0 14px;padding-bottom:4px}.ticket-tabs button{flex:0 0 auto;background:#fff;border:1px solid var(--line);color:#555;padding:9px 12px}.ticket-tabs button.active{background:var(--red);border-color:var(--red);color:#fff;font-weight:bold}.ticket-list{display:grid;gap:10px}.ticket-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;box-shadow:var(--shadow)}.ticket-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ticket-card b{line-height:1.45}.ticket-card p{margin:6px 0 0;color:#666;font-size:13px;line-height:1.5}.ticket-status{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:4px 9px;background:#f3f4f6;color:#555;font-size:12px;font-weight:bold}.ticket-status.pending{background:#fff1f2;color:var(--red)}.ticket-status.doing{background:#eff6ff;color:#2563eb}.ticket-status.need{background:#fff7ed;color:#c2410c}.ticket-status.done{background:#ecfdf3;color:#047857}.ticket-status.closed{background:#f3f4f6;color:#667085}.ticket-detail-head{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;margin-bottom:12px}.ticket-detail-head p{margin:10px 0 0;line-height:1.65}.ticket-admin-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ticket-admin-form label{margin:0}.ticket-timeline{display:grid;gap:10px}.ticket-log{border-left:3px solid var(--red);background:#fafafa;border-radius:8px;padding:10px 12px}.ticket-log b{display:block}.ticket-log span{display:block;margin-top:4px;color:#777;font-size:12px}.ticket-log p{margin:7px 0 0;color:#555;line-height:1.6}.ticket-file{display:block;margin:8px 0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafa;color:var(--dark);text-decoration:none}.ticket-file small{color:#777}.ticket-upload{display:inline-flex;margin-top:8px}.ticket-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:12px}.ticket-stats div{background:#f8f8fa;border-radius:10px;padding:10px;text-align:center}.ticket-stats b{display:block;color:var(--red);font-size:20px}.ticket-stats span{font-size:12px;color:#666}.daily-card pre{white-space:pre-wrap;background:#f7f7f8;border-radius:10px;padding:12px;line-height:1.7;max-height:48vh;overflow:auto}.ticket-filters{grid-template-columns:180px 1fr}
@media(max-width:720px){.ticket-tabs{margin-left:-2px;margin-right:-2px}.ticket-tabs button{font-size:13px;padding:9px 10px}.ticket-card{padding:12px}.ticket-card-head{display:block}.ticket-card-head .ticket-status{margin-top:8px}.ticket-admin-form{grid-template-columns:1fr}.ticket-filters{grid-template-columns:1fr}.ticket-stats{grid-template-columns:repeat(2,1fr)}#ticketModal{width:96vw}.ticket-detail-head,.ticket-card{box-shadow:none}nav button{font-size:12px}}
.ticket-photo-box{display:flex;align-items:center;gap:12px;margin:8px 0 12px}.ticket-photo-box .muted{margin:0;line-height:1.5}.ticket-photo-upload{display:inline-flex;margin:0;white-space:nowrap}
@media(max-width:720px){.ticket-photo-box{align-items:flex-start;flex-direction:column;gap:8px}.ticket-photo-upload{width:100%;justify-content:center}}

.purchase-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.purchase-summary div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow)}.purchase-summary span{display:block;color:#777;font-size:12px}.purchase-summary b{display:block;margin-top:5px;color:var(--red)}.purchase-items{display:grid;gap:10px;padding-bottom:86px}.purchase-item{display:grid;grid-template-columns:1fr auto;gap:12px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;box-shadow:var(--shadow)}.purchase-item h3{font-size:16px;margin-bottom:6px}.purchase-item p{margin:4px 0;color:#666;font-size:13px}.purchase-item-side{text-align:right}.purchase-item-side>b{display:block;color:var(--red);font-size:18px;margin-bottom:8px}.qty{display:inline-grid;grid-template-columns:34px 46px 34px;gap:4px;align-items:center}.qty button{min-height:34px;padding:0;background:#fff1f2;color:var(--red);font-size:18px}.qty button:disabled{opacity:.4}.qty input{text-align:center;min-height:34px;padding:4px;border-radius:8px}.purchase-item-side small{display:block;margin-top:6px;color:#666}.purchase-bar{position:fixed;left:0;right:0;bottom:calc(52px + env(safe-area-inset-bottom));z-index:9;display:grid;grid-template-columns:repeat(3,1fr) auto;gap:8px;align-items:center;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(25,30,40,.09);padding:10px max(12px,calc((100% - 1100px)/2))}.purchase-bar span{display:block;color:#777;font-size:11px}.purchase-bar b{font-size:15px;color:var(--red)}.purchase-bar button{min-width:88px}.purchase-imports{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.purchase-imports button,.purchase-imports .upload{width:auto}.purchase-batches{display:grid;gap:10px;margin-bottom:14px}.purchase-admin-rows{display:grid;gap:8px;margin-top:12px}.purchase-admin-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#fafafa;border:1px solid var(--line);border-radius:10px;padding:12px}.purchase-admin-row p{margin:5px 0 0;color:#666;font-size:13px}.purchase-admin-row>div:last-child{text-align:right}.purchase-admin-row button{margin-top:6px;background:#fff1f2;color:var(--red);padding:7px 10px}.purchase-admin{margin-bottom:16px}
@media(max-width:720px){.purchase-summary{grid-template-columns:1fr 1fr}.purchase-item{grid-template-columns:1fr}.purchase-item-side{text-align:left}.purchase-bar{grid-template-columns:repeat(3,1fr);bottom:calc(50px + env(safe-area-inset-bottom));padding:9px 10px}.purchase-bar button{grid-column:1/-1;width:100%;min-height:40px}.purchase-imports{display:grid;grid-template-columns:1fr 1fr}.purchase-imports button,.purchase-imports .upload{width:100%;text-align:center}.purchase-admin-row{grid-template-columns:1fr}.purchase-admin-row>div:last-child{text-align:left}main{padding-bottom:130px}}
.purchase-submitted{box-shadow:var(--shadow)}.purchase-order-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.purchase-order-row:first-of-type{border-top:0}.purchase-order-row p{margin:5px 0 0;color:#666;font-size:13px}.purchase-order-row>div:last-child{text-align:right}.purchase-order-row span{display:block;color:#666;font-size:13px}.purchase-order-row>div:last-child b{display:block;color:var(--red);margin-top:4px}.purchase-order-total{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:14px;border-top:2px solid var(--line)}.purchase-order-total span{color:#666}.purchase-order-total b{font-size:22px;color:var(--red)}
@media(max-width:720px){.purchase-order-row{grid-template-columns:1fr}.purchase-order-row>div:last-child{text-align:left}.purchase-order-total{align-items:flex-start;flex-direction:column;gap:6px}}

.purchase-section{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.purchase-section:first-child{border-top:0;padding-top:0;margin-top:0}.purchase-section>.card-head{margin-bottom:8px}.purchase-section .muted{margin:0 0 8px;color:#666;font-size:13px}

.purchase-notice-bar{display:grid;gap:10px;margin-bottom:14px}.purchase-notice{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;background:#fff7ed;border:1px solid #fed7aa;border-left:4px solid #f97316;border-radius:10px;padding:12px 14px;box-shadow:var(--shadow)}.purchase-notice b{display:block;margin-bottom:5px;color:#1f2937}.purchase-notice p{margin:0;color:#555;white-space:pre-wrap;line-height:1.55}.purchase-notice span{color:#777;font-size:12px;white-space:nowrap}.purchase-notice-editor{display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:start;margin-bottom:10px}.purchase-notice-editor textarea{resize:vertical;min-height:78px}
@media(max-width:720px){.purchase-notice{grid-template-columns:1fr}.purchase-notice span{white-space:normal}.purchase-notice-editor{grid-template-columns:1fr}.purchase-notice-editor button{width:100%}}
