
:root{--ink:#22372f;--muted:#78817b;--paper:#f6f7f2;--green:#173e35;--mint:#dcebe2;--line:#e5e8df;--amber:#ba7d27;--orange:#f4e8d2;--red:#b3473b;--white:#fff;--radius:17px;font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer;border:0;background:none;color:inherit}button:disabled{cursor:wait;opacity:.55}a{color:inherit}svg{flex:none;vertical-align:middle}.loading{padding:80px;text-align:center;color:var(--green)}.shell{display:grid;grid-template-columns:225px 1fr;min-height:100vh}.sidebar{background:#eef1e9;border-right:1px solid var(--line);padding:32px 20px;position:fixed;width:225px;height:100vh;display:flex;flex-direction:column;z-index:4}.brand{display:flex;align-items:center;gap:11px;padding:0 12px 35px}.mark{width:38px;height:42px;display:grid;place-items:center;color:var(--white);background:var(--green);border-radius:11px}.brand strong{display:block;font-size:21px;letter-spacing:2px}.brand small{font-size:10px;letter-spacing:2.2px;color:var(--muted)}.navlabel{font-size:10px;letter-spacing:1.7px;color:#8d958e;padding:8px 15px 14px}.nav{display:grid;gap:7px}.nav button{padding:13px 15px;display:flex;align-items:center;gap:13px;text-align:left;border-radius:10px;color:#6d7c72;font-size:14px;font-weight:500}.nav button.active{background:var(--green);color:white;box-shadow:0 5px 12px #173e3510}.nav button:hover:not(.active){background:#e2e8de}.nav button span:last-child{margin-left:auto}.nav .count{font-size:10px;border:1px solid currentColor;padding:1px 5px;border-radius:4px}.sidefoot{margin-top:auto;padding:18px 12px 0}.sidefoot p{font-size:12px;color:var(--muted);line-height:1.8}.sidefoot .mini{font-size:10px;letter-spacing:1px;margin-top:22px}.main{grid-column:2;padding:0 42px 46px;min-width:0}.topbar{height:87px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.crumb{font-size:12px;color:var(--muted)}.crumb b{color:var(--ink);margin-left:8px}.identity{display:flex;align-items:center;gap:13px}.identity select{max-width:185px;border:0;background:transparent;font-size:12px;color:var(--ink);padding:8px}.avatar{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#d9e5d8;font-size:12px;font-weight:700}.devtag{font-size:10px;border:1px solid #d6dece;padding:5px 8px;border-radius:5px;color:#6e806e;white-space:nowrap}.devtag:before{content:'';display:inline-block;width:5px;height:5px;background:#6c976c;border-radius:50%;margin-right:5px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:30px 0 24px}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:1.7px;margin-bottom:10px;text-transform:uppercase}h1{font-weight:600;font-size:29px;letter-spacing:-.5px;margin:0 0 9px}h2{font-size:16px;font-weight:600;margin:0}h3{font-size:14px;margin:0}p{margin:0}.sub{font-size:12px;color:var(--muted);line-height:1.8}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 16px;border:1px solid var(--line);background:white;border-radius:8px;font-size:12px;white-space:nowrap;line-height:1.35}.btn:hover{background:#f0f3eb;border-color:#ccd7c9}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn.primary:hover{background:#26584b}.btn.soft{background:#e4eee5;border-color:#e4eee5;color:var(--green)}.btn.warn{color:var(--red);background:#fff8f6}.btn.sm{padding:8px 11px;font-size:11px}.btn.big{font-size:16px;padding:18px}.link{font-size:11px;color:#4e6b5d;display:inline-flex;align-items:center;gap:5px;padding:4px 0}.link:hover{text-decoration:underline}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}.stat{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-width:0}.stat.feature{background:var(--green);border-color:var(--green);color:white}.stat .label{font-size:11px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);gap:8px}.stat.feature .label{color:#c5d5c5}.stat strong{font-family:Inter,"Segoe UI",sans-serif;font-size:29px;font-weight:600;display:block;letter-spacing:-1px;line-height:1.5;margin-top:9px}.stat strong small{font-family:inherit;font-size:11px;letter-spacing:0;font-weight:400;margin-left:4px}.stat .hint{font-size:10px;color:#8e998f;margin-top:4px}.stat.feature .hint{color:#9db8a5}.columns{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(265px,1fr);gap:22px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:22px}.panelhead{padding:21px 23px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #edf0e8}.panelhead p{font-size:10px;color:var(--muted);margin-top:7px}.panelbody{padding:20px 23px}.panel .panelbody+.panelbody{border-top:1px solid var(--line)}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{font-size:11px;padding:7px 12px;border-radius:7px;color:var(--muted);border:1px solid transparent}.chip.active{background:#edf2e9;color:var(--green);border-color:#e3eadb}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 23px;gap:10px;border-bottom:1px solid #edf0e8}.search{background:#f5f7f1;border:1px solid #e9ede2;padding:9px 12px;border-radius:7px;color:var(--muted);display:flex;align-items:center;gap:8px;max-width:300px}.search input{border:0;background:transparent;outline:0;min-width:0;width:100%;font-size:12px;color:var(--ink)}.bundlecard{padding:21px 23px;border-bottom:1px solid #edf0e8}.bundlecard:last-child{border:0}.bundletop{display:flex;gap:12px;align-items:flex-start}.swatch{height:53px;width:49px;border-radius:9px;display:grid;place-items:center;flex:none;background:linear-gradient(145deg,#e6e9de,#d5dbcc);color:#7f8b76}.swatch.blue{background:linear-gradient(145deg,#e4e9e8,#c9d4d7);color:#6f8991}.bundletitle{flex:1;min-width:0}.bundletitle h3{font-size:13px;margin:3px 0 7px}.metadata{font-size:10px;color:var(--muted);line-height:1.8;display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.code{font-family:"Cascadia Code",Consolas,monospace;font-size:10px;color:#879283}.pill{font-size:10px;line-height:1.2;border-radius:5px;padding:5px 7px;display:inline-flex;align-items:center;white-space:nowrap;background:#edf2e8;color:#517254}.pill.amber{color:#a16e24;background:#faf0df}.pill.red{color:#b14a3e;background:#fbebe7}.pill.gray{color:#899087;background:#f2f3ee}.journey{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:19px 0 17px}.stage{position:relative;color:#b7beb3;font-size:9px;display:flex;gap:5px;align-items:center;white-space:nowrap}.stage i{width:14px;height:14px;border-radius:50%;border:1px solid #d9dfd4;background:white;display:grid;place-items:center;font-size:8px;font-style:normal;flex:none;z-index:1}.stage:after{content:'';position:absolute;left:65px;right:0;height:1px;background:#e7ebe2;z-index:0}.stage:last-child:after{display:none}.stage.done{color:#4c7457}.stage.done i{background:#e4efe2;border-color:#b8cfb6}.stage.current{color:#a77729}.stage.current i{border-color:#d4b783;background:#fff8e9}.bundlefoot{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}.smallstack{display:grid;gap:14px}.requestmini{padding:17px 23px;border-bottom:1px solid #edf0e8}.requestmini:last-child{border-bottom:0}.row{display:flex;justify-content:space-between;gap:15px;align-items:center}.requestmini h3{font-size:12px}.requestmini .sub{font-size:10px;margin-top:7px}.requestmini .avatar{background:#f2ecdd;color:#9b8050}.feeditem{display:flex;gap:10px;position:relative;padding:0 0 19px}.feeditem:last-child{padding-bottom:0}.feeditem:before{content:'';position:absolute;left:5px;top:12px;bottom:0;width:1px;background:#e9eee4}.feeditem:last-child:before{display:none}.feeditem .dot{width:11px;height:11px;border-radius:50%;background:#d8e7d8;border:3px solid #f3f7ef;margin-top:2px;flex:none}.feeditem strong{font-size:11px;font-weight:500;display:block;line-height:1.7}.feeditem small{display:block;font-size:10px;color:#8e998c;margin-top:4px}.note{padding:15px 18px;border:1px solid #e7dec9;background:#fcf8ed;border-radius:12px;font-size:11px;color:#9c8658;line-height:1.8}.empty{text-align:center;padding:45px 20px;color:var(--muted);font-size:12px;line-height:2}.empty svg{display:block;margin:0 auto 13px;color:#bdcbbb}.tablewrap{overflow:auto}table{border-collapse:collapse;min-width:650px;width:100%;font-size:11px}th{text-align:left;font-weight:400;color:#8c968a;background:#fafbf7;padding:14px 18px;white-space:nowrap}td{padding:17px 18px;border-top:1px solid #edf0e8;white-space:nowrap}td strong{display:block;font-size:12px;font-weight:500}td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.muted{color:var(--muted)}.money{font-family:Inter,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums}.money.big{font-size:28px;letter-spacing:-.8px}.settlecard{padding:21px 23px;border-bottom:1px solid var(--line)}.settlecard:last-child{border:0}.moneygrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#f6f8f2;border-radius:9px;padding:14px;margin:15px 0}.moneygrid small{font-size:10px;color:var(--muted);display:block;margin-bottom:7px}.moneygrid b{font-size:14px;font-weight:500}.payrow{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #edf0e8;padding-top:12px;margin-top:12px;font-size:11px}.payrow small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.requestfull{padding:22px 23px;border-bottom:1px solid var(--line)}.requestfull:last-child{border:0}.requestfull .body{margin:14px 0;font-size:12px;line-height:1.8}.requestfull input[type=checkbox]{accent-color:var(--green);width:16px;height:16px}.answer{background:#f1f5eb;border-left:2px solid #a5bb8e;padding:12px;font-size:12px;line-height:1.7;color:#576f48}.tabsline{display:flex;gap:8px;margin-bottom:20px}.workerhero{border-radius:20px;background:var(--green);color:white;padding:29px;display:flex;justify-content:space-between;align-items:center;margin:28px 0 23px;gap:20px;position:relative;overflow:hidden}.workerhero .eyebrow{color:#9db8a4}.workerhero h1{font-size:25px;margin-bottom:8px}.workerhero .sub{color:#c0d2c1}.workerhero:after{content:'';position:absolute;width:210px;height:210px;border-radius:50%;border:35px solid #ffffff04;right:90px;top:-80px;pointer-events:none}.workerhero .btn{background:#e9f0df;color:var(--green);border:0}.taskgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.taskcard{background:white;border:1px solid var(--line);border-radius:15px;padding:22px}.taskcard h3{margin:10px 0 7px;font-size:17px}.taskcard .taskqty{font-size:31px;margin:18px 0 12px;letter-spacing:-1px}.taskcard .taskqty small{font-size:12px;letter-spacing:0;margin-left:6px;color:var(--muted)}.progress{height:5px;background:#edf0e7;border-radius:10px;overflow:hidden;margin:14px 0}.progress i{display:block;height:100%;background:#8fa984}.taskcard .actions{margin-top:18px}.taskcard .actions .btn{flex:1}.taskcard .metadata{margin-bottom:4px}.detailsgrid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.detaillead{background:#f3f6ee;border-radius:13px;padding:21px}.detaillead .metric{display:flex;gap:25px;margin:17px 0}.detaillead .metric b{font-size:24px;font-weight:500}.detaillead .metric small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.taskdetail{border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:13px}.taskdetail .row{align-items:flex-start}.taskdetail .sub{margin-top:7px}.detailtimeline{max-height:620px;overflow:auto;padding:12px 5px 0}.photos{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.photos img{width:62px;height:62px;object-fit:cover;border:1px solid var(--line);border-radius:8px;cursor:zoom-in}.phototitle{font-size:10px;color:var(--muted);padding-top:6px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:grid;gap:8px;align-content:start;margin-bottom:16px}.field label{font-size:12px;font-weight:500}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #dce2d5;border-radius:8px;padding:11px 12px;background:#fcfdf9;color:var(--ink);font-size:13px}.field textarea{min-height:85px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #a9bca2;outline-offset:1px}.field input[readonly]{background:#eef2e8;color:#6f7c69}.field small{font-size:10px;color:var(--muted);line-height:1.7}.field.full{grid-column:1/-1}.processrow{display:grid;grid-template-columns:1.3fr 1fr 1fr 30px;gap:8px}.processrow input{width:100%;min-width:0;padding:9px;border-radius:7px;border:1px solid var(--line);font-size:12px}.processhead{display:grid;grid-template-columns:1.3fr 1fr 1fr 30px;gap:8px;font-size:10px;color:var(--muted);margin-bottom:7px}.processlist{display:grid;gap:9px}.err{font-size:12px;color:var(--red);line-height:1.8;padding-top:10px}.modalheader{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.modalheader h2{font-size:21px}.modalheader p{margin-top:9px;font-size:12px;color:var(--muted);line-height:1.8}.close{font-size:23px;color:#809075;line-height:1;padding:0 3px}.modalfoot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:20px;border-top:1px solid var(--line)}dialog{border:1px solid #dce2d5;box-shadow:0 20px 100px #163a3525;border-radius:20px;padding:28px;max-width:min(94vw,650px);width:650px;color:var(--ink);max-height:90vh;overflow:auto;background:white}dialog.wide{width:1050px;max-width:94vw}dialog::backdrop{background:#152b2465;backdrop-filter:blur(3px)}.labelcard{text-align:center;border:1px dashed #adbfa1;padding:24px;border-radius:12px;max-width:360px;margin:auto}.labelcard h2{font-size:19px}.labelcard img{width:220px;height:220px}.labelcard p{font-size:13px;line-height:2}.labelcard strong{font-family:Consolas,monospace;font-size:15px;display:block}.labelcard .sub{margin-top:12px;font-size:11px}.wideimage{width:100%;max-height:65vh;object-fit:contain;background:#f7f9f3}.selectrow{display:flex;align-items:center;gap:12px}.welcome{max-width:1050px;margin:7vh auto;padding:24px}.welcomebrand{display:flex;align-items:center;gap:12px;margin-bottom:44px}.welcomehero h1{font-size:42px;font-weight:500;line-height:1.4;margin:13px 0 17px}.welcomehero .sub{font-size:14px;max-width:650px}.persona-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}.personabtn{padding:25px;background:white;text-align:left;border:1px solid var(--line);border-radius:15px;transition:transform .15s,box-shadow .15s}.personabtn:hover{transform:translateY(-3px);border-color:#a6ba9c;box-shadow:0 7px 20px #173e3509}.personabtn .roleicon{width:43px;height:43px;border-radius:12px;background:#eef3e8;color:#5b7b50;display:grid;place-items:center;margin-bottom:25px}.personabtn strong{font-size:16px;display:block;margin-bottom:9px}.personabtn small{font-size:12px;color:var(--muted)}.welcomefoot{display:flex;justify-content:space-between;align-items:center;margin-top:26px;font-size:11px;color:var(--muted)}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:#203c32;color:white;border-radius:9px;padding:13px 22px;font-size:12px;box-shadow:0 5px 20px #14352b22;opacity:0;pointer-events:none;transition:.2s;z-index:20;max-width:90vw}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.bottomnav{display:none}.camera{width:100%;max-height:300px;background:#eef3e8;border-radius:10px}.footer{display:flex;justify-content:space-between;margin-top:28px;font-size:10px;color:#a1aa9c;letter-spacing:.5px}.spacer{height:16px}.nowrap{white-space:nowrap}.label{font-size:10px;color:var(--muted)}.mobileonly{display:none}
@media(min-width:1450px){.main{padding-left:55px;padding-right:55px}.columns{grid-template-columns:2.1fr 1fr}.stat{padding:24px}}
@media(max-width:1120px){.sidebar{width:185px;padding:26px 12px}.shell{grid-template-columns:185px 1fr}.main{padding:0 25px 35px}.brand{padding:0 9px 28px}.brand strong{font-size:18px}.columns{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:17px}.stat strong{font-size:25px}.smallstack{grid-template-columns:1fr 1fr}.journey .stage:after{left:70px}.detailsgrid{grid-template-columns:1.3fr 1fr}}
@media(max-width:760px){.sidebar{display:none}.shell{display:block}.main{padding:0 17px 90px}.topbar{height:69px}.crumb{font-size:11px}.devtag{display:none}.identity{gap:3px}.identity select{max-width:135px;font-size:11px}.avatar{width:29px;height:29px}.intro{margin-top:25px;align-items:flex-start;flex-direction:column;gap:14px}h1{font-size:24px}.stats{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:20px}.stat{padding:18px;min-height:125px}.stat strong{font-size:27px}.stat .label{font-size:11px}.stat .hint{font-size:9px}.columns{gap:0}.panelhead{padding:18px}.panelbody{padding:18px}.toolbar{padding:13px 17px;align-items:stretch;flex-direction:column}.search{max-width:none}.bundlecard{padding:20px 17px}.journey{gap:3px}.stage{font-size:9px;gap:3px}.stage:after{display:none}.bundlefoot .link{font-size:10px}.smallstack{display:block}.taskgrid{grid-template-columns:1fr}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fafcf7f5;backdrop-filter:blur(10px);border-top:1px solid var(--line);height:72px;padding-bottom:env(safe-area-inset-bottom);z-index:5;justify-content:space-around}.bottomnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#97a18e;font-size:10px;min-width:65px}.bottomnav button.active{color:var(--green)}.workerhero{padding:24px;align-items:flex-start;flex-direction:column;gap:22px}.workerhero .actions{width:100%}.workerhero .actions button{flex:1}.workerhero h1{font-size:23px}.detailsgrid{grid-template-columns:1fr}.detailtimeline{max-height:330px}.formgrid{grid-template-columns:1fr;gap:0}.formgrid .full{grid-column:1}dialog{padding:23px 19px;border-radius:16px;width:94vw}.modalheader{margin-bottom:20px}.modalheader h2{font-size:19px}.moneygrid{grid-template-columns:1fr 1fr;gap:15px}.payrow{align-items:flex-start}.payrow .actions{justify-content:flex-end}.personagrid{grid-template-columns:1fr}.persona-grid{grid-template-columns:1fr 1fr;gap:10px}.personabtn{padding:20px}.welcome{margin:25px auto;padding:22px}.welcomehero h1{font-size:31px}.welcomehero .sub{font-size:12px}.welcomebrand{margin-bottom:35px}.welcomefoot{gap:15px;align-items:flex-start;flex-direction:column}.personabtn .roleicon{margin-bottom:20px}.footer{font-size:9px}.desktoponly{display:none}.mobileonly{display:inline-flex}.taskcard .taskqty{font-size:35px}.processrow,.processhead{grid-template-columns:1.2fr 1fr 1fr 22px}.requestfull{padding:20px 17px}}
@media print{body.printing #app,body.printing #toast,body.printing .modalheader,body.printing .modalfoot{display:none!important}body.printing dialog{position:static;display:block!important;margin:0;border:0;box-shadow:none;max-height:none;padding:0;width:100%;max-width:none}body.printing dialog::backdrop{background:white}.labelcard{break-inside:avoid;max-width:340px}}
.brand small{font-size:9px;letter-spacing:1.4px}.worker .taskcard .btn{font-size:14px;min-height:44px}.worker .moneygrid small{font-size:12px}.worker .moneygrid b{font-size:17px}.worker .settlecard h3{font-size:15px}.worker .payrow{font-size:13px}.worker .payrow small{font-size:11px}.worker .pill{font-size:11px}
@media(max-width:760px){.worker .sub{font-size:14px}.worker .metadata{font-size:12px}.worker .stat .label{font-size:12px}.worker .stat .hint{font-size:11px}.worker .btn.sm{font-size:13px}.worker .bottomnav button{font-size:12px}.worker .taskcard .btn{font-size:15px;min-height:48px}.field input,.field select,.field textarea{font-size:16px}.field label{font-size:14px}.modalfoot .btn{font-size:14px;min-height:46px}.modalheader p{font-size:13px}}


.claimlist{display:grid;gap:10px;margin:18px 0}.claimchoice{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:12px;padding:16px;cursor:pointer;min-height:92px}.claimchoice:has(input:checked){border-color:#487b61;background:#f0f6ee}.claimchoice input{width:23px;height:23px;accent-color:var(--green);flex:none;margin:0}.claimchoice>span{display:grid;gap:4px;min-width:0}.claimchoice strong{font-size:16px;overflow-wrap:anywhere}.claimstate{color:#75866e;font-size:13px}.claimchoice.unavailable{background:#f7f8f4;color:#7c857c;cursor:default}.claimsummary{padding:14px;background:#edf3e8;border-radius:10px;font-size:14px;line-height:1.7}.claimchoice .sub{font-size:14px}

.bundlefoot{gap:10px;flex-wrap:wrap}.bundlefoot>.actions{margin-left:auto}


/* V1.2 visual and touch refinements. Screen-only rules preserve printed tickets. */
@media screen {
:root{--ink:#203b32;--muted:#596d60;--paper:#f4f6f3;--line:#dfe7db;--radius:18px;font-size:15px;line-height:1.65}
body{font-size:15px;line-height:1.65}h1{font-size:30px;line-height:1.4}h2{font-size:19px;line-height:1.5}h3{font-size:17px;line-height:1.5}
.sub{font-size:14px;color:var(--muted);line-height:1.8}.label{font-size:13px;color:var(--muted)}.eyebrow{font-size:12px;color:#59705f;letter-spacing:1.2px;line-height:1.6}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #4b7b4e;outline-offset:3px}
.btn,.btn.sm,.worker .btn.sm{font-size:15px;line-height:1.5;min-height:48px;min-width:48px;padding:11px 18px;border-radius:12px;white-space:normal;word-break:keep-all}
.btn.big,.worker .taskcard .btn{min-height:54px;font-size:17px;padding:13px 22px}.btn.primary{box-shadow:0 3px 9px #173e3510}.btn:active,.personabtn:active{transform:translateY(1px)}
.btn.warn{border-color:#e9cfc7;color:#943b30}.actions{gap:12px;row-gap:12px;align-items:stretch}.actions .btn{align-self:stretch}
.link{min-height:48px;min-width:48px;font-size:14px;padding:10px 8px;border-radius:9px;line-height:1.5}.link:hover{background:#edf3e9;text-decoration:none}
.chip{font-size:14px;min-height:48px;padding:10px 16px;line-height:1.5;border:1px solid #dce5d6;background:#fff;border-radius:12px;color:#526a59}
.chip.active{border-color:#b5cbb0;background:#e8f1e3;color:#244e32;font-weight:600}.chips{gap:10px}.tabsline{gap:10px;flex-wrap:wrap}
.nav button{min-height:52px;font-size:16px;padding:14px 16px;gap:13px}.navlabel{font-size:11px;letter-spacing:1px;line-height:1.8}.nav .count{font-size:12px;padding:1px 6px}
.brand small{font-size:10px;line-height:1.7;letter-spacing:1px}.sidefoot p{font-size:13px}.sidefoot .note{font-size:12px!important}.sidefoot .mini{font-size:11px}
.main{padding:0 34px 42px}.topbar{min-height:88px;height:auto;padding:14px 0;gap:16px}.crumb{font-size:13px;line-height:1.7}.identity select{min-height:48px;border:1px solid #d8e2d2;border-radius:12px;background:white;padding:10px 12px;font-size:14px;max-width:210px}.avatar{width:38px;height:38px;font-size:13px}.devtag{font-size:11px}
.intro{align-items:center;margin:32px 0 26px}.intro .actions{flex-shrink:0}.intro .sub{max-width:660px}.stats{gap:16px;margin-bottom:26px}.stat{padding:22px;min-height:150px}.stat .label{font-size:13px;gap:10px;align-items:flex-start}.stat strong{font-size:32px;margin-top:12px;line-height:1.35;letter-spacing:-.5px}.stat strong small{font-size:13px}.stat .hint{font-size:12px;line-height:1.7;margin-top:8px;color:#5c7060}.stat.feature .label{color:#d1e0d3}.stat.feature .hint{color:#c7dac8}
.columns{grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr);gap:24px}.panel{box-shadow:0 3px 14px #173e3503;margin-bottom:24px}.panelhead{padding:22px 24px;gap:16px;flex-wrap:wrap}.panelhead p{font-size:13px;line-height:1.8}.panelhead .label{font-size:13px}.panelhead .muted{font-size:13px!important}.panelbody{padding:22px 24px}.toolbar{padding:18px 24px;gap:16px;flex-wrap:wrap}.search{max-width:330px;min-height:48px;background:#f6f9f2;border-color:#d6e1cf;border-radius:12px;padding:10px 14px}.search input{font-size:16px;line-height:1.5;min-height:26px}.search:focus-within{outline:2px solid #6b9061;outline-offset:2px}
.bundlecard{padding:24px}.bundletop{gap:14px}.bundletitle h3{font-size:18px;margin:1px 0 9px;line-height:1.5}.bundletitle h3 .muted{font-size:12px!important}.metadata{font-size:13px;gap:8px 12px;line-height:1.8;color:#5c7060}.code{font-size:12px;line-height:1.8;color:#59705d;overflow-wrap:anywhere}.pill,.worker .pill{font-size:12px;line-height:1.5;padding:6px 9px;white-space:normal;max-width:100%;text-align:center;flex-shrink:0}.pill.gray{color:#5c6d5c;background:#edf1e9}.pill.amber{color:#805818}.pill.red{color:#933b32}
.swatch{height:56px;width:50px;background:#e9eee3}.swatch.blue{background:#e4eded}.journey{gap:8px;padding:22px 0 20px}.stage{font-size:11px;gap:6px;line-height:1.6;white-space:normal;color:#6e7d69}.stage i{width:20px;height:20px;font-size:11px}.stage:after{display:none}.stage.current{color:#946616}.stage.current i{border-color:#b89142}.bundlefoot{font-size:13px;gap:12px;align-items:center;flex-wrap:wrap}.bundlefoot .actions{gap:10px}.bundlefoot .code{max-width:100%}
.requestmini{padding:20px 24px}.requestmini h3{font-size:16px}.requestmini .sub{font-size:13px}.requestmini .row{align-items:flex-start;gap:12px}.requestfull{padding:24px}.requestfull .body{font-size:15px;line-height:1.9;margin:18px 0}.requestfull input[type=checkbox]{width:24px;height:24px;margin:12px 0}.requestfull .selectrow{gap:14px}.answer{font-size:14px;line-height:1.8;border-color:#91ad7d;border-radius:0 10px 10px 0;padding:16px}
.feeditem{gap:14px;padding-bottom:24px}.feeditem strong{font-size:14px;font-weight:550;line-height:1.8}.feeditem .sub{font-size:13px!important}.feeditem small{font-size:12px;line-height:1.7;color:#5e745f;margin-top:7px}.feeditem:before{left:5px}.note{font-size:14px;line-height:1.9;color:#765b28;background:#fbf5e8;border-color:#ebdfc2;padding:18px 20px}.empty{font-size:15px;line-height:2;padding:42px 24px;color:#5c7160}.empty .sub{font-size:14px}
table{font-size:14px;min-width:780px}th{font-size:13px;font-weight:550;padding:18px 20px;color:#536951;background:#f5f8f0}td{padding:20px;font-size:14px}td strong{font-size:16px}td small{font-size:13px;line-height:1.8;margin-top:8px}td .actions{gap:10px}.tablewrap{scrollbar-width:auto;overscroll-behavior-x:contain}
.money.big{font-size:32px}.moneygrid{gap:18px;padding:20px;border-radius:14px;margin:20px 0}.moneygrid small,.worker .moneygrid small{font-size:13px;line-height:1.7;margin-bottom:8px;color:#576e58}.moneygrid b,.worker .moneygrid b{font-size:20px;line-height:1.5}.settlecard{padding:24px}.settlecard h3{font-size:18px!important}.settlecard h3 .muted{font-size:13px!important}.settlecard .row .sub{font-size:12px!important;line-height:1.8;overflow-wrap:anywhere}.payrow,.worker .payrow{font-size:14px;line-height:1.8;gap:18px;padding-top:18px;margin-top:18px;flex-wrap:wrap}.payrow small,.worker .payrow small{font-size:13px;line-height:1.8}.payrow>.actions{margin-left:auto;justify-content:flex-end}
.workerhero{padding:30px 32px;gap:24px;border-radius:22px}.workerhero h1{font-size:29px;line-height:1.5}.workerhero .sub{font-size:15px;color:#d0e0d0}.workerhero:after{display:none}.workerhero .eyebrow{color:#cee0ce}.taskgrid{gap:20px}.taskcard{padding:26px;border-radius:18px}.taskcard h3{font-size:22px;margin:15px 0 10px}.taskcard .sub{font-size:15px}.taskcard .taskqty{font-size:36px;margin:22px 0 16px;line-height:1.5}.taskcard .taskqty small{font-size:14px}.taskcard .metadata{font-size:13px}.progress{height:7px;margin:18px 0;background:#e6edde}.progress i{background:#668652}.taskcard .actions{margin-top:22px}
.detailsgrid{gap:26px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.detaillead{padding:24px;border-radius:16px}.detaillead .metric{gap:22px;flex-wrap:wrap;margin:22px 0}.detaillead .metric b{font-size:29px}.detaillead .metric small{font-size:13px;line-height:1.8}.taskdetail{padding:22px;border-radius:16px;margin-top:20px}.taskdetail h3{font-size:18px}.taskdetail .sub{font-size:14px}.taskdetail p.sub[style]{font-size:13px!important;line-height:1.9}.detailtimeline{padding-top:18px;max-height:720px}.detailsgrid>div>p.sub{font-size:13px!important}.photos{gap:12px;margin:16px 0}.photos img{width:88px;height:88px;border-radius:12px}.phototitle{font-size:13px}
.field{gap:10px;margin-bottom:22px}.field label{font-size:15px;font-weight:550;line-height:1.6}.field input,.field select,.field textarea{min-height:50px;font-size:16px;border-radius:12px;padding:13px 15px;border-color:#ccd9c4;background:#fcfef9;line-height:1.5}.field textarea{min-height:112px;line-height:1.8}.field small{font-size:13px;line-height:1.8}.field input::placeholder,.field textarea::placeholder{color:#73846f}.formgrid{gap:0 22px}.err{font-size:14px;line-height:1.9;padding:12px 0}.err:empty{padding:0}.processrow,.processhead{grid-template-columns:minmax(92px,1.3fr) minmax(68px,1fr) minmax(68px,1fr) 48px;gap:10px}.processrow input{font-size:16px;min-height:50px;border-color:#ccd9c4;border-radius:10px;padding:10px}.processrow button{min-width:48px;min-height:50px;font-size:24px;background:#f7eeea;color:#973f32;border-radius:10px}.processhead{font-size:13px;line-height:1.7;color:#536a51;margin-bottom:12px}.processlist{gap:14px;overflow-x:auto;padding:3px 2px 10px}.processrow,.processhead{min-width:310px}
dialog{padding:28px;border-radius:22px;max-height:calc(100dvh - 48px);scroll-padding:24px;box-shadow:0 24px 90px #163a3529}.modalheader{gap:20px;margin-bottom:26px;align-items:flex-start}.modalheader h2{font-size:24px;line-height:1.45;overflow-wrap:anywhere}.modalheader p{font-size:14px;line-height:1.9;margin-top:10px}.close{min-width:48px;min-height:48px;width:48px;border-radius:50%;font-size:29px;display:inline-grid;place-items:center;background:#f0f4eb;flex:none;padding:0}.modalfoot{position:sticky;bottom:-28px;z-index:3;background:#fff;gap:12px;margin-top:24px;padding:20px 0 8px;border-top:1px solid var(--line)}.modalfoot .btn{min-height:52px;font-size:16px;min-width:100px}.modalfoot button[type=submit]{flex:1;max-width:340px}
.claimchoice{padding:20px;gap:18px;border-radius:16px;min-height:108px}.claimchoice input{width:26px;height:26px;flex-shrink:0}.claimchoice strong{font-size:18px}.claimchoice .sub{font-size:15px}.claimstate{font-size:14px;line-height:1.8;color:#4e6c51}.claimchoice:has(input:checked){border-color:#416d46;background:#eff6e9;box-shadow:inset 0 0 0 1px #416d46}.claimchoice.unavailable{background:#f0f3ed;color:#657461}.claimsummary{padding:18px 20px;font-size:15px;line-height:1.9;background:#edf4e5;color:#2e5736;border:1px solid #d4e2c9;border-radius:14px}
.welcome{max-width:1080px;padding:32px;margin:5vh auto}.welcomehero h1{font-size:42px;line-height:1.5}.welcomehero .sub{font-size:16px}.persona-grid{gap:18px}.personabtn{padding:26px;border-radius:18px;min-height:168px}.personabtn strong{font-size:20px}.personabtn small{font-size:14px;line-height:1.8}.personabtn .roleicon{margin-bottom:20px}.welcomefoot{font-size:14px;gap:22px;flex-wrap:wrap}.footer{font-size:12px;color:#62765e;line-height:1.8;gap:18px;flex-wrap:wrap}.brand strong{letter-spacing:1px}.labelcard .sub{font-size:13px}.labelcard p{font-size:15px}.labelcard strong{overflow-wrap:anywhere}
#toast{font-size:15px;padding:16px 22px;line-height:1.8;border-radius:14px;bottom:28px;white-space:normal}
}
@media screen and (max-width:1150px){.columns{grid-template-columns:1fr}.main{padding-left:26px;padding-right:26px}.intro{align-items:flex-start;flex-direction:column}.stats{gap:12px}.stat{padding:20px}.stat strong{font-size:29px}.smallstack{grid-template-columns:1fr 1fr}}
@media screen and (max-width:760px){
.main{padding:0 18px calc(110px + env(safe-area-inset-bottom))}.topbar{min-height:82px;padding:14px 0;gap:10px;flex-wrap:wrap}.crumb{font-size:12px;flex:1;min-width:120px}.identity{gap:8px}.identity select{font-size:14px;max-width:160px;min-height:48px;padding:10px}.identity .avatar{display:none}
h1{font-size:27px}h2{font-size:18px}.intro{margin:26px 0 22px;gap:18px}.intro .sub,.worker .sub{font-size:15px}.intro>.actions{width:100%}.intro>.actions .btn{flex:1}.eyebrow{font-size:11px}.stats{gap:12px}.stat{padding:18px;min-height:156px}.stat strong{font-size:29px;overflow-wrap:anywhere;letter-spacing:-.6px}.stat .label,.worker .stat .label{font-size:13px}.stat .hint,.worker .stat .hint{font-size:12px;line-height:1.8}.stat strong small{font-size:12px}
.panelhead,.panelbody{padding:20px}.toolbar{padding:18px;gap:16px}.search{max-width:none}.bundlecard{padding:22px 18px}.bundletop{flex-wrap:wrap;gap:12px}.bundletitle{flex-basis:calc(100% - 66px)}.bundletitle h3{font-size:18px}.bundletop>.pill{margin-left:62px;margin-top:-4px}.bundlefoot>.actions{width:100%;margin-left:0}.bundlefoot>.actions>*{flex:1}.bundlefoot .link{font-size:14px;border:1px solid #d7e2cf;background:#f4f8ef;justify-content:center;border-radius:12px;padding:11px}.journey{gap:6px}.stage{font-size:11px;flex-direction:column;align-items:center;text-align:center;line-height:1.7;gap:8px}.stage i{width:23px;height:23px;font-size:12px}.metadata,.worker .metadata{font-size:14px;line-height:1.9}.requestmini,.requestfull{padding:22px 20px}.requestfull>.row{align-items:flex-start;flex-wrap:wrap}.requestfull .actions .btn{flex:1}.requestfull input[type=checkbox]{margin:12px 0}.payrow{align-items:flex-start}.payrow>.actions{width:100%;margin-left:0}.payrow .btn{flex:1}
.bottomnav{height:calc(78px + env(safe-area-inset-bottom));padding:5px 6px calc(5px + env(safe-area-inset-bottom));background:#fafcf7fa;align-items:stretch}.bottomnav button,.worker .bottomnav button{flex:1;min-width:0;min-height:64px;font-size:12px;line-height:1.4;gap:6px;border-radius:13px;padding:8px 2px;color:#586f58}.bottomnav button.active{color:#173e35;background:#e9f1e3;font-weight:650}.bottomnav svg{width:22px;height:22px}
.workerhero{padding:26px 24px;margin:26px 0;gap:22px}.workerhero h1{font-size:27px}.workerhero .actions{width:100%;gap:12px}.workerhero .actions button{flex:1;font-size:17px;min-height:56px;padding:13px 15px}.workerhero .sub{font-size:15px}.taskcard{padding:24px 20px}.taskcard h3{font-size:23px}.taskcard .taskqty{font-size:38px}.taskcard .actions .btn,.worker .taskcard .btn{font-size:16px;min-height:54px}.taskcard .metadata{align-items:flex-start;flex-direction:column;gap:6px}.taskcard .sub{font-size:15px}.taskcard .taskqty small{font-size:14px;line-height:1.8;letter-spacing:0}.worker .btn.sm{font-size:15px}
.moneygrid{grid-template-columns:1fr 1fr;gap:20px;padding:18px}.moneygrid b{font-size:20px}.settlecard{padding:22px 20px}.settlecard>.row{align-items:flex-start;flex-wrap:wrap}.settlecard .actions .btn{flex:1}.detailsgrid{grid-template-columns:1fr;gap:26px}.detaillead{padding:22px 18px}.detaillead .metric{gap:20px;justify-content:space-between}.detaillead .metric>div{min-width:100px}.taskdetail{padding:22px 18px}.taskdetail>.row{flex-wrap:wrap;gap:12px}.taskdetail .actions .btn{flex:1}.detailtimeline{max-height:none}.photos img{width:88px;height:88px}
dialog,dialog.wide{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:22px 20px;border-radius:20px;max-height:calc(100dvh - 28px)}.modalheader{gap:12px;margin-bottom:24px}.modalheader h2{font-size:22px}.modalheader p{font-size:14px;line-height:1.9}.modalfoot{bottom:-22px;padding:18px 0 4px;gap:12px}.modalfoot .btn{font-size:16px;min-height:54px;min-width:80px;padding:12px 16px}.modalfoot button[type=submit]{max-width:none;flex:1}.formgrid{display:block}.field label{font-size:16px}.field input,.field textarea,.field select{font-size:17px;min-height:54px}.field small{font-size:13px}.processrow,.processhead{gap:8px}.close{min-width:48px;min-height:48px}.claimchoice{padding:20px 16px;gap:16px}.claimchoice strong{font-size:18px}.claimchoice .sub{font-size:15px}.claimchoice input{width:26px;height:26px}.claimsummary{font-size:15px}.labelcard{padding:18px}.labelcard img{max-width:100%;height:auto;aspect-ratio:1}
.welcome{padding:26px 20px;margin:20px auto}.welcomehero h1{font-size:30px;line-height:1.55}.welcomehero .sub{font-size:15px}.persona-grid{grid-template-columns:1fr;gap:14px;margin:26px 0}.personabtn{min-height:106px;display:grid;grid-template-columns:52px 1fr;column-gap:18px;text-align:left;padding:22px}.personabtn .roleicon{grid-row:1/3;align-self:center;margin:0;width:50px;height:50px}.personabtn strong{font-size:21px;margin:0}.personabtn small{font-size:14px;margin-top:5px}.welcomefoot .actions{width:100%}.welcomefoot .actions .btn{flex:1}.welcomefoot{gap:20px}.empty{font-size:15px;line-height:2}.footer{font-size:12px}.note{font-size:14px;line-height:1.9}.tabsline .chip{flex:1}#toast{bottom:calc(96px + env(safe-area-inset-bottom));font-size:15px;width:max-content;max-width:calc(100vw - 36px)}
}
@media screen and (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* On phones, each person keeps all six table fields in one readable card. */
@media screen and (max-width:760px){
 .tablewrap:has(button[data-action="person"]){overflow:visible}
 .tablewrap:has(button[data-action="person"]) table{display:block;min-width:0;width:100%}
 .tablewrap:has(button[data-action="person"]) thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
 .tablewrap:has(button[data-action="person"]) tbody{display:grid;gap:16px;padding:18px}
 .tablewrap:has(button[data-action="person"]) tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 18px;background:#fff;border:1px solid #dce5d6;border-radius:16px;padding:20px}
 .tablewrap:has(button[data-action="person"]) td{display:block;border:0;padding:6px 0;white-space:normal;overflow-wrap:anywhere;min-width:0}
 .tablewrap:has(button[data-action="person"]) td:first-child{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:16px;margin-bottom:6px;border-bottom:1px solid #e4ecdf}
 .tablewrap:has(button[data-action="person"]) td:first-child strong{font-size:20px}
 .tablewrap:has(button[data-action="person"]) td:first-child small{font-size:14px;margin:0}
 .tablewrap:has(button[data-action="person"]) td:nth-child(2){grid-column:1/-1;font-size:16px}
 .tablewrap:has(button[data-action="person"]) td:nth-child(2) small{display:inline;margin-left:12px}
 .tablewrap:has(button[data-action="person"]) td:nth-child(3)::before{content:'手上任务';display:block;font-size:12px;color:#5c715f;margin-bottom:5px}
 .tablewrap:has(button[data-action="person"]) td:nth-child(4)::before{content:'合格件次';display:block;font-size:12px;color:#5c715f;margin-bottom:5px}
 .tablewrap:has(button[data-action="person"]) td:last-child{grid-column:1/-1;border-top:1px solid #e4ecdf;padding-top:16px;margin-top:6px}
 .tablewrap:has(button[data-action="person"]) td:last-child .actions{width:100%;gap:12px}
 .tablewrap:has(button[data-action="person"]) td:last-child .btn{flex:1;font-size:15px}
}
@media screen and (max-width:380px){
 .processrow,.processhead{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 48px;min-width:0;gap:6px}
 .processrow input{min-width:0;font-size:14px;padding:9px 4px}
 .processhead{font-size:11px;line-height:1.7}
 .main{padding-left:14px;padding-right:14px}
 .tablewrap:has(button[data-action="person"]) tbody{padding:14px}
 .tablewrap:has(button[data-action="person"]) tbody tr{padding:18px;column-gap:12px}
}
@media screen and (max-width:760px){
 .toolbar .chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
 .toolbar .chips .chip{text-align:center;min-width:0}
 .crumb b{display:block;margin:2px 0 0;font-size:13px;line-height:1.6}
}
@media screen and (max-width:760px){
 .workerhero{padding:22px 24px;gap:18px}
 .workerhero .eyebrow{margin-bottom:5px}
 .workerhero h1{font-size:25px;line-height:1.4;margin-bottom:7px}
 .workerhero .sub{font-size:14px;line-height:1.7}
 .taskcard{display:flex;flex-direction:column;padding:22px 20px}
 .taskcard h3{margin:10px 0 8px;font-size:22px}
 .taskcard .taskqty{font-size:34px;line-height:1.35;margin:14px 0 10px}
 .taskcard .progress{margin:12px 0}
 .taskcard>.actions{order:1;margin-top:14px}
 .taskcard>.metadata{order:2;margin-top:16px}
}

@media screen{.photos .photo-proof{display:inline-flex;padding:0;width:86px;height:86px;min-width:86px;min-height:86px;border:1px solid #cfddcc;border-radius:12px;overflow:hidden;background:#f3f7ef;cursor:pointer}.photos .photo-proof img{width:100%;height:100%;margin:0;border:0;border-radius:0;object-fit:cover}}

@media screen{.ops-card{padding:22px 0;border-bottom:1px solid #dce5d7}.ops-card:last-child{border-bottom:0}.ops-card p{margin-top:12px;overflow-wrap:anywhere}.ops-card .moneygrid{margin:18px 0}.ops-tabs{flex-wrap:wrap}.ops-lot[hidden]{display:none}.ops-lot{margin:14px 0}.ops-lot span{min-width:0}.ops-lot input{flex:none}.ops-lot .sub{display:block}.shell.worker .bottomnav{grid-template-columns:repeat(4,minmax(0,1fr))}.shell:not(.worker) .bottomnav{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* Semantic production states, with a text/check-mark selection cue. */
.chip.task-filter-active{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}.chip.task-filter-active.active{background:#1d4ed8;color:#fff;border-color:#1d4ed8}
.chip.task-filter-done{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.chip.task-filter-done.active{background:#15803d;color:#fff;border-color:#15803d}
.receiving-code{display:block;width:100%;min-height:48px;padding:12px;margin:12px 0;border:1px solid #b9cbd0;border-radius:10px}.recv-qty{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.recv-qty label{display:grid;gap:8px}.recv-qty input{min-height:48px;padding:10px;border:1px solid #b9cbd0;border-radius:8px;width:150px}.recv-check{display:flex;align-items:center;gap:10px;min-height:48px}.recv-check input{width:20px;height:20px}.btn:focus-visible,.chip:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}

.bulk-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:18px}.bulk-filter label{display:grid;gap:8px;color:#496254}.bulk-filter input,.bulk-filter select{min-height:48px;border:1px solid #c7d7ca;border-radius:10px;padding:10px;background:white;max-width:100%}.bulk-progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.bulk-progress>div{display:flex;justify-content:space-between;gap:18px;padding:12px;border-bottom:1px solid #e5e8df}.ops-card .code{word-break:break-all}
