:root{--bg:#F3EEE7;--alt:#EAE3D9;--paper:#F8F4EE;--ink:#3B3632;--muted:#6E6359;--line:#D3C9BC;--soft:#E4DCD0;--deep:#35302B;--deep-ink:#EFE8DE;--bronze:#8C6D48;--warn:#9E4B36;
--serif:'Cormorant Garamond',Garamond,'Times New Roman',serif;--sans:'Jost',Futura,'Century Gothic','Avenir Next',system-ui,sans-serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#1E1B18;--alt:#262220;--paper:#24201D;--ink:#ECE5DA;--muted:#A99E92;--line:#3E3832;--soft:#302B27;--deep:#ECE5DA;--deep-ink:#1E1B18;--bronze:#C4A27A;--warn:#E08A72;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#1E1B18;--alt:#262220;--paper:#24201D;--ink:#ECE5DA;--muted:#A99E92;--line:#3E3832;--soft:#302B27;--deep:#ECE5DA;--deep-ink:#1E1B18;--bronze:#C4A27A;--warn:#E08A72;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:env(safe-area-inset-top,0px);background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;font-size:15px;line-height:1.7;font-variant-numeric:lining-nums tabular-nums;-webkit-font-smoothing:antialiased}
b,strong{font-weight:500}
main{max-width:820px;margin:0 auto;padding:28px 20px 96px}
h1{font-family:var(--serif);font-weight:300;font-size:clamp(34px,6vw,48px);line-height:1.1;margin:6px 0 0;letter-spacing:.005em}
h2{font-family:var(--serif);font-weight:300;font-size:clamp(26px,4.4vw,34px);line-height:1.15;margin:52px 0 16px}
h3{font-family:var(--sans);font-weight:400;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.label{font-size:11px;font-weight:400;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
.sub{color:var(--muted);font-size:13px}
.top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.save{font-size:12px;color:var(--muted)}
.who{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.card{background:var(--paper);border:1px solid var(--line);padding:18px}
.prow{display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.prow:first-child{padding-top:2px}.prow:last-child{border-bottom:0;padding-bottom:2px}
.sw{width:4px;height:44px}
.pname{font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.2}
.pbar{height:2px;background:var(--line);margin-top:8px;overflow:hidden}.pbar i{display:block;height:100%;background:var(--bronze)!important}
.due{text-align:right;font-size:13px}.due b{display:block;font-family:var(--serif);font-size:20px;font-weight:500}.late{color:var(--warn)}
.person{margin-bottom:22px}
.item{display:flex;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.item .d{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.empty{color:var(--muted);font-size:13px;padding:6px 0}
.tl{overflow-x:auto;background:var(--paper);border:1px solid var(--line);padding:14px 0}
.tlin{position:relative;padding:0 14px}
.mrow{position:relative;height:20px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.mrow span{position:absolute;top:0}
.lane{margin:6px 0 12px}.lane b{font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);position:sticky;left:0;display:inline-block;background:var(--paper);padding-right:8px}
.track{position:relative;height:28px;background:var(--alt);margin-top:4px}
.bar{position:absolute;top:4px;height:20px;font-size:10.5px;line-height:20px;padding:0 6px;white-space:nowrap;overflow:hidden;color:#2C2723;letter-spacing:.02em}
.todayl{position:absolute;top:-4px;bottom:-4px;width:1px;background:var(--warn);left:0}
.proj{margin-bottom:12px}
.ph{display:flex;align-items:center;gap:14px;cursor:pointer;background:none;border:0;width:100%;text-align:left;font:inherit;color:inherit;padding:0}
.ph .sw{height:36px}.ph b{font-family:var(--serif);font-size:22px;font-weight:400}
.rooms{margin-top:16px}.room{padding:12px 0;border-top:1px solid var(--line)}.room .rn{font-size:12px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chips{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
.chip{height:42px;border:1px solid var(--line);background:transparent;font:inherit;color:var(--ink);cursor:pointer;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}
.chip b{font-size:10.5px;font-weight:500;letter-spacing:.06em}.chip small{font-size:10px;opacity:.75}
.chip.proses{background:#E9DDCB;border-color:#B79E7E;color:#3B3632}
.chip.review{background:#EFE4C9;border-color:#C2A35E;color:#4A3B1A}
.chip.revisi{background:#ECD6CE;border-color:#B07A6A;color:#5A2C20}
.chip.selesai{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
.chip.sel{outline:1px solid var(--ink);outline-offset:2px}
.ed{margin-top:14px;padding:16px;background:var(--alt)}
.ed.client{background:transparent;border:1px solid var(--bronze)}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
button.b,a.b{font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:11px 16px;min-height:40px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;border-radius:0;transition:background .3s,color .3s}
button.b:hover,a.b:hover{background:var(--ink);color:var(--bg)}
button.b.pri,a.b.pri{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
button.b.pri:hover,a.b.pri:hover{background:var(--bronze);border-color:var(--bronze)}
button.b.on{background:var(--ink);color:var(--bg)}
button.b.dang{border-color:var(--warn);color:var(--warn)}
button.b.dang.on,button.b.dang:hover{background:var(--warn);color:var(--bg)}
button.b.sm{min-height:32px;padding:6px 12px;font-size:10px}
select,input{font-family:var(--sans);font-weight:300;font-size:15px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 2px;min-height:40px;border-radius:0}
select{border:1px solid var(--line);padding:8px 10px}
input:focus,select:focus{outline:none;border-color:var(--ink)}
input[type=number]{width:84px}input[type=date]{min-width:150px}
label.f{display:block;font-size:11px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:16px}
label.f input,label.f select{display:block;width:100%;margin-top:2px;letter-spacing:0;text-transform:none;color:var(--ink)}
.sws{display:flex;gap:8px;margin-top:8px}.sws button{width:30px;height:30px;border-radius:50%;border:1px solid transparent;cursor:pointer;outline-offset:2px}.sws button.on{outline:1px solid var(--ink)}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;letter-spacing:.08em;color:var(--muted);margin-top:12px}.legend span{display:flex;align-items:center;gap:6px}
.legend i{width:14px;height:14px;border:1px solid var(--line);display:inline-block}
.legend i.lp{background:#E9DDCB;border-color:#B79E7E}.legend i.lr{background:#EFE4C9;border-color:#C2A35E}.legend i.lv{background:#ECD6CE;border-color:#B07A6A}.legend i.ls{background:var(--deep);border-color:var(--deep)}
.note{font-size:12.5px;color:var(--muted);margin-top:10px;line-height:1.6}
.ck{display:flex;align-items:center;gap:6px;margin-right:10px;font-size:13px}.ck input{min-height:auto;accent-color:var(--deep)}
.mrow2{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);gap:10px}
.login{max-width:400px;margin:10vh auto 0}
.login .mono{width:64px;height:auto;display:block;margin:28px 0 22px;color:var(--ink)}
.login .msg{color:var(--warn);font-size:14px}
.langsw{display:flex;justify-content:flex-end}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:1px solid var(--ink);outline-offset:3px}
.tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-top:22px}
.tabs button,.ptabs button{background:none;border:0;border-bottom:1px solid transparent;font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);padding:12px 0;cursor:pointer;margin-bottom:-1px}
.tabs button.on,.ptabs button.on{color:var(--ink);border-bottom-color:var(--ink)}
.ptabs{display:flex;gap:18px;overflow-x:auto;border-bottom:1px solid var(--line);margin-top:14px;scrollbar-width:none}
.ptabs button{white-space:nowrap;font-size:10px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 16px}
.mtg{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.mtg.past{opacity:.55}
.mdate{width:52px;text-align:center;border:1px solid var(--line);padding:6px 0;flex-shrink:0;height:max-content}.mdate b{display:block;font-family:var(--serif);font-size:24px;font-weight:400;line-height:1}.mdate span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.mbody{flex:1;min-width:0}.mbody>b{font-family:var(--serif);font-size:19px;font-weight:400}
.xrow{padding:12px 0;border-bottom:1px solid var(--line)}.xrow>input{width:100%;font-family:var(--serif);font-size:18px}
.frow{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.frow a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.arow{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.arow input{width:90px;text-align:right}
.arow.tot{font-weight:500;border-bottom:0}.arow.grand{font-family:var(--serif);font-size:24px;border-top:1px solid var(--ink);border-bottom:0;margin-top:8px}
.irow{display:grid;grid-template-columns:minmax(120px,1fr) 56px 64px 110px 110px 34px;gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.irow input{min-width:0;font-size:14px}.isum{text-align:right;font-size:13px}
@media (max-width:640px){.irow{grid-template-columns:1fr 1fr 1fr;}.irow input:first-child{grid-column:1/-1}.isum{grid-column:1/3;text-align:left}}
.gt{width:100%;font-family:var(--serif);font-size:20px;margin-bottom:6px}
.term{padding:12px 0;border-bottom:1px solid var(--line)}.trow{display:flex;gap:10px;align-items:center}.trow input{flex:1;min-width:0}.tn{font-family:var(--serif);font-size:22px;color:var(--bronze);width:22px}.tp{display:flex;align-items:center;gap:4px}.tp input{width:60px;text-align:right}
textarea{width:100%;font-family:var(--sans);font-weight:300;font-size:14px;border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px;margin-top:8px;border-radius:0;resize:vertical}
.kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.kpi b{display:block;font-family:var(--serif);font-size:clamp(18px,4vw,26px);font-weight:400}.kpi .ok{color:var(--bronze)}
.tline{padding:14px 0;border-bottom:1px solid var(--line)}.st{font-size:10px;letter-spacing:.18em;text-transform:uppercase}.st.lunas{color:var(--bronze)}.st.sebagian{color:#C2A35E}
.lay{max-width:100%;border:1px solid var(--line);margin-top:8px}
.dg{display:flex;gap:6px}.dg select{width:70px}.dg input{flex:1}
.xmeta{font-size:13px;margin-top:4px}.tag{font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);border:1px solid var(--line);padding:2px 6px;margin-left:6px}
details.src{margin-top:18px;border-top:1px solid var(--line);padding-top:10px}details.src summary{cursor:pointer;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.cf{display:grid;gap:2px}.cfr{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.cfr.prj{background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(140,109,72,.05) 8px 16px)}
.cfm{font-size:11px;letter-spacing:.14em;text-transform:uppercase}.cfm small{display:block;font-size:9px;color:var(--bronze);letter-spacing:.16em}
.cfb{display:flex;flex-direction:column;gap:3px}.cfb i{display:block;height:6px}.cfb i.in,.legend i.lin{background:var(--bronze)}.cfb i.out,.legend i.lout{background:var(--muted)}
.cfv{text-align:right;font-size:12px;display:flex;flex-direction:column;line-height:1.35}.cfv .in{color:var(--bronze)}.cfv .out{color:var(--muted)}.cfv b{font-family:var(--serif);font-size:17px;font-weight:500}.cfv small{font-size:10px}
@media (max-width:520px){.cfr{grid-template-columns:56px minmax(0,1fr)}.cfv{grid-column:1/-1;flex-direction:row;justify-content:space-between;gap:8px}}
.rhead{display:flex;gap:10px;align-items:center;margin-bottom:8px}.rhead .rname{flex:1;min-width:0;font-size:12px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;min-height:34px;padding:4px 2px}.rhead .rarea{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);white-space:nowrap}.rhead .rarea input{width:72px;text-align:right;min-height:34px;padding:4px 2px}
/* ===== app shell (v2) ===== */
body{min-height:100vh}
.app{min-height:100vh}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.side{display:none}
.mtop{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 12px) 20px 12px;background:var(--bg);border-bottom:1px solid var(--line)}
.mtop .wm,.side .wm{font-size:10.5px;letter-spacing:.38em;text-transform:uppercase;font-weight:400}
.mtop .save{margin-left:auto}
.mono-s{width:30px;height:auto;color:var(--ink)}
.main{max-width:1040px;margin:0 auto;padding:22px 20px calc(96px + env(safe-area-inset-bottom,0px))}
.bnav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:space-around;background:var(--paper);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
.bnav a{display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--muted);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:6px 8px;min-width:58px}
.bnav a.on{color:var(--ink)}.bnav a.on .ic{stroke-width:1.9}
@media (min-width:900px){
 .app{display:grid;grid-template-columns:248px minmax(0,1fr)}
 .side{display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:28px 22px;border-right:1px solid var(--line);background:var(--paper)}
 .side .brand{display:flex;gap:12px;align-items:center;margin-bottom:36px}.side .mono-s{width:36px}
 .snav{display:flex;flex-direction:column;gap:2px}
 .snav a{display:flex;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;color:var(--muted);font-size:11px;letter-spacing:.2em;text-transform:uppercase;border-left:1px solid transparent}
 .snav a:hover{color:var(--ink)}.snav a.on{color:var(--ink);border-left-color:var(--ink);background:var(--alt)}
 .sfoot{margin-top:auto;border-top:1px solid var(--line);padding-top:16px;font-size:12px}
 .mtop,.bnav{display:none}
 .main{padding:40px 44px 80px}
}
.phead{margin-bottom:8px}
.back{display:inline-flex;align-items:center;gap:4px;color:var(--muted);text-decoration:none;font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}.back .ic{width:16px;height:16px}
.phrow{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line)}
.phrow h1{display:flex;align-items:center;gap:14px}
.psw{display:inline-block;width:6px;height:.9em;flex-shrink:0}
.pact{display:flex;gap:8px}.pact .b .ic{width:16px;height:16px;margin-right:8px}
.alerts{display:flex;flex-direction:column;gap:6px;margin:20px 0 4px}
.alert{display:block;padding:12px 14px;border-left:2px solid var(--bronze);background:var(--paper);text-decoration:none;color:var(--ink);font-size:14px}
.alert.late{border-left-color:var(--warn)}.alert:hover{background:var(--alt)}
.stats{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);border-left:1px solid var(--line);margin:22px 0 4px}
.stats>div{flex:1 1 160px;background:var(--paper);padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stats b{display:block;font-family:var(--serif);font-size:clamp(22px,3.4vw,30px);font-weight:400;margin-top:4px;line-height:1.15}
.stats .pbar{display:block;margin-top:10px}
.cols{display:grid;gap:0 32px}@media (min-width:1100px){.cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:22px}
.pcard{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px 20px 18px 24px;background:var(--paper);border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:border-color .3s,transform .3s}
.pcard:hover{border-color:var(--ink)}
.pbarL{position:absolute;left:0;top:0;bottom:0;width:4px}
.pn{font-family:var(--serif);color:var(--bronze);font-size:15px}
.pcard .pname{font-size:24px}.pcard .pbar{display:block;margin-top:8px}
.pmeta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.pcard .tag{align-self:flex-start;margin:6px 0 0}
.ptabs{display:flex;gap:22px;overflow-x:auto;border-bottom:1px solid var(--line);margin-top:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ptabs::-webkit-scrollbar{display:none}
.ptabs a{white-space:nowrap;text-decoration:none;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:14px 0;border-bottom:1px solid transparent;margin-bottom:-1px}
.ptabs a.on{color:var(--ink);border-bottom-color:var(--ink)}
.pbody{padding-top:8px}
.seg{display:inline-flex;border:1px solid var(--line);margin:18px 0 6px}
.seg button{background:none;border:0;font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:10px 16px;cursor:pointer}
.seg button.on{background:var(--ink);color:var(--bg)}
a.lnk{text-decoration:none;color:inherit}a.lnk:hover{background:var(--alt)}
.acc h2{margin-top:52px}
.okbar{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-left:2px solid var(--bronze);background:var(--paper);margin:14px 0}.okbar span{font-size:13px;color:var(--muted)}
.warnbox{border-left:2px solid var(--warn)}.addc{margin-top:12px}
.pitem{padding:14px 0;border-bottom:1px solid var(--line)}.pitem .trow input{font-family:var(--serif);font-size:17px}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:0 12px}.kpi small{font-family:var(--sans);font-size:12px;color:var(--muted)}
.safe .big{display:block;font-family:var(--serif);font-size:clamp(32px,6vw,44px);font-weight:400;margin:4px 0 10px}
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:16px}
.bcard{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:var(--paper)}.bcard:hover{border-color:var(--ink)}.bmeta{padding:10px 12px;display:flex;flex-direction:column}
.bprev{margin-top:12px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(53,48,43,.08)}
.bup{cursor:pointer}
.bthumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:14px}
.bth{border:1px solid var(--line);background:var(--paper)}.bth.hero{border-color:var(--bronze)}.bth img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.bth div{display:flex;gap:4px;padding:4px}.bth .b.sm{padding:4px 6px;min-height:26px;font-size:9px;letter-spacing:.1em;flex:1;justify-content:center}.bth .b.dang{flex:0 0 26px}
.pchip{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.08em;color:var(--muted)}.pchip i{width:22px;height:22px;border:1px solid var(--line);display:inline-block}
.bth .bcap{width:100%;font-size:11px;min-height:30px;padding:4px 6px;border-bottom:1px solid var(--line)}
.bthumbs.wide{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.bthumbs.wide .bth img{aspect-ratio:1.414}
.rsheets{display:flex;flex-direction:column;gap:14px;border:0;box-shadow:none}.rsheets .mhr{border:1px solid var(--line);box-shadow:0 10px 30px rgba(53,48,43,.08)}
.kpedit{position:relative;display:inline-block;max-width:100%;margin-top:6px;border:1px solid var(--line);cursor:crosshair;background:#fff}.kpedit img{display:block;max-width:100%;max-height:360px}.kpedit i{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:rgba(140,109,72,.35);border:3px solid var(--bronze);pointer-events:none}
.aibox{border-left:2px solid var(--bronze)}
.bkhead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:center;margin-top:16px}.bkcov{border:1px solid var(--line);box-shadow:0 10px 30px rgba(53,48,43,.1)}@media (max-width:640px){.bkhead{grid-template-columns:1fr}}
.cvpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;margin-top:6px}.cvpick button{padding:0;border:2px solid transparent;background:none;cursor:pointer}.cvpick button.on{border-color:var(--bronze)}.cvpick img{display:block;width:100%;aspect-ratio:1.414;object-fit:cover}
.bkroom{padding:12px 0;border-bottom:1px solid var(--line)}.bkroom.off{opacity:.5}.bkroom textarea{margin-left:0}
.aibox{border-left:2px solid var(--bronze)}
.mcard{margin-top:10px}.mcard.sel{border-color:var(--bronze)}.mrow{display:grid;grid-template-columns:110px 1fr;gap:14px}.mph{display:flex;flex-direction:column;gap:6px}.mph img,.mph span{width:110px;height:110px;object-fit:cover;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:28px;color:var(--bronze);background:var(--alt)}
@media (max-width:560px){.mrow{grid-template-columns:1fr}.mph{flex-direction:row;align-items:center}}
.rpick{padding:0;border:1px solid var(--line);background:none;cursor:pointer}.rpick.on{outline:2px solid var(--bronze)}.rpick img{width:100%;aspect-ratio:1.414;object-fit:cover;display:block}
.bkmodes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:16px 0 4px}.bkm{display:flex;flex-direction:column;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font-family:var(--sans)}.bkm b{font-family:var(--serif);font-size:18px;font-weight:400}.bkm span{font-size:11px;color:var(--muted)}.bkm.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
/* ===== board workspace ===== */
.bws-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0 6px}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip2{font-family:var(--sans);font-size:12px;letter-spacing:.04em;padding:7px 12px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;border-radius:999px;transition:all .2s}
.chip2 span{opacity:.6;margin-left:2px}.chip2:hover{color:var(--ink);border-color:var(--ink)}.chip2.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btypes{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:12px 0 4px}
.btype{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;text-align:left;font-family:var(--sans);transition:border-color .2s,transform .2s}
.btype:hover{border-color:var(--ink);transform:translateY(-1px)}.btype b{font-family:var(--serif);font-size:19px;font-weight:400}.btype span{font-size:12px;color:var(--muted);line-height:1.45}
.btype-ic{font-family:var(--sans)!important;font-size:10px!important;letter-spacing:.2em;color:var(--bronze)!important;border:1px solid var(--bronze);padding:3px 7px;margin-bottom:6px}
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:16px}
.bcard2{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);transition:box-shadow .25s,border-color .25s}
.bcard2:hover{border-color:var(--muted);box-shadow:0 14px 34px rgba(53,48,43,.10)}
.bthumb{display:block;overflow:hidden;border-bottom:1px solid var(--line)}.bthumb>*{pointer-events:none}
.bmeta2{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;padding:12px 14px}.bmeta2>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.bmeta2 b{font-family:var(--serif);font-size:19px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btag{font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze)}
.bact{display:flex;gap:4px;flex-shrink:0}
.ib{font-family:var(--sans);font-size:11px;letter-spacing:.06em;padding:6px 9px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;text-decoration:none;white-space:nowrap}
.ib:hover{border-color:var(--ink)}.ib.dang{color:var(--warn)}.ib.dang.on{background:var(--warn);color:var(--bg);border-color:var(--warn)}.ib.pri{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.ok{color:var(--bronze)}
/* editor */
.bws-bar{position:sticky;top:0;z-index:15;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;margin:6px 0 10px;background:var(--bg);border-bottom:1px solid var(--line)}
.bws-bar .back{margin:0}.bws-t{font-family:var(--serif);font-size:22px;font-weight:400;min-width:0;max-width:40%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bws-sp{flex:1}
.stpill{font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:4px 9px;border:1px solid var(--line);color:var(--muted);border-radius:999px}.stpill.ok{border-color:var(--bronze);color:var(--bronze)}
.bws{display:grid;gap:22px}
@media (min-width:1100px){.bws{grid-template-columns:minmax(0,1fr) 360px;align-items:start}.bws-l{position:sticky;top:70px}}
@media (max-width:899px){.bws-bar{top:calc(env(safe-area-inset-top,0px) + 54px)}}
.bws-l .bprev{margin:0}.hint{font-size:12px;color:var(--muted);margin:8px 0 0;line-height:1.55}
.bws-r{background:var(--paper);border:1px solid var(--line);min-width:0}
.ptabs2{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.ptabs2 button{font-family:var(--sans);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:13px 4px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:pointer}
.ptabs2 button.on{color:var(--ink);border-bottom-color:var(--ink)}
.bws-pane{padding:16px}
.bws-pane .aibox{margin-top:16px}
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:22px 14px;border:1px dashed var(--muted);background:var(--bg);cursor:pointer;font-family:var(--serif);font-size:19px;text-align:center;transition:background .2s}
.drop:hover{background:var(--alt)}.drop span{font-family:var(--sans);font-size:11.5px;color:var(--muted)}.drop.sm{padding:14px;font-size:16px;margin-top:6px}
.bws-pane .bthumbs{grid-template-columns:repeat(auto-fill,minmax(98px,1fr))}.bws-pane .bthumbs.wide{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.danger{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.mitem{border:1px solid var(--line);margin-bottom:8px;background:var(--bg)}.mitem.sel{border-color:var(--bronze)}
.mhead{display:flex;align-items:center;gap:10px;padding:8px}.mph2{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--alt);font-family:var(--serif);color:var(--bronze);font-size:16px;overflow:hidden}.mph2 img{width:100%;height:100%;object-fit:cover}
.mtitle{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;background:none;border:0;cursor:pointer;text-align:left;color:var(--ink);padding:0;font-family:var(--sans)}.mtitle b{font-family:var(--serif);font-size:16px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mtitle span{font-size:11px;color:var(--muted)}
.mbody{padding:4px 12px 12px;border-top:1px solid var(--line)}

.crop-ov{position:fixed;inset:0;z-index:100;background:rgba(28,24,21,.78);display:flex;align-items:center;justify-content:center;padding:16px}
.crop-pn{background:var(--paper);border:1px solid var(--line);max-width:1020px;width:100%;max-height:96vh;overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:14px}
.crop-hd{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.crop-hd b{font-family:var(--serif);font-size:20px;font-weight:400;word-break:break-all}
.crop-st{display:flex;justify-content:center;background:#1C1815;padding:12px}.crop-wrap{position:relative;user-select:none;touch-action:none}.crop-wrap img{width:100%;height:100%;display:block;pointer-events:none}
.crop-box{position:absolute;box-shadow:0 0 0 9999px rgba(0,0,0,.55);outline:1px solid #fff;cursor:move;touch-action:none}.crop-box.full{box-shadow:none;outline:1px dashed rgba(255,255,255,.6);cursor:default}
.crop-gr{position:absolute;inset:0;background:linear-gradient(90deg,transparent 33.2%,rgba(255,255,255,.35) 33.3%,transparent 33.5%,transparent 66.5%,rgba(255,255,255,.35) 66.6%,transparent 66.8%),linear-gradient(0deg,transparent 33.2%,rgba(255,255,255,.35) 33.3%,transparent 33.5%,transparent 66.5%,rgba(255,255,255,.35) 66.6%,transparent 66.8%);pointer-events:none}.crop-box.full .crop-gr,.crop-box.full .crop-hdl{display:none}
.crop-hdl{position:absolute;right:-9px;bottom:-9px;width:18px;height:18px;background:#fff;border:2px solid var(--bronze);cursor:nwse-resize}
.crop-rt{display:flex;flex-wrap:wrap;gap:6px}.crop-rt button{font:inherit;font-size:12px;letter-spacing:.08em;padding:7px 12px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.crop-rt button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.crop-ft{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
label.mph2{cursor:pointer;position:relative}label.mph2 span{font-size:22px;color:var(--bronze)}label.mph2:hover{outline:1px solid var(--bronze)}

/* ===== Hari ini (cockpit) ===== */
.tbset{margin-top:14px}.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 14px}
.qadd{display:flex;gap:8px;margin:18px 0 6px;flex-wrap:wrap}.qadd input{flex:1 1 260px;min-height:44px}.qadd select{flex:0 0 auto;min-height:44px;max-width:170px}
.blk{background:var(--paper);border:1px solid var(--line);margin-top:14px}.blk.soft{background:transparent}
.blk-h{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px;border-bottom:1px solid var(--line)}.blk-k{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink)}.blk-t{font-size:12px;color:var(--muted)}
.blk .empty{padding:14px 16px;border:0}
.trow2,.crow,.agi,.prow{display:flex;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}.blk>:last-child{border-bottom:0}
.trow2.later{opacity:.55}.tdot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tmain{flex:1;min-width:0}.tmain b{font-weight:500}.tmain .sub{margin-top:2px}
.tact{display:flex;gap:6px;flex-shrink:0;align-items:center}.ib{font:inherit;font-size:11px;letter-spacing:.06em;padding:7px 10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;text-decoration:none;white-space:nowrap}.ib.ok{border-color:var(--bronze);color:var(--bronze)}.ib:hover{border-color:var(--ink)}
.pill2{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.ck2{width:22px;height:22px;border:1.5px solid var(--muted);border-radius:50%;background:transparent;cursor:pointer;flex-shrink:0}.ck2:hover{border-color:var(--bronze);background:rgba(140,109,72,.12)}.ck2.ph{border-style:dashed;cursor:default}
.wbadge{min-width:34px;text-align:center;font-size:11px;padding:4px 6px;border:1px solid var(--line);color:var(--muted)}.wbadge.late{border-color:var(--warn);color:var(--warn)}
.wadd{display:flex;gap:6px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--line)}.wadd input{flex:1 1 220px}.wadd select{max-width:160px}
.cap{padding:14px 16px 4px}.cap-row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.cap .pbar{display:block}
.top3{padding:6px 16px 12px}.t3{display:flex;align-items:center;gap:10px;margin-top:6px}.t3 span{font-family:var(--serif);font-size:20px;color:var(--bronze);width:16px}.t3 input{flex:1}
.wstrip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--line)}.wday{padding:10px 8px;border-right:1px solid var(--line);min-height:96px;display:flex;flex-direction:column;gap:4px}.wday:last-child{border-right:0}.wday.on{background:var(--alt)}.wday.past{opacity:.5}
.wd{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.wd b{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--ink);letter-spacing:0}
.wday i{font-style:normal;font-size:11px;border-left:2px solid var(--line);padding-left:6px;line-height:1.35;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wday i.mt{border:0;padding:0;color:var(--bronze)}
@media (max-width:640px){.wstrip{grid-template-columns:repeat(3,minmax(0,1fr))}.wday:nth-child(3){border-right:0}.wday:nth-child(-n+3){border-bottom:1px solid var(--line)}.tact{flex-direction:column;align-items:stretch}.trow2,.crow{align-items:flex-start}}
.agd{width:44px;text-align:center;border:1px solid var(--line);padding:4px 0;flex-shrink:0;align-self:flex-start}.agd b{display:block;font-family:var(--serif);font-size:20px;font-weight:400;line-height:1}.agd span{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.prep{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.prp{font:inherit;font-size:11px;padding:5px 9px;border:1px dashed var(--line);background:transparent;color:var(--muted);cursor:pointer}.prp.on{border-style:solid;border-color:var(--bronze);color:var(--bronze)}
.prow{text-decoration:none;color:var(--ink)}.prow:hover{background:var(--alt)}.prow .d{font-size:12px;color:var(--muted);white-space:nowrap}
.restday{margin-top:14px;padding:16px}

/* timer */
.tmb{min-width:38px;text-align:center}.tmb.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.tmrbar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:12px;background:#35302B;color:#EFE8DE;padding:10px 12px 10px 16px;box-shadow:0 10px 30px rgba(0,0,0,.25);max-width:calc(100vw - 24px)}
@media (min-width:900px){.tmrbar{bottom:24px;left:calc(50% + 124px)}}
.tmrbar .b{background:transparent;color:#EFE8DE;border-color:rgba(239,232,222,.5)}.tmr-dot{width:9px;height:9px;border-radius:50%;background:#D06A4E;animation:tpulse 1.4s infinite}
@keyframes tpulse{50%{opacity:.25}}.tmr-tx{display:flex;flex-direction:column;min-width:0}.tmr-tx b{font-weight:400;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw;opacity:.8}.tmr-live.big{font-family:var(--serif);font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}.tmr-hint{font-size:11px;color:#E8C9A6}
.tbars{padding:12px 16px 4px}.tbr{display:grid;grid-template-columns:minmax(80px,140px) 1fr 54px;gap:10px;align-items:center;font-size:12px;margin-bottom:8px}.tbr i{display:block;height:6px;background:var(--alt)}.tbr b{display:block;height:100%;background:var(--bronze)}.tbr em{font-style:normal;text-align:right;color:var(--muted)}
.tlog{border-top:1px solid var(--line)}.tlr{display:flex;gap:8px;align-items:center;padding:8px 16px;border-bottom:1px solid var(--line)}.tlr input{width:64px;text-align:right;min-height:32px}

.qadd{display:grid;grid-template-columns:1fr 150px 170px 52px;gap:8px}.qadd input{min-width:0}.qbtn{font-size:22px;padding:0;min-width:52px}
@media (max-width:640px){.qadd{grid-template-columns:1fr 1fr 52px}.qadd input{grid-column:1 / 3}.qadd .qbtn{grid-column:3;grid-row:1}.qadd select{max-width:none;min-height:38px;font-size:13px}}
.wtog{padding:10px 16px;border-top:1px solid var(--line)}
@media (max-width:640px){.wadd{display:grid;grid-template-columns:1fr 1fr}.wadd[hidden]{display:none}.wadd input{grid-column:1 / -1;order:-1}.wadd select{max-width:none}.wadd .b{grid-column:1 / -1}}
.app:has(.tmrbar) .main{padding-bottom:calc(170px + env(safe-area-inset-bottom,0px))}
@media (min-width:900px){.app:has(.tmrbar) .main{padding-bottom:110px}}

.qadd{grid-template-columns:1fr 150px 170px 52px 52px}.qtm{background:transparent;color:var(--ink);border-color:var(--ink)}
@media (max-width:640px){.qadd{grid-template-columns:1fr 1fr 48px 48px}.qadd input{grid-column:1 / 3}.qadd .qbtn{grid-row:1}.qadd select{grid-row:2}}
.whoami{margin-top:14px;padding:16px;border-left:2px solid var(--bronze)}

/* atur jadwal cepat */
.fastp{margin:14px 0}.fp-top{display:grid;grid-template-columns:auto auto 1fr auto;gap:18px;align-items:end}.fp-top b{display:block;font-family:var(--serif);font-size:24px;font-weight:400}.fp-tg{margin:0}
@media (max-width:640px){.fp-top{grid-template-columns:1fr 1fr}.fp-tg,.fp-top .b{grid-column:1 / -1}}
.fp-res{margin-top:12px;padding:12px 14px;border-left:2px solid var(--bronze);background:var(--alt)}.fp-res.bad{border-left-color:var(--warn)}.fp-res p{margin:0 0 4px}
.fp-grid{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.fp-grid summary{cursor:pointer;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.fg-wrap{overflow-x:auto;margin-top:10px}.fg{border-collapse:collapse;min-width:620px;width:100%;font-size:12px}.fg th{font-weight:400;font-size:10px;letter-spacing:.12em;color:var(--muted);text-align:center;padding:6px 4px;border-bottom:1px solid var(--ink)}.fg th:first-child,.fg td:first-child{text-align:left;white-space:nowrap;padding-right:10px}
.fg td{padding:3px;border-bottom:1px solid var(--line)}.fg input{width:100%;min-width:46px;text-align:center;min-height:34px;padding:2px}.fg td.selesai input{opacity:.4}.fg td.proses input{border-bottom-color:var(--bronze)}.fg-all td{background:var(--alt)}.fg-all input{border:1px dashed var(--bronze)}
.fp-steps{margin:6px 0 0;padding-left:18px;font-size:13px}.fp-steps li{margin-bottom:2px}

/* kanban */
.hview{display:inline-flex;border:1px solid var(--line);margin:16px 0 4px}.hview button{font:inherit;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:9px 16px;background:transparent;border:0;color:var(--muted);cursor:pointer}.hview button.on{background:var(--ink);color:var(--bg)}
.kfil{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.kfil button{font:inherit;font-size:12px;padding:7px 12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}.kfil button.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.kb{display:grid;grid-template-columns:repeat(5,minmax(230px,1fr));gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}
.kcol{background:var(--alt);border:1px solid var(--line);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:180px;scroll-snap-align:start}
.kh{display:flex;justify-content:space-between;align-items:baseline;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase}.kh b{font-family:var(--serif);font-size:18px;font-weight:400;letter-spacing:0}.kd{font-size:11px;color:var(--muted);margin-top:-4px}
.kc{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--pc,#ccc);padding:10px 12px;display:flex;flex-direction:column;gap:6px}.kc.done{opacity:.6}
.kc-p{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.kc-t{font-family:var(--serif);font-weight:400;font-size:17px;line-height:1.2}
.kc-m{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.kc .pbar{display:block;height:3px}.kc-a{display:flex;gap:6px;flex-wrap:wrap}.kempty{font-size:12px;color:var(--muted);padding:8px 2px}
@media (max-width:640px){.kb{grid-template-columns:repeat(5,86%)}}
.kc-review .kc{border-left-style:dashed}
.wadd[hidden]{display:none!important}
.arm{background:var(--bronze)!important;color:#fff!important;border-color:var(--bronze)!important;animation:armp .9s ease-in-out infinite alternate}.ck2.arm{color:#fff;font-size:12px}@keyframes armp{to{opacity:.75}}
.fp-sc{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;margin-top:4px}@media (max-width:640px){.fp-sc{grid-template-columns:1fr}}

/* board editor: stage, full-screen mode, panel minimise, drag scroll-lock */
.bstage{position:relative}
.ptabs2 .pmin-b{width:40px;font-size:18px;letter-spacing:0;line-height:1;color:var(--muted);padding:10px 0}
.ptabs2:has(.pmin-b){grid-template-columns:repeat(4,1fr) 40px}
.bws.pmin:not(.fs){grid-template-columns:minmax(0,1fr)!important}.bws.pmin .bws-r{display:none}
.bfs-bar{display:none}
.bws.fs{position:fixed;inset:0;z-index:900;margin:0;background:var(--bg);display:block}
.bws.fs .bfs-bar{display:flex;position:absolute;left:0;right:0;top:0;z-index:3;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top,0px));background:var(--paper);border-bottom:1px solid var(--line);box-sizing:border-box;height:calc(56px + env(safe-area-inset-top,0px))}
.bws.fs .bfs-bar .b{flex:0 0 auto}
.bfs-t{font-family:var(--serif);font-weight:400;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:30vw}
.bzg{display:inline-flex;gap:4px;flex:0 0 auto}.bzv{min-width:56px}
.bws.fs .bws-l{position:absolute;left:0;right:0;bottom:0;top:calc(56px + env(safe-area-inset-top,0px))}
.bws.fs .bstage{position:absolute;inset:0;overflow:auto;padding:20px;box-sizing:border-box;overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;background:var(--alt)}
.bws.fs .bprev{margin:0 auto;max-width:none;box-shadow:0 14px 40px rgba(0,0,0,.18)}
.bws.fs .hint{display:none}
.bws.fs .bws-r{position:absolute;right:12px;top:calc(68px + env(safe-area-inset-top,0px));bottom:12px;width:360px;overflow:auto;z-index:4;box-shadow:0 16px 44px rgba(0,0,0,.25)}
@media (max-width:899px){.bws.fs .bws-r{left:0;right:0;top:auto;bottom:0;width:auto;max-height:52vh;border-radius:6px 14px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}.bfs-t{display:none}}
html.bfs-on,html.bfs-on body{overflow:hidden;overscroll-behavior:none}
html.mh-drag,html.mh-drag body{overflow:hidden;overscroll-behavior:none}html.mh-drag .bstage{overflow:hidden}
.bprev [data-h]{touch-action:none}
@media (min-width:900px){.bws.fs:not(.pmin) .bws-l{right:384px}}
@media (max-width:600px){.bws.fs .bfs-bar{gap:5px;padding-left:8px;padding-right:8px}.bws.fs .bfs-bar .b{padding:7px 8px;font-size:9.5px;letter-spacing:.06em}.bws.fs .bzv{min-width:44px}}

/* inspiration tray, paste/drop, toast */
.tray{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.tray-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.tray-h b{display:block;font-weight:400;font-size:14px}.tray-h .sub{font-size:12px}
.row.tight{gap:6px;margin-top:8px;align-items:center;flex-wrap:wrap}.row.tight .note{margin:0}
.tray-in{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px;padding:10px 12px;background:var(--soft);border:1px solid var(--line)}.tray-in span{flex:1;font-size:13px}
.tray-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px;margin-top:12px}
.tray-i{position:relative;aspect-ratio:1;background:var(--alt);overflow:hidden}
.tray-add{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer;position:relative}
.tray-i img{width:100%;height:100%;object-fit:cover;display:block}
.tray-i em{position:absolute;right:4px;bottom:4px;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.92);color:#3B3632;font-style:normal;font-size:15px;line-height:22px;text-align:center}
.tray-i.used img{opacity:.45}.tray-i.used em{background:#8C6D48;color:#fff;font-size:12px}
.tray-x{position:absolute;right:3px;top:3px;width:22px;height:22px;border:0;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:15px;line-height:20px;cursor:pointer;padding:0}
.tray-i.lnk a{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;font-size:13px;color:var(--ink);text-decoration:none;border:1px dashed var(--line);box-sizing:border-box}.tray-i.lnk small{color:var(--muted)}
html.mh-dropping .bprev,html.mh-dropping .tray{outline:2px dashed var(--bronze);outline-offset:4px}
.mhtoast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--deep);color:var(--deep-ink);padding:10px 16px;font-size:13px;max-width:min(92vw,520px);text-align:center;opacity:0;pointer-events:none;transition:.2s;z-index:2000;box-shadow:0 8px 24px rgba(0,0,0,.2)}.mhtoast.on{opacity:1;transform:translate(-50%,0)}
/* ===== book arrangement ===== */
.bkopts{display:flex;flex-wrap:wrap;gap:6px 18px}.ck.dim{opacity:.5}.nowrap{white-space:nowrap}
.grip{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;color:var(--muted);letter-spacing:-3px;padding:8px 8px 8px 2px;line-height:1;font-size:16px;font-style:normal}
.grip:active{cursor:grabbing}
.bkseq{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;counter-reset:sq}
.bkchip{display:inline-flex;align-items:center;gap:4px;padding:4px 14px 4px 6px;border:1px solid var(--line);background:var(--paper);font-size:13px;counter-increment:sq}
.bkchip::after{content:counter(sq);order:-1;font-family:var(--serif);font-size:17px;color:var(--bronze);margin-right:2px}
.bkblocks{margin-top:8px;border-top:1px solid var(--line)}
.bkblk{padding:10px 0;border-bottom:1px solid var(--line)}.bkblk.off{opacity:.5}
.bkblk .trow{gap:8px}.bkblk .tn{min-width:28px}.bkblk textarea{margin-top:8px}
.bkinfo{margin:2px 0 0 62px}
.bkblk.dragging,.bkchip.dragging{outline:1.5px dashed var(--bronze);outline-offset:2px;background:var(--alt)}
.bkmap{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;margin-top:8px}
.bkpg{aspect-ratio:1.414;border:1px solid var(--line);background:var(--paper);padding:5px 6px;display:flex;flex-direction:column;font-size:11px;line-height:1.25;overflow:hidden}
.bkpg span{font-family:var(--serif);font-size:14px;color:var(--muted);line-height:1}
.bkpg b{font-weight:400;margin-top:auto;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.bkpg i{font-style:normal;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bkpg.k-cover,.bkpg.k-room{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
.bkpg.k-cover span,.bkpg.k-cover i,.bkpg.k-room span,.bkpg.k-room i{color:var(--deep-ink);opacity:.7}
.bkpg.k-toc,.bkpg.k-closing{background:var(--alt)}
.bkpg.k-concept{box-shadow:inset 0 3px 0 var(--bronze)}.bkpg.k-render{box-shadow:inset 0 3px 0 var(--muted)}.bkpg.k-material{box-shadow:inset 0 3px 0 var(--soft)}
.bklegend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:11px;color:var(--muted)}.bklegend span{display:flex;align-items:center;gap:5px}
.bklegend i{width:12px;height:9px;border:1px solid var(--line);background:var(--paper)}.bklegend i.k-room{background:var(--deep);border-color:var(--deep)}.bklegend i.k-concept{box-shadow:inset 0 3px 0 var(--bronze)}.bklegend i.k-render{box-shadow:inset 0 3px 0 var(--muted)}.bklegend i.k-material{box-shadow:inset 0 3px 0 var(--soft)}
@media (max-width:560px){.bkblk .trow{flex-wrap:wrap;row-gap:2px}.bkblk .trow>b{flex:1 1 calc(100% - 90px)!important}.bkblk .trow>.sub.nowrap{margin-left:62px;margin-right:auto}.bkinfo{margin-left:0}}
.bkarr{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}
.bkmapw{position:sticky;top:12px}
.bkmapw .bkmap{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}
.bknar{margin:6px 0 0 62px}.bknar summary{cursor:pointer;font-size:12px;color:var(--muted);letter-spacing:.04em}.bknar .okdot{color:var(--bronze)}
@media (max-width:760px){.bkarr{grid-template-columns:1fr}.bkmapw{position:static}.bknar{margin-left:0}}
/* ===== AI bridge (copy-paste mode) ===== */
.aibar{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.aimode{margin:8px 0 0}.lnk2{background:none;border:0;padding:0;font:inherit;color:var(--bronze);text-decoration:underline;cursor:pointer}
.aiov{position:fixed;inset:0;z-index:1000;background:rgba(30,27,24,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.aiov[hidden]{display:none}
.aim{background:var(--paper);color:var(--ink);width:100%;max-width:520px;max-height:calc(100vh - 32px);overflow:auto;border-radius:6px;padding:20px 20px 22px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.aim-h{display:flex;align-items:flex-start;gap:12px}.aim-k{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.aim-t{font-family:var(--serif);font-size:24px;line-height:1.15;margin-top:4px}
.aim-x{margin-left:auto;background:none;border:0;font-size:26px;line-height:1;color:var(--muted);cursor:pointer;padding:0 4px}
.aim-apps{display:flex;gap:6px;margin-top:16px}.aim-apps button{flex:1;padding:10px 6px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:13px;border-radius:999px;cursor:pointer}
.aim-apps button.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.aim-pr{margin-top:14px}.aim-pr summary{cursor:pointer;font-size:13px;color:var(--muted)}.aim-pr textarea{width:100%;margin-top:8px;font-size:12px;font-family:ui-monospace,Menlo,monospace}
.aim-ph{display:flex;align-items:center;gap:6px;margin-top:14px;flex-wrap:wrap}.aim-ph img{width:52px;height:40px;object-fit:cover;border-radius:6px}.aim-ph span{font-size:12px;color:var(--muted)}.aim-ph em{font-style:normal;font-size:12px;color:var(--muted);margin-left:4px}
.aim-btns{display:flex;flex-direction:column;gap:8px;margin-top:16px}.aim-btns .big{min-height:46px;font-size:15px}
.aim-steps{margin:16px 0 0;padding-left:20px;font-size:13px;color:var(--muted);line-height:1.6}.aim-steps b{color:var(--ink)}
.aim-hist{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.aim-hist>div:not(.aim-k){display:flex;flex-direction:column;padding:6px 0;font-size:13px}.aim-hist small{color:var(--muted);font-size:11.5px}
.aim-note{font-size:13px;color:var(--muted);margin:10px 0 0}.aim-note.late{color:var(--warn)}
.aim textarea#aipastebox{width:100%;margin-top:12px;font-size:12.5px;font-family:ui-monospace,Menlo,monospace}
.aim-rows{display:flex;flex-direction:column;gap:6px;margin-top:16px}
.aim-rows>div{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:baseline;padding:10px 12px;border-radius:12px;background:var(--alt);font-size:13px}
.aim-rows b{font-weight:500}.aim-rows span{color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis}.aim-rows i{font-style:normal;font-size:12px;white-space:nowrap}
.aim-rows .ok i{color:#4F7A55}.aim-rows .warn{background:rgba(158,75,54,.08)}.aim-rows .warn i{color:var(--warn)}.aim-rows .none{opacity:.6}
#aibn{position:fixed;left:50%;transform:translateX(-50%);top:calc(10px + env(safe-area-inset-top,0px));z-index:900;width:min(720px,calc(100% - 20px));display:flex;align-items:center;gap:12px;background:var(--deep);color:var(--deep-ink);border-radius:6px;padding:10px 10px 10px 14px;box-shadow:0 12px 30px rgba(0,0,0,.22)}
#aibn.pulse{animation:aipulse 1.2s ease 2}@keyframes aipulse{50%{box-shadow:0 0 0 6px rgba(140,109,72,.45),0 12px 30px rgba(0,0,0,.22)}}
.aibn-i{width:30px;height:30px;border-radius:50%;background:var(--bronze);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.aibn-t{min-width:0;flex:1;display:flex;flex-direction:column}.aibn-t b{font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aibn-t small{font-size:11.5px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aibn-b{background:var(--deep-ink);color:var(--deep);border:0;border-radius:999px;padding:9px 14px;font:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}
.aibn-x{background:none;border:0;color:inherit;opacity:.7;font-size:22px;cursor:pointer;padding:0 4px}
body.aiwait main{padding-top:84px}
@media (max-width:560px){.aim{border-radius:6px 20px 0 0;align-self:flex-end;max-height:88vh}.aiov{padding:0;align-items:flex-end}.aim-rows>div{grid-template-columns:1fr auto}.aim-rows span{grid-column:1/3;grid-row:2}.aibn-t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
/* ===== render fit (Utuh / Isi penuh) ===== */
.fitctl{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px;padding:8px;width:100%;box-sizing:border-box;border-top:1px solid var(--line)}
.seg2{display:inline-flex;border:1px solid var(--line)}.seg2 button{white-space:nowrap;border:0;background:transparent;color:var(--muted);font:inherit;font-size:12px;padding:5px 10px;cursor:pointer}.seg2 button.on{background:var(--deep);color:var(--deep-ink)}
.fitk{display:flex;align-items:center;gap:6px}.fitk select{min-height:30px;padding:2px 8px;font-size:12px}
.fitinfo{font-size:11.5px;flex-basis:100%}.fitbox{margin:10px 0 4px}
.mhr-img[data-h="pan"]{cursor:grab}
/* =====================================================================
   THEME v2 — putih + lime (Okt 2026). Lapisan ini menimpa gaya lama.
   ===================================================================== */
:root{--bg:#E8E8E6;--alt:#F3F3F1;--paper:#FFFFFF;--ink:#151515;--muted:#86867F;--line:#DCDCD7;--soft:#ECECE9;--deep:#151515;--deep-ink:#FFFFFF;--bronze:#5C6A0E;--warn:#B04A3A;--lime:#C9C49A;--lime-soft:#ECEAD8;--pill:#A3A39D;--rose:#E9D3D6;
  --serif:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;--sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;--r:24px;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#111111;--alt:#1B1B1A;--paper:#1E1E1D;--ink:#EDEDEA;--muted:#9A9A94;--line:#30302E;--soft:#262625;--deep:#EDEDEA;--deep-ink:#111111;--bronze:#C9C49A;--warn:#EF8C76;--lime-soft:#2A3010;--pill:#4A4A47;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#111111;--alt:#1B1B1A;--paper:#1E1E1D;--ink:#EDEDEA;--muted:#9A9A94;--line:#30302E;--soft:#262625;--deep:#EDEDEA;--deep-ink:#111111;--bronze:#C9C49A;--warn:#EF8C76;--lime-soft:#2A3010;--pill:#4A4A47;color-scheme:dark}
body{font-family:var(--sans);font-weight:400;font-size:14.5px;letter-spacing:-.005em}
b,strong{font-weight:600}
h1{font-family:var(--sans);font-weight:300;font-size:clamp(32px,5vw,46px);letter-spacing:-.025em;line-height:1.05}
h2{font-family:var(--sans);font-weight:300;font-size:clamp(24px,3.6vw,32px);letter-spacing:-.02em;margin:40px 0 14px}
h3{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:-.005em;text-transform:none;color:var(--ink);margin:0 0 10px}
.label{font-size:12px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--muted)}
.sub{font-size:12.5px}
.pname{font-family:var(--sans);font-size:20px;font-weight:500;letter-spacing:-.015em}
.tn{font-family:var(--sans)!important;font-weight:500;color:var(--muted)}
.card{background:var(--paper);border:0;border-radius:6px;padding:20px}
.ed{background:var(--alt);border-radius:6px;padding:18px}
.aibox{border-left:0!important;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}
.empty.card{border-radius:6px}
/* buttons */
button.b,a.b{font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;border:1px solid var(--pill);border-radius:999px;padding:9px 18px;min-height:40px;background:transparent;color:var(--ink);transition:background .15s,border-color .15s}
button.b:hover,a.b:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}
button.b.pri,a.b.pri{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
button.b.pri:hover,a.b.pri:hover{background:#333;border-color:#333;color:#fff}
button.b.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
button.b.sm,a.b.sm{min-height:32px;padding:5px 13px;font-size:12px}
button.b.dang{border-color:#E6C4BC;color:var(--warn)}
button.b.dang.on,button.b.dang:hover{background:var(--warn);border-color:var(--warn);color:#fff}
.ib{border-radius:999px}
/* inputs */
select,input{font-family:var(--sans);font-weight:400;font-size:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:8px 12px}
input[type=checkbox],input[type=radio]{min-height:auto;padding:0;border:0;background:none;border-radius:0;accent-color:#151515}
input[type=color]{padding:2px;min-height:34px}
textarea{font-family:var(--sans);font-size:14px;border:1px solid var(--line);border-radius:6px;background:var(--paper);padding:10px 12px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(213,240,78,.55)}
/* desktop: top bar with pill navigation instead of sidebar */
@media (min-width:900px){
 .app{display:block}
 .side{position:sticky;top:0;z-index:50;height:auto;flex-direction:row;align-items:center;gap:10px;padding:16px 34px;border:0;background:var(--bg)}
 .side .brand{margin:0 16px 0 0}.side .brand .wm,.side .brand .sub{display:none}.side .mono-s{width:40px;color:var(--ink)}
 .snav{flex-direction:row;gap:8px}
 .snav a{border:1px solid var(--pill);border-left:1px solid var(--pill);border-radius:999px;padding:9px 18px;font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink);gap:8px;font-weight:500}
 .snav a svg{display:none}
 .snav a:hover{background:var(--paper);border-color:var(--paper)}
 .snav a.on{background:var(--paper);border-color:var(--paper);box-shadow:0 2px 10px rgba(0,0,0,.05)}
 .sfoot{margin:0 0 0 auto;border:0;padding:0;display:flex;align-items:center;gap:10px;font-size:12px}
 .sfoot .sub[style]{display:none}.sfoot .row{margin:0;gap:6px}
 .main{max-width:1320px;padding:12px 34px 80px}
}
/* mobile */
.mtop{background:var(--bg);border-bottom:0}
.mtop .wm{letter-spacing:.3em}
.bnav{background:var(--paper);border-top:0;box-shadow:0 -6px 24px rgba(0,0,0,.06);border-radius:6px 22px 0 0}
.bnav a{text-transform:none;letter-spacing:0;font-size:10.5px;font-weight:500}
.bnav a.on{color:var(--ink)}.bnav a.on svg{background:var(--lime);border-radius:10px;padding:3px;box-sizing:content-box;color:#151515}
/* project tabs as pills */
.ptabs{border-bottom:0;gap:8px;padding:6px 0;margin-top:10px}
.ptabs a{border:1px solid var(--pill);border-radius:999px;padding:8px 16px;font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink);margin:0;font-weight:500}
.ptabs a.on{background:var(--paper);border-color:var(--paper);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.seg{border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--paper)}
.seg button{font-family:var(--sans);font-size:12.5px;letter-spacing:0;text-transform:none;font-weight:500;padding:9px 16px}
.seg button.on{background:var(--deep);color:var(--deep-ink)}
.ptabs2{border-bottom:0;background:var(--soft);border-radius:999px;padding:4px;gap:4px}
.ptabs2 button{border:0;border-radius:999px;text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:500;padding:9px 4px}
.ptabs2 button.on{background:var(--paper);color:var(--ink);border-bottom:0}
.chip2{background:var(--paper);border-color:var(--paper);color:var(--ink);font-weight:500}
.chip2.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.seg2{border-radius:999px;overflow:hidden;background:var(--paper)}.seg2 button.on{background:var(--deep);color:var(--deep-ink)}
/* surfaces */
.pcard,.bcard2,.blk,.bth{border:0;border-radius:6px;overflow:hidden}
.pcard{padding:20px 22px}
.pbar{height:4px;border-radius:2px;background:var(--soft)}.pbar i{background:var(--ink)}
.blk-h{border-bottom:1px solid var(--soft)}
.trow2,.crow,.agi,.prow{border-bottom:1px solid var(--soft)}
.item{border-bottom:1px solid var(--soft)}
.mtg{border-bottom:1px solid var(--soft)}
.drop{border:1.5px dashed var(--pill);border-radius:6px;background:var(--paper);font-family:var(--sans);font-size:16px;font-weight:500}
.kpi b{font-family:var(--sans);font-weight:300;letter-spacing:-.02em}
.bws-r,.bws-pane{border-radius:6px}
.bprev .mhs,.bprev .mhp,.bprev .mhb,.bprev .mhr{border-radius:6px}
.tmrbar{border-radius:999px;background:#151515}
.mhtoast{border-radius:6px}
.aibn-i{background:var(--lime)!important;color:#151515!important}.aibn-b{background:var(--lime)!important;color:#151515!important}
#aibn{background:#151515;color:#fff}
.aim{border-radius:6px}.aim-apps button.on{background:#151515;color:#fff;border-color:#151515}
.aim-rows>div{background:var(--alt);border-radius:6px}
.ok{color:#4F7A2A}
/* normal-case labels (theme v2) */
.mrow,.lane b,.room .rn,label.f,.tabs button,.ptabs button,.mdate span,.st,.tag,details.src summary,.cfm,.rhead .rname,.back,.btag,.stpill,.blk-k,.pill2,.wd,.agd span,.fp-grid summary,.hview button,.kh,.kc-p,.aim-k{text-transform:none!important;letter-spacing:0!important}
label.f{font-size:12.5px;font-weight:500;color:var(--muted)}
.blk-k{font-size:13.5px;font-weight:600;color:var(--ink)}
.blk-t{font-size:12px}
.hview{border-radius:999px;overflow:hidden;border:1px solid var(--line);background:var(--paper)}
.hview button{font-size:12.5px!important;font-weight:500;padding:9px 16px}
.hview button.on{background:var(--deep);color:var(--deep-ink)}
.tag,.btag,.stpill{font-size:11.5px;font-weight:500;border-radius:999px}
.back{font-size:13px;font-weight:500}
.alert{border-radius:6px;overflow:hidden}
.mdate b{font-family:var(--sans);font-weight:300}
.wd{font-size:11px;font-weight:600}
.aim-k{font-size:12px;font-weight:500}

/* ===== Dashboard proyek berjalan (v48) ===== */
.dash{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin:4px 0 22px;align-items:start}
.dash-l,.dash-r{display:flex;flex-direction:column;gap:14px;min-width:0}
.dstrip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}
.dstrip::-webkit-scrollbar{display:none}
.dcard{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border-radius:999px;border:0;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;text-align:left;box-shadow:0 1px 0 rgba(0,0,0,.03)}
.dcard.on{background:var(--ink);color:var(--bg)}
.dcard .dct{display:flex;flex-direction:column;line-height:1.25}
.dcard b{font-size:14px;font-weight:600;white-space:nowrap}
.dcard small{font-size:12px;opacity:.6;white-space:nowrap}
.dcard small.late{color:#d4553f;opacity:1}
.dcard.on small.late{color:#ffb4a4}
.dring{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
.dring i{width:32px;height:32px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:700;color:var(--ink)}
.dcard.on .dring i{background:var(--ink);color:var(--bg)}
.dfeat{padding:20px 22px!important}
.dfh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dfh .sp,.askch .sp{flex:1}
.dft{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.15}
.dft.sm{font-size:17px}
.dft sup{font-size:11px;font-weight:600;background:var(--lime);color:#151515;border-radius:999px;padding:3px 8px;vertical-align:middle;margin-left:4px;letter-spacing:0}
.dchips{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 4px}
.dchips.col{flex-direction:column;align-items:flex-start;margin:0}
.chip3{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12.5px;background:transparent;color:var(--ink);white-space:nowrap}
.chip3.btn{cursor:pointer;font:inherit;font-size:12.5px}
.chip3.btn:hover{background:var(--soft)}
.chip3.bad{border-color:#e8b3a8;color:#b8402c;background:#fdf0ec}
.dmx-w{margin-top:16px;overflow-x:auto}
.dmx{display:grid;gap:5px 6px;align-items:center;min-width:420px}
.dmx-h{font-size:11px;font-weight:600;color:var(--muted);text-align:center}
.dmx-r{font-size:13px;color:var(--ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dmx-r:hover{text-decoration:underline}
.dmx-c{display:block;height:22px;border-radius:999px}
.dmx-c.s-selesai,.dleg i.s-selesai{background:#151515}
.dmx-c.s-proses,.dleg i.s-proses{background:var(--lime)}
.dmx-c.s-review,.dleg i.s-review{background:#F3C9C0}
.dmx-c.s-revisi,.dleg i.s-revisi{background:#fff;box-shadow:inset 0 0 0 2px #d4553f}
.dmx-c.s-belum,.dleg i.s-belum{background:var(--soft)}
.dleg{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:12px;color:var(--muted)}
.dleg span{display:inline-flex;align-items:center;gap:6px}
.dleg i{width:18px;height:10px;border-radius:999px;display:inline-block}
.dcap-b{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;margin:12px 0}
.dbig{text-align:right}
.dbig b{display:block;font-size:40px;font-weight:600;letter-spacing:-.03em;line-height:1}
.dbig em{font-style:normal;font-size:16px;margin-left:2px;color:var(--muted)}
.dbig small{font-size:12px;color:var(--muted)}
.dbars div{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:8px;font-size:12px;margin-top:6px}
.dbars i{display:block;height:8px;border-radius:999px;background:var(--soft);overflow:hidden}
.dbars em{display:block;height:100%;background:var(--lime);border-radius:999px}
.dmi{display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.dmi:first-of-type{border-top:0;margin-top:6px}
.dmi>span:last-child{display:flex;flex-direction:column;min-width:0}
.dmi small{font-size:12px;color:var(--muted)}
.dmd{width:44px;height:44px;border-radius:6px;background:var(--lime);color:#151515;display:flex!important;flex-direction:column!important;align-items:center;justify-content:center;line-height:1;flex:0 0 auto}
.dmd b{font-size:17px}.dmd small{font-size:10px!important;color:#151515!important;text-transform:uppercase}
/* AI box */
.askbox{display:flex;flex-direction:column;gap:12px}
.askin{background:var(--ink);border-radius:6px;padding:16px 16px 12px;color:var(--bg)}
.askin textarea{width:100%;background:transparent;border:0!important;color:#fff;font:inherit;font-size:15px;resize:vertical;outline:none;box-shadow:none!important;padding:4px 6px;min-height:48px}
.askin textarea::placeholder{color:rgba(255,255,255,.5)}
.askch{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}
.askin .chip3{border-color:rgba(255,255,255,.22);color:#fff}
.askin .chip3.btn:hover{background:rgba(255,255,255,.1)}
.askgo{background:var(--lime)!important;color:#151515!important;border-color:var(--lime)!important}
.askres{padding:18px 20px!important}
.askres .aibn-i{width:34px;height:34px;border-radius:50%;background:var(--lime);display:grid;place-items:center;color:#151515}
.askp{margin:12px 0 0;font-size:14.5px}
.askg{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.asks{background:var(--bg);border-radius:6px;padding:12px 14px}
.asks>b{display:block;font-size:12.5px;margin-bottom:6px}
.asks.warn{background:#fdf0ec}
.asli{display:flex;justify-content:space-between;gap:8px;font-size:13.5px;padding:4px 0;line-height:1.4}
.asli em{font-style:normal;color:var(--muted);flex:0 0 auto}
.asli.askck{justify-content:flex-start;align-items:flex-start;cursor:pointer}
.asli.askck input{margin-top:3px;accent-color:#151515}
@media (max-width:1100px){.dash{grid-template-columns:1fr}.dash-r{display:grid;grid-template-columns:1fr 1fr}}
@media (max-width:640px){.dash-r{grid-template-columns:1fr}.dft{font-size:20px}.dfeat{padding:16px!important}.askin{border-radius:6px}.askgo{width:100%;justify-content:center;margin-top:4px}.askch .sp{display:none}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .dmx-c.s-selesai,:root:not([data-theme="light"]) .dleg i.s-selesai{background:#f2f2ee}:root:not([data-theme="light"]) .askin{background:#2a2a28}}
@media (max-width:640px){.dmx{min-width:0;grid-template-columns:minmax(84px,1.3fr) repeat(8,minmax(0,1fr))!important;gap:4px 3px}.dmx-c{height:16px}.dmx-h{font-size:9.5px}.dmx-r{font-size:12px}.dmx-w{overflow:visible}}
.asli.askck{display:flex!important;gap:8px}
.asli.askck input{appearance:auto;-webkit-appearance:checkbox;width:16px!important;height:16px!important;min-width:16px;flex:0 0 16px;padding:0!important;margin:2px 0 0!important;border-radius:4px!important;box-shadow:none!important}
.asli.askck span{flex:1;min-width:0}
.askres .dfh{flex-wrap:nowrap;align-items:flex-start}
.askres .dfh>div{min-width:0}
.askres .row{flex-wrap:wrap;gap:8px}
.dft sup{display:inline-block;white-space:nowrap;margin-top:2px}

/* ===== Map of ideas editor (v48) ===== */
.mapmode{display:flex;margin-bottom:12px}.mapmode button{flex:1}
.mplist{display:flex;flex-direction:column;gap:4px;margin:12px 0}
.mprow{display:flex;align-items:center;gap:4px;border-radius:6px;padding:2px 4px 2px 2px}
.mprow.on{background:var(--soft)}
.mpn{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:0;background:transparent;font:inherit;color:var(--ink);text-align:left;padding:8px 10px;cursor:pointer;border-radius:12px}
.mpn em{font-style:normal;color:var(--muted);font-size:12px;width:18px}
.mpn b{font-weight:500;font-size:14px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mpst{display:flex;gap:6px;font-size:11px;color:var(--muted)}.mpst i{font-style:normal;white-space:nowrap}.mpst i::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;border:1px solid var(--muted);margin-right:4px;vertical-align:1px}.mpst i.y::before{background:var(--ink);border-color:var(--ink)}
.mped{border-top:1px solid var(--line);padding-top:14px;margin-top:6px}
.mped-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.mpslot{margin-top:14px}.mpslot-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.mpslot-h b{font-size:13px;font-weight:600}
.mpthumbs{display:flex;flex-wrap:wrap;gap:8px}
.mpth{position:relative;width:76px;display:flex;flex-direction:column;gap:4px}
.mpth img{width:76px;height:60px;object-fit:cover;border-radius:10px;display:block;background:var(--soft)}
.mpth input{font-size:11px!important;padding:4px 8px!important;min-height:0!important;border-radius:8px!important}
.mpth button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);font-size:14px;line-height:1;cursor:pointer;padding:0}
.mpadd{width:76px;height:60px;border-radius:10px;border:1.5px dashed var(--line);background:transparent;color:var(--muted);font:inherit;font-size:18px;cursor:pointer}
.mpadd.on{border-color:var(--ink);color:var(--ink);background:var(--lime)}
.mppick{margin-top:10px;padding:12px;border-radius:6px;background:var(--bg)}
.mppick .note{margin-left:8px}
.mppool{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;margin-top:10px;max-height:260px;overflow:auto}
.mppool button{border:0;padding:0;background:var(--soft);border-radius:8px;overflow:hidden;cursor:pointer;aspect-ratio:1}
.mppool img{width:100%;height:100%;object-fit:cover;display:block}
.mppool button:hover{outline:2px solid var(--ink)}
.mpall{margin-top:10px;font-size:13px}.mpall summary{cursor:pointer;color:var(--muted)}
.mppal{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.mppal-r{display:grid;grid-template-columns:44px 1fr 1fr auto;gap:6px;align-items:center}
.mppal-r img{width:44px;height:36px;object-fit:cover;border-radius:8px}
.mppal-r input{font-size:12px!important;padding:6px 10px!important;min-height:0!important}
@media (max-width:640px){.mpst{display:none}.mpth,.mpth img,.mpadd{width:68px}.mpth img,.mpadd{height:54px}}

/* ===== Spesifikasi (v48) ===== */
.spq{margin:12px 0}.spq-t{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.spq-t span{position:relative}.spq-t img{width:96px;height:72px;object-fit:cover;border-radius:12px;display:block;background:var(--soft)}.spq-t em{position:absolute;left:6px;top:6px;background:#fff;color:#151515;font-style:normal;font-size:11px;font-weight:600;border-radius:6px;padding:1px 6px}.spq-t button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);cursor:pointer;padding:0}
.spempty{margin-top:12px;padding:22px!important}.spempty p{margin:6px 0 0;color:var(--muted)}
.sph{display:flex;align-items:baseline;gap:8px;margin:26px 0 10px}.sph span{font-size:13px;color:var(--muted);font-weight:400}
.splist{display:flex;flex-direction:column;gap:6px}
.spit{background:var(--paper);border-radius:6px;overflow:hidden}
.sprow{width:100%;display:grid;grid-template-columns:56px 58px minmax(0,2.4fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr) 64px;gap:12px;align-items:center;padding:8px 14px 8px 8px;border:0;background:transparent;font:inherit;color:var(--ink);text-align:left;cursor:pointer}
.spph{width:56px;height:46px;border-radius:12px;background:#fff;overflow:hidden;display:block}.spph img{width:100%;height:100%;object-fit:contain;display:block}
.spcode{font-family:"Cormorant Garamond",Garamond,serif;font-size:20px;color:#8C6D48;white-space:nowrap}
.spm{display:flex;flex-direction:column;min-width:0}.spm b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spm small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.spsz,.spq2{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spq2 small{font-size:12px}.sppr{font-size:13px;text-align:right;white-space:nowrap}
.spfl{display:inline-block;font-size:10.5px;font-weight:600;border-radius:999px;padding:2px 8px;white-space:nowrap;letter-spacing:0;text-transform:none}.spfl.c{background:#FBE7DF;color:#B8402C}.spfl.o{background:#EEF6CF;color:#4C5A12}
.spbody{display:grid;grid-template-columns:200px 1fr;gap:18px;padding:6px 16px 16px;border-top:1px solid var(--line)}
.spphoto{display:block;aspect-ratio:4/3;border-radius:6px;background:#fff;overflow:hidden;cursor:pointer;margin:10px 0}.spphoto img{width:100%;height:100%;object-fit:contain}.spphoto span{display:grid;place-items:center;height:100%;color:var(--muted);font-size:13px}
.spb-r label.chk input{border-color:#E9B3A3!important;background:#FFF7F3}
.spb-a{grid-column:1/-1}
.sptot{display:flex;justify-content:flex-end;gap:18px;align-items:baseline;margin:18px 6px}.sptot b{font-size:22px;font-weight:600}
@media (max-width:760px){.sprow{grid-template-columns:52px minmax(0,1fr) auto;gap:10px}.spcode{display:none}.spsz,.spq2{display:none}.sppr{display:none}.spbody{grid-template-columns:1fr}.spphoto{max-width:220px}}
.spc2{display:none;font-family:"Cormorant Garamond",Garamond,serif;color:#8C6D48;font-size:16px;margin-right:4px}@media (max-width:760px){.spc2{display:inline}}
.spbtn{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important;cursor:pointer;display:inline-flex;align-items:center}
.aiset .seg2{flex:0 0 auto}.aiuse{font-size:14px;white-space:nowrap}.aiuse b{font-size:18px;font-weight:600}
.aibar2{height:8px;border-radius:999px;background:var(--soft);overflow:hidden;margin:2px 0 10px}.aibar2 i{display:block;height:100%;background:var(--lime);border-radius:999px}.aibar2 i.warn{background:#F0B44E}.aibar2 i.full{background:#d4553f}

/* ===== theme v2: leftovers (v48) ===== */
.room .chips{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;flex-wrap:nowrap}
.chip{height:46px;border-radius:6px;background:var(--bg);border-color:transparent}
.chip.proses{background:var(--lime);border-color:var(--lime);color:#151515}
.chip.review{background:#F3C9C0;border-color:#F3C9C0;color:#5A2C20}
.chip.revisi{background:var(--paper);border-color:#d4553f;box-shadow:inset 0 0 0 1px #d4553f;color:#8f2f1f}
.chip.selesai{background:#151515;border-color:#151515;color:#fff}
.stats{border:0;gap:10px}.stats>div{border:0!important;border-radius:6px}
.bkm{border-radius:6px!important;border-color:transparent!important;background:var(--paper)!important}.bkm.on{box-shadow:inset 0 0 0 2px var(--ink)}
.room{border-top:0;background:var(--paper);border-radius:6px;padding:12px 14px;margin-bottom:8px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .chip.selesai{background:#f2f2ee;color:#151515}}
.legend i{border-radius:5px}.legend i.lp{background:var(--lime);border-color:var(--lime)}.legend i.lr{background:#F3C9C0;border-color:#F3C9C0}.legend i.lv{background:transparent;border-color:#d4553f}

/* =====================================================================
   v49 — aturan warna + kontras (hitam=selesai/aktif, lime=proses/sorotan,
   biru=aksi, rose/merah=perlu perhatian, abu=belum/netral)
   ===================================================================== */
:root{--muted:#62625C;--warn:#A3412F;--bronze:#151515;--deep:#2A211B;--deep2:#3A2E25;--rose:#F3C9C0}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--muted:#A3A39C;--bronze:#EDEDEA;--warn:#EF8C76;--deep:#3D5BF0;--deep2:#5470F5}}
:root[data-theme="dark"]{--muted:#A3A39C;--bronze:#EDEDEA;--warn:#EF8C76;--deep:#3D5BF0;--deep2:#5470F5}
/* aksi = biru */
button.b.pri,a.b.pri,label.b.pri,.spbtn,.askgo,.aibn-b{background:var(--deep)!important;border-color:var(--deep)!important;color:#fff!important}
button.b.pri:hover,a.b.pri:hover,label.b.pri:hover,.spbtn:hover,.askgo:hover{background:var(--deep2)!important;border-color:var(--deep2)!important}
.spcode,.spc2{color:var(--deep)!important}
/* status icons */
.si{width:16px;height:16px;flex:0 0 auto;display:inline-block;vertical-align:-3px;color:var(--ink)}
.dmx-c{background:none!important;box-shadow:none!important;height:22px;display:grid!important;place-items:center}
.dmx-c .si{width:17px;height:17px}
.dleg span,.legend span{display:inline-flex;align-items:center;gap:6px}
.dleg i,.legend i{display:none}
.chip b{display:inline-flex;align-items:center;gap:4px}.chip b .si{width:12px;height:12px}
.chip.selesai b .si{color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .chip.selesai b .si{color:#151515}}
/* hiasan → netral */
.bnav a.on svg{background:var(--ink)!important;color:var(--paper)!important}
.aibn-i,.askres .aibn-i{background:var(--ink)!important;color:var(--paper)!important}
.dft sup{background:var(--rose)!important;color:#7A2A1C!important}
.dbars em{background:var(--ink)}
.dmd{background:var(--soft)!important;color:var(--ink)!important}.dmd small{color:var(--muted)!important}
.askin{background:var(--paper)!important;color:var(--ink)!important;border:1px solid var(--line)}
.askin textarea{color:var(--ink)!important;background:var(--soft)!important;border-radius:6px!important;padding:12px 14px!important}
.askin textarea::placeholder{color:var(--muted)!important}
.askin .chip3{border-color:var(--line)!important;color:var(--ink)!important}
.askin .chip3.btn:hover{background:var(--soft)!important}
.mpadd.on{background:var(--ink)!important;color:var(--paper)!important}
.aibar2 i{background:var(--ink)}.aibar2 i.warn{background:#E59A88}.aibar2 i.full{background:var(--warn)}
.spfl.o{background:var(--soft)!important;color:var(--ink)!important}
.spfl.c{background:#FBE7DF!important;color:#A3412F!important}
/* ukuran huruf minimum */
.sub,.note,.hint{font-size:13px}
.btag,.tag,.pill2,.cfm small,.btype-ic,.stpill{font-size:11px!important;letter-spacing:.08em!important}
.dmx-h,.dleg,.dcard small,.dmi small,.dbars div,.spm small,.mpst,.aim-note{font-size:12px!important}
.chip b,.chip small,.mrow,.mdate span,.st,.wd,.agd span,.kc-p,.kh,.fg th,.cfv small,.bth .b.sm,.bws.fs .bfs-bar .b,.bkpg i,.spfl,.bnav a,.blk-k,.ptabs a,.seg button,.ptabs2 button,.mtop .wm,.side .wm,.bar{font-size:11px!important}
button.b.sm,a.b.sm,label.b.sm{font-size:12px!important}
.chip small{opacity:.85}
.chip.selesai b .si circle{fill:#fff}.chip.selesai b .si path{stroke:#151515}.chip b .si{width:13px;height:13px}
.spbtn{border-radius:999px!important;padding:0 18px!important;min-height:40px;display:inline-flex!important;align-items:center}
.dcard.on{color:var(--paper)!important}.dcard.on .dring i{background:var(--ink)!important;color:var(--paper)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .si path[stroke="#C9C49A"]{stroke:#151515}}
:root[data-theme="dark"] .si path[stroke="#C9C49A"]{stroke:#151515}
/* v49.1 — desktop lebar: isi memakai seluruh layar */
@media (min-width:900px){.main{max-width:none!important}}
@media (min-width:1500px){.main{padding-left:48px!important;padding-right:48px!important}.dash{grid-template-columns:minmax(0,1fr) 380px}}
@media (min-width:1800px){.dash{grid-template-columns:minmax(0,1fr) 420px}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .dcard.on small.late{color:#A3412F!important}}
:root[data-theme="dark"] .dcard.on small.late{color:#A3412F!important}
/* v49.2 — ubah status dengan kalimat */
.cmdbox{margin:0 0 14px}.cmdbox.in-dash{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.cmdrow{display:flex;gap:8px;align-items:center;background:var(--soft);border-radius:6px;padding:6px 6px 6px 14px}
.cmdbox.card .cmdrow{background:var(--soft)}
.cmdic{color:var(--muted);font-size:15px}
.cmdrow input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;padding:8px 4px!important;font-size:14px;outline:none}
.cmdres{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding:12px 14px;border-radius:6px;background:var(--paper);border:1px solid var(--line)}
.cmdres .row.tight{margin-top:2px}
.cmdsum{display:flex;gap:8px;align-items:center;font-size:14px}
.cmdres.ok2{flex-direction:row;align-items:center;justify-content:space-between;background:var(--soft);border-color:transparent}
.dmx-c.hl,.chip.hl{animation:cmdpulse 1.1s ease-in-out infinite;outline:2px solid var(--deep);outline-offset:2px;border-radius:999px}
.chip.hl{border-radius:6px}
@keyframes cmdpulse{50%{outline-color:transparent}}
@media (max-width:640px){.cmdrow{flex-wrap:wrap}.cmdrow input{flex-basis:100%;padding-left:0!important}.cmdrow .b{width:100%;justify-content:center}}
@media (max-width:640px){.chip b .si{display:none}}
.mpfit{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.mpfit button{flex:1;border:0;background:transparent;font:inherit;font-size:11px;padding:3px 0;cursor:pointer;color:var(--muted)}.mpfit button.on{background:var(--ink);color:var(--paper)}
.mppal-r{grid-template-columns:44px 1fr 1fr auto auto!important}.mppal-r .mpfit{width:96px}
.mpth{width:84px}.mpth img{width:84px}
.mptog{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px}.mptog b{font-size:13px;font-weight:600}.mptog .seg2 button{padding:5px 12px;font-size:12px}
.mptog+.mpslot{margin-top:8px}.mptog+.mpslot .mpslot-h b{display:none}
.mpup{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.mpup summary{cursor:pointer;list-style:none;display:flex;gap:8px;align-items:baseline}.mpup summary::-webkit-details-marker{display:none}.mpup summary::before{content:'\25B8';color:var(--muted)}.mpup[open] summary::before{content:'\25BE'}
.mpth.used img{outline:2px solid var(--ink);outline-offset:-2px}.mpth em{position:absolute;left:4px;bottom:4px;font-style:normal;font-size:10px;background:var(--ink);color:var(--paper);border-radius:6px;padding:0 5px}
.mpth{position:relative}
.mpzoom{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.mpzoom>span:first-child{font-size:13px;font-weight:600;margin-right:4px}.mpzoom b{min-width:44px;text-align:center;font-size:13px}.mpzoom .sub{flex-basis:100%}
.mprange{display:flex;flex-direction:column;gap:6px;margin-top:14px}.mprange>span:first-child{font-size:13px;font-weight:600;display:flex;justify-content:space-between}.mprange input{width:100%;accent-color:var(--ink)}
/* v49.7 potong material */
.mpth .mprg{left:-6px;right:auto;background:var(--deep,#2A211B)}
.mpth .mprg:disabled{opacity:.5}
.mpcut{margin:8px 0 2px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.mpcut .note{flex-basis:100%;margin:0}
/* v49.9 repetisi pin */
.mprep{margin:10px 0 4px;padding:10px 12px;border:1px solid var(--line,#E4E2DC);border-radius:12px}
.mprep-h{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.mprep-h .sub{font-size:12px}
.mprep-c{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--ink);font-size:12px}
.mprep-c button{position:absolute;top:-7px;right:-7px;width:18px;height:18px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);font-size:12px;line-height:1;padding:0;cursor:pointer}

/* v50 nota vendor */
.vnhead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding-bottom:8px;border-bottom:1px solid var(--ink)}
.vnrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.vnrow.on{background:var(--alt);margin:0 -8px;padding:10px 8px}
.vnck{flex:0 0 22px;display:flex;justify-content:center}.vnck input{width:18px;height:18px;min-height:0;accent-color:#151515;cursor:pointer}
.vndone{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;background:var(--ink);color:var(--bg);font-size:11px;border-radius:3px}
.vnmain{flex:1;min-width:0}.vnact{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.vnclient{padding:12px;margin:0 0 6px;background:var(--alt)}.vnchk{display:flex;gap:8px;align-items:center;font-size:13px;margin-top:6px}.vnchk input{width:16px;height:16px;min-height:0}
.vnbar{position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + 70px);z-index:5;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;background:var(--paper);border:1px solid var(--ink)}
.vnlist{margin-top:22px}.vnlist .label{display:block;padding-bottom:6px;border-bottom:1px solid var(--ink)}
@media (max-width:600px){.vnrow{flex-wrap:wrap}.vnact{width:100%;padding-left:34px;justify-content:flex-start}.vnbar span:last-child{width:100%;display:flex;gap:6px;flex-wrap:wrap}}

/* =====================================================================
   v51 — navigasi baru: sidebar + proyek prioritas, bar atas (cari ⌘K,
   perlu perhatian, tambah cepat), pil di tablet, menu bawah di HP,
   Hari ini 2 kolom + angka ringkas
   ===================================================================== */
.app.v2app{display:grid;grid-template-columns:minmax(0,1fr);min-height:100vh}
.v2side{display:none}
.v2col{min-width:0;display:flex;flex-direction:column}
.v2top{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 12px) max(20px,env(safe-area-inset-right,0px)) 12px max(20px,env(safe-area-inset-left,0px));background:var(--bg);border-bottom:1px solid var(--line)}
.v2mono{display:inline-flex;color:var(--ink);flex:none}.v2mono .mono-s{width:30px;height:22px}
.v2search{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:40px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--muted);font:inherit;font-size:14px;text-align:left;cursor:pointer}
.v2search:hover{border-color:var(--ink)}
.v2search span{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.v2search .ic,.v2ib .ic,.v2add .ic{width:18px;height:18px}
kbd{font-family:var(--sans);font-size:11px;border:1px solid var(--line);border-radius:6px;padding:1px 6px;color:var(--muted);background:var(--paper);white-space:nowrap}
.v2ib{position:relative;flex:none;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);cursor:pointer}
.v2ib:hover{border-color:var(--ink)}
.v2pip{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--warn)}
.v2add{flex:none;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border:0;border-radius:12px;background:var(--deep);color:#fff;font:inherit;font-size:14px;font-weight:500;cursor:pointer}
.v2add:hover{background:var(--deep2)}
.v2save{font-size:12px;color:var(--muted);white-space:nowrap}
.v2bd{font-style:normal;font-size:11px;line-height:18px;min-width:18px;padding:0 6px;border-radius:999px;background:var(--warn);color:#fff;text-align:center;font-weight:500;letter-spacing:0}
.v2pills{display:none;gap:6px;padding:10px max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));overflow-x:auto}
.v2pills a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--muted);text-decoration:none;font-size:13px;font-weight:500}
.v2pills a.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.v2bnav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:space-around;background:var(--paper);border-top:1px solid var(--line);padding:6px max(4px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(4px,env(safe-area-inset-left,0px))}
.v2bnav a{display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--muted);font-size:11px;font-weight:500;padding:4px 6px;min-width:56px}
.v2bnav a.on{color:var(--ink)}
.v2bnav a.on .ic{background:var(--lime);color:#151515;border-radius:10px;padding:3px 9px;box-sizing:content-box}
.v2main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
@media (min-width:760px){.v2bnav{display:none}.v2pills{display:flex}.v2main{padding-bottom:80px}}
@media (min-width:1100px){
  .app.v2app{grid-template-columns:240px minmax(0,1fr)}
  .v2side{display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh;overflow-y:auto;padding:calc(env(safe-area-inset-top,0px) + 22px) 14px 18px max(14px,env(safe-area-inset-left,0px));background:var(--paper);border-right:1px solid var(--line)}
  .v2pills,.v2mono{display:none}
  .v2top{padding-left:32px;padding-right:max(32px,env(safe-area-inset-right,0px))}
  .v2search{max-width:560px}
  .v2top .v2save{margin-left:auto}
}
.v2brand{display:flex;align-items:center;gap:10px;padding:0 8px;color:var(--ink);text-decoration:none}
.v2brand .mono-s{width:34px;height:25px;flex:none}
.v2brand b{display:block;font-weight:500;font-size:14px;line-height:1.2}
.v2brand small{display:block;color:var(--muted);font-size:12px;line-height:1.3}
.v2snav{display:grid;gap:2px}
.v2snav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:500}
.v2snav a:hover{background:var(--soft);color:var(--ink)}
.v2snav a.on{background:var(--ink);color:var(--paper)}
.v2snav a .v2bd{margin-left:auto}
.v2lbl{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 10px 6px;font-weight:500}
.v2pins{display:grid;gap:1px}
.v2pins a{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:13.5px}
.v2pins a:hover{background:var(--soft)}
.v2pins a.on{background:var(--soft);font-weight:500}
.v2pn{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.v2dot{width:9px;height:9px;border-radius:50%;flex:none;display:inline-block}
.v2lt{width:7px;height:7px;border-radius:50%;background:var(--warn);flex:none}
.v2foot{margin-top:auto;display:grid;gap:8px;padding:10px;border-radius:6px;background:var(--soft);font-size:12px}
.v2foot .row{margin:0;gap:6px}
.v2me{display:flex;align-items:center;gap:9px;min-width:0}
.v2me i{width:30px;height:30px;border-radius:50%;background:var(--lime);color:#151515;display:grid;place-items:center;font-style:normal;font-weight:500;flex:none}
.v2me b{display:block;font-size:13px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v2me small{display:block;color:var(--muted)}
.v2me>span{min-width:0}

/* Hari ini */
.v2kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.v2k{display:grid;gap:2px;padding:14px 16px;border-radius:6px;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none;min-width:0}
.v2k:hover{border-color:var(--ink)}
.v2k b{font-size:26px;font-weight:500;line-height:1.15;letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v2k span{font-size:12px;color:var(--muted);line-height:1.35}
.v2k.lime{background:var(--lime);border-color:var(--lime);color:#151515}.v2k.lime span{color:#3A4410}
.v2k.dark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.v2k.dark span{color:var(--paper);opacity:.72}
.v2k.alert{background:var(--rose);border-color:var(--rose);color:#6E1E10}.v2k.alert span{color:#6E1E10}
@media (max-width:759px){.v2kpi{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v2k b{font-size:21px}}
.v2today{display:grid;grid-template-columns:minmax(0,1fr);gap:0 28px;align-items:start}
.v2ca,.v2cb{min-width:0;display:flex;flex-direction:column}
.v2cb .v2ag{order:-1}
@media (min-width:1100px){.v2today{grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr)}}

/* kotak perintah, tambah cepat, perlu perhatian */
#v2ov:empty{display:none}
.v2back{position:fixed;inset:0;z-index:200;background:rgba(12,12,10,.42);display:flex;justify-content:center;align-items:flex-start;padding:calc(env(safe-area-inset-top,0px) + 9vh) max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));overflow-y:auto}
.v2pal,.v2sheet{width:min(640px,100%);background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:6px;box-shadow:0 24px 60px rgba(0,0,0,.22);overflow:hidden}
.v2sheet{width:min(440px,100%);padding:10px}
.v2qrow{display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--line)}
.v2qrow .ic{width:20px;height:20px;color:var(--muted);flex:none}
.v2qrow input{flex:1;min-width:0;border:0!important;box-shadow:none!important;background:transparent!important;font-size:16px;padding:16px 0;border-radius:0}
.v2list{max-height:min(60vh,520px);overflow-y:auto;padding:6px 8px 8px}
.v2g{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:10px 10px 4px;font-weight:500}
.v2it{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;text-align:left;padding:9px 10px;border-radius:10px;cursor:pointer}
.v2it:hover,.v2it.on{background:var(--soft)}
.v2it .ic{width:18px;height:18px;flex:none;color:var(--muted)}
.v2it .v2dot{margin:0 4px}
.v2t{flex:1;min-width:0}
.v2t small{display:block;color:var(--muted);font-size:12px;line-height:1.3}
.v2foot2,.v2foot{}
.v2pal .v2foot{display:flex;gap:16px;flex-wrap:wrap;margin:0;border-radius:0;background:var(--soft);padding:8px 16px;color:var(--muted);font-size:12px}
.v2sh{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 8px 10px}
.v2x{width:34px;height:34px;border:0;background:transparent;border-radius:10px;display:grid;place-items:center;color:var(--muted);cursor:pointer}
.v2x:hover{background:var(--soft)}.v2x .ic{width:18px;height:18px}
.v2fi{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:14px;line-height:1.45}
.v2fi:hover{background:var(--soft)}
.v2fi i{width:8px;height:8px;border-radius:50%;margin-top:7px;flex:none;background:var(--muted)}
.v2fi.late i{background:var(--warn)}.v2fi.info i{background:var(--deep)}
@media (max-width:759px){.v2back{padding-top:calc(env(safe-area-inset-top,0px) + 12px)}.v2search kbd,.v2add span,.v2save{display:none}.v2add{padding:0 12px}}
@media (prefers-reduced-motion:no-preference){.v2pal,.v2sheet{animation:v2in .14s ease-out}@keyframes v2in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}}

/* =====================================================================
   v52 — proyek 5 kelompok + sub-tab, tim & order kerja
   ===================================================================== */
.v2sub{display:flex;gap:6px;overflow-x:auto;margin:-6px 0 18px;padding-bottom:2px}
.v2sub a{white-space:nowrap;padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);text-decoration:none;font-size:13px;font-weight:500}
.v2sub a:hover{color:var(--ink);border-color:var(--ink)}
.v2sub a.on{background:var(--lime);border-color:var(--lime);color:#151515}
.tkrow{display:flex;justify-content:space-between;align-items:center;gap:10px}
.tkboard{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px}
.tkcol{background:var(--soft);border-radius:6px;padding:10px;display:grid;gap:8px;align-content:start;min-height:180px}
.tkcol>.tkrow{padding:2px 4px 4px}
.tkcard{display:grid;gap:5px;padding:10px 12px;border-radius:6px;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13.5px;line-height:1.35}
.tkcard:hover{border-color:var(--deep)}
.tkcard.hot{border-color:var(--warn);box-shadow:inset 3px 0 0 var(--warn)}
.tkcard b{font-weight:500}
.tkno{font-weight:500;color:var(--deep);font-size:12px;letter-spacing:.02em}
.tkst{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:500;white-space:nowrap;line-height:1.5}
.tkst.b0{background:var(--soft);color:var(--muted);border:1px solid var(--line)}
.tkst.b1{background:var(--lime);color:#151515}
.tkst.b2{background:transparent;color:var(--ink);border:1.5px solid var(--lime)}
.tkst.b3{background:var(--rose);color:#6E1E10}
.tkst.b4{background:var(--ink);color:var(--paper)}
.tkgrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:899px){.tkgrid{grid-template-columns:minmax(0,1fr)}}
.tkgrid textarea{width:100%}
.tkcalc{display:grid;gap:8px;font-variant-numeric:tabular-nums}
.tkln{display:flex;justify-content:space-between;gap:12px}
.tkln b{font-weight:500;white-space:nowrap}
.tkln.tot{border-top:1px dashed var(--line);padding-top:10px;margin-top:4px;align-items:baseline}
.tkln.tot b{font-size:26px;letter-spacing:-.01em}
.tkvers{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.tkver{border:1px solid var(--line);border-radius:10px;padding:5px 10px;font-size:12.5px;background:var(--soft)}
.tkver.lk{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.tkrates{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:16px}
.tkrates .card{display:grid;gap:4px}
.tkex{background:var(--lime-soft,#ECEAD8);border-radius:12px;padding:10px 12px;font-size:13px;margin:12px 0 8px;color:#151515}
button.b.lime,a.b.lime{background:var(--lime);border-color:var(--lime);color:#151515}
.v2col>*{min-width:0;max-width:100%}.v2main{width:100%}

/* =====================================================================
   v53 — portal freelancer (gaya MH: krem, serif) + file kiriman tim
   ===================================================================== */
.tkfiles{display:grid;gap:8px;margin:0 0 12px}
.tkfile{display:grid;grid-template-columns:auto 1fr;gap:0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;font-size:13px}
.tkfile:hover{border-color:var(--deep)}
.tkfile b{grid-row:1/3;align-self:center;background:var(--soft);border-radius:8px;padding:4px 8px;font-weight:500}
.tkfile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tkfile small{color:var(--muted)}
.v3p{--c-bg:#F4EEE3;--c-paper:#FFFCF6;--c-ink:#2B261F;--c-muted:#776E62;--c-line:#E3D9C8;--c-acc:#86643F;max-width:860px;margin:0 auto;display:grid;gap:16px;color:var(--c-ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .v3p{--c-bg:#1C1915;--c-paper:#25211B;--c-ink:#EFE7D9;--c-muted:#AA9F8F;--c-line:#3A342B;--c-acc:#D0A876}}
:root[data-theme="dark"] .v3p{--c-bg:#1C1915;--c-paper:#25211B;--c-ink:#EFE7D9;--c-muted:#AA9F8F;--c-line:#3A342B;--c-acc:#D0A876}
body:has(.v3p){background:var(--c-bg,#F4EEE3)}
.v3p .sub,.v3p small{color:var(--c-muted)}
.v3lbl{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--c-muted)}
.v3h{font-family:var(--serif);font-weight:400;font-size:40px;margin:4px 0 12px}
.v3h2{font-family:var(--serif);font-size:30px;line-height:1.1}
.v3top{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--c-line)}
.v3me{display:flex;align-items:center;gap:10px}
.v3me i{width:36px;height:36px;border-radius:50%;background:var(--c-ink);color:var(--c-paper);display:grid;place-items:center;font-style:normal;font-family:var(--serif);font-size:18px}
.v3me b{display:block;font-weight:500;line-height:1.2}.v3me small{display:block;font-size:12px}
.v3tabs{display:flex;gap:6px;overflow-x:auto}
.v3tabs button{white-space:nowrap;border:1px solid var(--c-line);background:transparent;color:var(--c-muted);border-radius:999px;padding:8px 16px;font:inherit;font-size:14px;cursor:pointer}
.v3tabs button.on{background:var(--c-ink);border-color:var(--c-ink);color:var(--c-paper)}
.v3card{background:var(--c-paper);border:1px solid var(--c-line);border-radius:8px;padding:18px;display:grid;gap:12px;min-width:0}
.v3row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.v3no{font-size:12px;color:var(--c-acc);font-weight:500;letter-spacing:.04em}
.v3t{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.15;margin:2px 0}
.v3due{text-align:right;flex:none}.v3due b{display:block;font-family:var(--serif);font-size:26px;font-weight:500;line-height:1}.v3due.late b{color:var(--warn)}
.v3meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.v3meta div{display:grid;gap:2px}.v3meta b{font-weight:500;font-variant-numeric:tabular-nums}
.v3brief{margin:0;padding:12px 14px;background:var(--c-bg);border-radius:6px;font-size:14px;line-height:1.6}
.v3link{color:var(--c-acc)}
.v3act{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.v3p .b.pri{background:var(--c-ink)!important;border-color:var(--c-ink)!important;color:var(--c-paper)!important;border-radius:6px}
.v3p .b{border-radius:6px}
.v3drop{display:grid;gap:4px;text-align:center;padding:22px;border:1.5px dashed var(--c-line);border-radius:8px;cursor:pointer;background:var(--c-bg);margin-top:12px}
.v3drop:hover{border-color:var(--c-acc)}
.v3note{background:var(--c-paper);border-left:3px solid var(--c-acc);padding:10px 14px;font-size:14px}
.v3sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.v3big{display:block;font-family:var(--serif);font-size:26px;font-weight:500;font-variant-numeric:tabular-nums}
.v3foot{text-align:center;margin:8px 0 0}
@media (max-width:640px){.v3meta{grid-template-columns:1fr 1fr}.v3sum{grid-template-columns:1fr}.v3h2{font-size:26px}}
/* v53.1 — order borongan */
.tkrooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:10px}
.tkrooms.sm{margin:14px 0 4px}
.tkroom{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);cursor:pointer;font-size:13.5px;line-height:1.3}
.tkroom:hover{border-color:var(--ink)}
.tkroom.on{border-color:var(--ink);background:var(--soft)}
.tkroom input{margin-top:2px}
.tkroom b{display:block;font-weight:500}.tkroom small{display:block;color:var(--muted);font-size:12px}
.tkmode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.tkmode label{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.tkmode label:has(input:checked){border-color:var(--deep);background:var(--soft)}
.tkmode b{display:block;font-weight:500}.tkmode small{display:block;color:var(--muted);font-size:12px;line-height:1.35}
@media (max-width:640px){.tkmode{grid-template-columns:1fr}}
.v3rooms{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}
.v3rooms small{width:100%}
.v3rooms span{border:1px solid var(--c-line);border-radius:999px;padding:3px 10px;font-size:13px;background:var(--c-bg)}
/* v54 — penjaga proyek */
.npcard{display:grid;gap:12px}
.nplink{background:var(--lime-soft,#ECEAD8);color:#151515;border-radius:6px;padding:14px;line-height:1.8}
.nptog{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.nptog label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.nptog b{display:block;font-weight:500;font-size:14px}.nptog small{display:block;color:var(--muted);font-size:12px;line-height:1.35}
.npprev{display:grid;gap:6px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;background:var(--soft)}
.npi{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45}
.npi i{width:9px;height:9px;border-radius:50%;margin-top:6px;flex:none;background:var(--deep)}
.npi.r i{background:var(--warn)}.npi.o i{background:#E59A3A}
/* v54.1 — lampiran & Dropbox */
.tkatt{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);display:grid;gap:6px}
.tkfile{grid-template-columns:auto 1fr auto!important;align-items:center}
.tkfile a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}
.tkfile small{grid-column:2/3}
.tkfile .b{grid-column:3;grid-row:1/3}
.tkfile.arc{opacity:.6}
.v3att{display:grid;gap:8px}
.v3att details{border:1px solid var(--c-line);border-radius:6px;background:var(--c-bg);overflow:hidden}
.v3att summary{cursor:pointer;padding:10px 14px;font-weight:500;list-style-position:inside}
.v3att summary small{font-weight:400;margin-left:6px}
.v3board{padding:10px;overflow-x:auto;background:#fff}
.v3board>*{max-width:100%}
.v3gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;padding:10px}
.v3gal img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.v3dbx{justify-self:start;background:var(--c-paper)!important;border:1px solid var(--c-line)!important;color:var(--c-ink)!important}

/* =====================================================================
   v54.2 — HP: tidak bisa ter-zoom, menu bawah tidak ikut bergeser
   ===================================================================== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;overflow-x:hidden}
html,body{overscroll-behavior-y:none}
.v2app{overflow-x:clip}
@media (max-width:899px){
  input,select,textarea,.v2qrow input{font-size:16px!important}
}
.v2bnav{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform}
.v2top{-webkit-backface-visibility:hidden;backface-visibility:hidden}
@media (max-width:759px){
  .v2bnav a .ic{padding:3px 10px;box-sizing:content-box;border-radius:10px;width:22px;height:22px}
  .v2bnav a{font-size:10.5px;min-width:0;flex:1;padding:4px 2px}
  .v2main h1{font-size:34px!important;line-height:1.1}
  .v2main h2{font-size:24px}
  .v2main .ptabs,.v2main .v2sub{flex-wrap:wrap;overflow:visible;gap:6px}
  .v2main .ptabs a{padding:7px 13px!important;font-size:13px!important}
  .v2main .v2sub a{padding:6px 12px;font-size:13px}
  .v2main{padding-left:max(16px,env(safe-area-inset-left,0px))!important;padding-right:max(16px,env(safe-area-inset-right,0px))!important}
  .v2top{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));gap:8px}
}
@media (max-width:759px){.v2main .v2sub{margin:4px 0 18px}}

/* v54.5 pembayaran tim */
.pyrow{padding:12px 0;border-bottom:1px solid var(--line)}
.pyrow:last-child{border-bottom:0}
.pygrp{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:16px 0 2px}
.pybar{height:6px;border-radius:99px;background:var(--soft);border:1px solid var(--line);overflow:hidden;margin:10px 0 6px}
.pybar i{display:block;height:100%;background:var(--lime)}
.pybar.done i{background:var(--ink)}
.pymeta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center;font-size:13px}
.pyform{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.pyhist{margin-top:10px}
.pyhist summary{cursor:pointer;font-size:13px;color:var(--muted)}
.pyh{display:grid;grid-template-columns:70px minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--line);font-size:13px}
.pyh small{color:var(--muted);font-size:11.5px}
.pymon{display:flex;justify-content:space-between;margin:14px 0 0;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.v2k.hot b{color:#B0341E}
@media(max-width:700px){.pyform{grid-template-columns:minmax(0,1fr)}.pyh{grid-template-columns:62px minmax(0,1fr) auto;row-gap:2px}.pyh small{grid-column:2}.pyh .b{grid-column:3}}

/* v54.6 bayar cepat */
.qpform{margin:14px 0 4px;padding:14px;border:1.5px solid var(--deep);border-radius:6px;background:var(--soft)}
.qpform .grid2{margin-top:10px}
.qptot{display:flex;justify-content:space-between;align-items:baseline;margin:14px 0 8px;padding-top:12px;border-top:1px solid var(--line)}
.qptot b{font-size:22px}
.qppay{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.qppay label{display:flex;gap:6px;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--paper);cursor:pointer;font-size:13.5px}
.qppay label:has(input:checked){border-color:var(--deep);color:var(--deep)}
.qppay input[type=number]{width:160px}

/* ===================== v55 — mood editorial (espresso, linen, judul besar) ===================== */
:root{--bg:#EFE8DF;--alt:#E8E0D5;--paper:#F6F2EC;--ink:#1F1915;--muted:#6B5A4C;--line:#D8CEC2;--soft:#E6DED3;--deep:#2A211B;--deep2:#3A2E25;--deep-ink:#EFE8DF;--bronze:#6B5A4C;--warn:#9A3F22;
  --lime:#DEDABC;--lime-soft:#ECEAD8;--rose:#F1DDD3;--pill:#B8AC9E;--r:6px;
  --display:'Archivo','Hanken Grotesk',system-ui,sans-serif;--serif:'Hanken Grotesk',system-ui,-apple-system,sans-serif;--sans:'Hanken Grotesk',system-ui,-apple-system,sans-serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#17130F;--alt:#1E1914;--paper:#221C17;--ink:#EFE8DF;--muted:#A8998A;--line:#3A3129;--soft:#2C251F;--deep:#EFE8DF;--deep2:#D9CFC2;--deep-ink:#1F1915;--bronze:#C9B9A6;--warn:#E39A7C;--lime:#C9C49A;--lime-soft:#2B2A1C;--rose:#E7C2B1;--pill:#5A4E44;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#17130F;--alt:#1E1914;--paper:#221C17;--ink:#EFE8DF;--muted:#A8998A;--line:#3A3129;--soft:#2C251F;--deep:#EFE8DF;--deep2:#D9CFC2;--deep-ink:#1F1915;--bronze:#C9B9A6;--warn:#E39A7C;--lime:#C9C49A;--lime-soft:#2B2A1C;--rose:#E7C2B1;--pill:#5A4E44;color-scheme:dark}
body{font-family:var(--sans);font-weight:300;letter-spacing:.005em}
/* judul halaman: huruf besar bertingkat */
.phrow{padding-bottom:26px;align-items:flex-end}
.phrow h1,.phead h1{font-family:var(--display);font-weight:400;font-size:clamp(44px,7.2vw,104px);line-height:.92;letter-spacing:-.035em;text-transform:uppercase;margin-top:10px}
.phead .label,.label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.phead .label::before{content:"■ ";font-size:9px;vertical-align:1px}
h2{font-family:var(--display);font-weight:400;letter-spacing:-.025em}
h3{letter-spacing:.18em}
/* kartu & panel: garis tipis, tanpa bayangan */
.card{border-radius:4px;box-shadow:none!important;background:var(--paper)}
.v2k{border-radius:0;background:transparent;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 18px 18px;min-height:128px;align-content:space-between;grid-template-columns:minmax(0,1fr)}
.v2kpi{gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);margin:24px 0}
.v2k b{order:2;font-family:var(--display);font-weight:300;font-size:clamp(30px,3.6vw,52px);line-height:.95;letter-spacing:-.04em;text-align:right}
.v2k span{order:1;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.v2k:hover{background:var(--paper)}
.v2k.hot,.v2k.lime{background:var(--rose);color:#6E2A14}.v2k.hot b{color:#8A3A1E}
.v2k.lime{background:var(--lime);color:#2E2C12}
/* tombol */
.b{border-radius:4px;letter-spacing:.16em}
.b.pri{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
.b.pri:hover{background:var(--deep2);border-color:var(--deep2)}
.b.lime{background:var(--lime);border-color:var(--lime);color:#2E2C12}
/* status: espresso selesai, olive berjalan, terakota perhatian, linen belum */
.tkst{border-radius:999px;letter-spacing:.06em;font-weight:400}
.tkst.b0{background:var(--soft);color:var(--muted);border:1px solid var(--line)}
.tkst.b1{background:var(--lime);color:#2E2C12}
.tkst.b2{border-color:#8C8754;color:var(--ink)}
.tkst.b3{background:var(--rose);color:#7A2E14}
.tkst.b4{background:var(--deep);color:var(--deep-ink)}
.pybar{border-radius:0;height:4px;border:0;background:var(--line)}
.pybar i{background:#8C8754}.pybar.done i{background:var(--deep)}
/* navigasi */
.v2side{background:var(--bg)}
.v2me i{background:var(--deep);color:var(--deep-ink);font-family:var(--display)}
.v2bnav{background:var(--paper)}
.v2bnav a{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:400}
.v2bnav a.on .ic{background:var(--deep);color:var(--deep-ink)}
.ptabs a,.ptabs button,.v2pt a{letter-spacing:.18em}
.qpform{border-color:var(--deep);border-radius:4px}
.qppay label:has(input:checked){border-color:var(--deep);color:var(--ink);background:var(--soft)}
/* hero proyek dengan render */
.v55hero{position:relative;margin:0 0 8px;min-height:clamp(320px,52vh,560px);display:flex;flex-direction:column;justify-content:flex-end;padding:28px clamp(20px,4vw,48px) 30px;background:#3A2E25 center/cover no-repeat;color:#F6F2EC;border-radius:4px;overflow:hidden}
.v55hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,19,15,.15) 0%,rgba(23,19,15,.25) 45%,rgba(23,19,15,.72) 100%)}
.v55hero>*{position:relative}
.v55hero .phead{margin:0}.v55hero .phrow{border-bottom:0;padding-bottom:0}
.v55hero .phrow h1,.v55hero .label,.v55hero .back{color:#F6F2EC}
.v55hero .psw{display:none}
.v55meta{display:flex;flex-wrap:wrap;gap:12px 40px;margin-top:22px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.v55meta b{display:block;font-family:var(--display);font-weight:300;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;text-transform:none;margin-top:4px}
@media (max-width:759px){.phrow h1,.phead h1{font-size:clamp(38px,12vw,58px)}.v2k{min-height:100px;padding:12px 14px 14px}.v2k b{font-size:clamp(24px,8vw,34px)}}
button.b.pri,a.b.pri,label.b.pri,.spbtn,.askgo,.aibn-b{color:var(--deep-ink)!important}
button.b.pri:hover,a.b.pri:hover{background:var(--deep2)!important;border-color:var(--deep2)!important;color:var(--deep-ink)!important}
.askin{background:var(--deep);color:var(--deep-ink)}
.ptabs a,.ptabs button,.v2pt a{letter-spacing:.1em}
@media (max-width:759px){.v55hero .phrow h1{font-size:clamp(44px,13vw,64px)}.v55hero{min-height:300px}}
.v2add{color:var(--deep-ink);border-radius:4px}

/* =====================================================================
   v56 — tampilan sesuai preview: sidebar espresso, krem linen,
   kartu putih bersudut tegas, judul huruf besar sans (Inter),
   kartu proyek dengan bar 8 tahap, penjaga proyek, menu bawah gelap
   ===================================================================== */
:root{--bg:#EFE8DC;--alt:#E9E1D3;--paper:#FCFAF6;--ink:#2A201B;--muted:#7C6F65;--line:rgba(42,32,27,.14);--soft:#E6E0D7;--deep:#2A201B;--deep2:#3B2E27;--deep-ink:#F5EEE3;--bronze:#7C6F65;--warn:#B04E45;
  --lime:#F1E3CC;--lime-soft:#F6EEDF;--rose:#F4DDD8;--pill:#B8AC9E;--r:2px;--ochre:#B07D3E;--sage:#6E7B5E;--sage-bg:#E2E5D8;
  --display:'Inter',system-ui,-apple-system,sans-serif;--sans:'Inter',system-ui,-apple-system,sans-serif;--serif:'Inter',system-ui,-apple-system,sans-serif;--ui:'Inter',system-ui,-apple-system,sans-serif}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#17120F;--alt:#1D1713;--paper:#221B17;--ink:#EFE6D8;--muted:#A99A8B;--line:rgba(239,230,216,.14);--soft:#2C241F;--deep:#EFE6D8;--deep2:#D9CFC2;--deep-ink:#1F1915;--warn:#E28F82;--lime:#3A2E1E;--lime-soft:#2A2219;--rose:#3D2320;--ochre:#D2A066;--sage-bg:#252A20}}
:root[data-theme="dark"]{--bg:#17120F;--alt:#1D1713;--paper:#221B17;--ink:#EFE6D8;--muted:#A99A8B;--line:rgba(239,230,216,.14);--soft:#2C241F;--deep:#EFE6D8;--deep2:#D9CFC2;--deep-ink:#1F1915;--warn:#E28F82;--lime:#3A2E1E;--lime-soft:#2A2219;--rose:#3D2320;--ochre:#D2A066;--sage-bg:#252A20}
body{font-family:var(--sans);font-weight:400;letter-spacing:0;-webkit-font-smoothing:antialiased}

/* --- sidebar espresso (desktop) --- */
@media (min-width:1100px){
  .v2side{background:#2A201B;border-right:0;color:#EDE4D6;padding-top:calc(env(safe-area-inset-top,0px) + 22px)}
}
.v2side .v2brand{color:#EDE4D6}
.v2side .v2brand b{font-size:11px;letter-spacing:.22em;font-weight:600;text-transform:uppercase}
.v2side .v2brand small{color:#A9998A;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.v2side .v2snav a{color:#CFC2B3;border-radius:0;font-size:13.5px;font-weight:400;padding:9px 10px}
.v2side .v2snav a:hover{background:rgba(237,228,214,.07);color:#fff}
.v2side .v2snav a.on{background:rgba(237,228,214,.1);color:#fff;box-shadow:inset 2px 0 0 #EDE4D6}
.v2side .v2lbl{color:#9C8C7D;font-size:10px;letter-spacing:.2em;font-weight:600}
.v2side .v2pins a{color:#CFC2B3;font-size:12.5px;border-radius:0}
.v2side .v2pins a:hover,.v2side .v2pins a.on{background:rgba(237,228,214,.07);color:#fff}
.v2side .v2foot{background:transparent;border-top:1px solid rgba(237,228,214,.14);border-radius:0;color:#CFC2B3;padding:12px 6px 0}
.v2side .v2me i{background:#7C6656;color:#fff}
.v2side .v2me small,.v2side .save{color:#A9998A}
.v2side .b{background:transparent;border-color:rgba(237,228,214,.25);color:#EDE4D6}
.v2side .b:hover{border-color:#EDE4D6}
.v2side .v2bd{background:#B04E45}

/* --- bar atas --- */
.v2top{background:var(--bg)}
.v2search,.v2ib,.v2add,kbd{border-radius:2px}
.v2search{background:var(--paper)}
.v2add{background:var(--deep);color:var(--deep-ink)}

/* --- judul halaman: huruf besar, ringkas --- */
.phead{margin-bottom:18px}
.phrow{padding-bottom:16px;border-bottom:1px solid var(--line);gap:16px}
.phrow h1,.phead h1{font-family:var(--display);font-weight:600;font-size:clamp(26px,3vw,34px);line-height:1.05;letter-spacing:.04em;text-transform:uppercase;margin-top:6px}
.phead .label,.label{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500}
.phead .label::before{content:none}
.v56sub{font-family:var(--sans);font-size:13px;letter-spacing:0;text-transform:none;font-weight:400;color:var(--muted);margin-top:8px}
.pact{display:flex;gap:8px;flex-wrap:wrap}
h2{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
h3{font-size:11px;letter-spacing:.18em;font-weight:600}
.v55hero{border-radius:0}
.v55hero .phrow h1{font-size:clamp(40px,6vw,76px);font-weight:500;letter-spacing:-.01em}

/* --- kartu, tombol, input --- */
.card,.blk{border-radius:0!important;background:var(--paper);border:1px solid var(--line)}
.b{border-radius:2px;letter-spacing:.02em;font-weight:500}
.b.pri,button.b.pri,a.b.pri{background:var(--deep)!important;border-color:var(--deep)!important;color:var(--deep-ink)!important}
input,select,textarea{border-radius:0}
.chip3,.pill2,.tkst{border-radius:2px!important}
.tkst.b1,.v2k.lime{background:var(--lime)}
.tkst.b1{color:#80592A}
.tkst.b3{background:var(--rose);color:#8E3830}
.pybar i{background:var(--ochre)}

/* --- KPI: kartu putih, angka besar tipis --- */
.v2kpi{gap:14px;border:0;margin:0 0 20px}
.v2k{border:1px solid var(--line)!important;background:var(--paper);min-height:0;padding:16px 18px;border-radius:0;align-content:start;gap:4px}
.v2k b{order:0;text-align:left;font-weight:300;font-size:30px;line-height:1.1;letter-spacing:-.01em}
.v2k span{order:1;font-size:10.5px;letter-spacing:.16em;color:var(--muted)}
.v2k.lime{background:var(--paper);color:var(--ink)}.v2k.lime span{color:var(--muted)}
.v2k.dark{background:var(--deep);border-color:var(--deep)!important;color:var(--deep-ink)}.v2k.dark span{color:var(--deep-ink)}
.v2k.alert,.v2k.hot{background:var(--rose);border-color:#DDBDB6!important}
.v2k:hover{border-color:var(--ink)!important}

/* --- penjaga proyek --- */
.v56guard{display:flex;gap:14px;align-items:flex-start;border:1px solid #DDBDB6;background:#F9ECE8;padding:14px 16px;margin:0 0 18px;font-size:14px;line-height:1.5}
.v56guard .v56gi{color:#B04E45;flex:none}.v56guard .v56gi .ic{width:18px;height:18px}
.v56guard b{font-weight:600}
.v56guard a{color:inherit;text-decoration:none}.v56guard a:hover{text-decoration:underline}
.v56tip{font-size:12.5px;color:var(--muted);margin-top:3px}
.v56more{background:none;border:0;padding:0;font:inherit;color:#8E3830;text-decoration:underline;cursor:pointer}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .v56guard{background:#3D2320;border-color:#5A3330}}

/* --- dashboard proyek berjalan --- */
.v56dash{margin:4px 0 22px}
.v56sh{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.v56sh h3{margin:0;text-transform:uppercase}
.v56sw{margin-left:auto;display:flex;border:1px solid var(--line)}
.v56sw button{background:transparent;border:0;padding:5px 11px;font:inherit;font-size:12px;color:var(--muted);cursor:pointer}
.v56sw button.on{background:var(--deep);color:var(--deep-ink)}
.v56grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.v56pc{display:flex;flex-direction:column;gap:12px;background:var(--paper);border:1px solid var(--line);padding:18px;color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.v56pc:hover{border-color:rgba(42,32,27,.3);box-shadow:0 6px 18px rgba(42,32,27,.06)}
.v56pct{display:flex;align-items:flex-start;gap:10px}
.v56pct .v2dot{margin-top:6px}
.v56pcn{flex:1;min-width:0}
.v56pcn b{display:block;font-size:15px;font-weight:600;line-height:1.3}
.v56pcn small{display:block;font-size:12.5px;color:var(--muted);margin-top:1px}
.v56chip{flex:none;font-size:11px;font-weight:500;padding:2px 8px;border-radius:2px;white-space:nowrap}
.v56chip.prog{background:#F1E3CC;color:#80592A}.v56chip.att{background:#F4DDD8;color:#8E3830}.v56chip.done{background:var(--deep);color:var(--deep-ink)}
.v56stg{display:grid;grid-template-columns:repeat(8,1fr);gap:3px}
.v56stg i{height:6px;background:var(--soft)}
.v56stg i.d{background:var(--deep)}.v56stg i.p{background:var(--ochre)}.v56stg i.a{background:#B04E45}.v56stg i.n{background:var(--soft);opacity:.45}
.v56pcm{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--muted);padding-bottom:12px;border-bottom:1px solid var(--line)}
.v56kv{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;font-size:13px;margin:0}
.v56kv dt{color:var(--muted)}.v56kv dd{margin:0}
.v56kv .late{color:#B04E45}

/* --- kolom kanan: kabar terbaru --- */
.v56feed .v56fi{display:flex;gap:12px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13px;line-height:1.45}
.v56feed .v56fi:last-child{border-bottom:0}
.v56fi i{width:26px;height:26px;border-radius:50%;background:#7C6656;color:#fff;display:grid;place-items:center;font-style:normal;font-size:10.5px;font-weight:600;flex:none}
.v56fi em{font-style:normal;color:var(--muted)}
.v56fi small{display:block;font-size:11px;color:var(--muted)}
.blk-h .blk-k{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.hview button{border-radius:0}

/* --- tab proyek: garis bawah huruf besar, sub-tab pil gelap --- */
.ptabs.v2pt{display:flex;gap:26px;border-bottom:1px solid var(--line);background:transparent;padding:0;border-radius:0;overflow-x:auto}
.ptabs.v2pt a{padding:10px 0 12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;background:transparent!important;border:0;border-radius:0;white-space:nowrap}
.ptabs.v2pt a.on{color:var(--ink);box-shadow:inset 0 -2px 0 var(--deep);font-weight:600}
.v2sub{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 16px}
.v2sub a{padding:5px 11px;border:1px solid var(--line);font-size:12px;color:var(--muted);border-radius:0;background:transparent;text-decoration:none}
.v2sub a.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.pcard{border-radius:0}

/* --- HP: menu bawah espresso dengan tombol + di tengah --- */
.v2bnav{background:#2A201B;border-top:0;padding-top:8px}
.v2bnav a{color:#BFB1A2}
.v2bnav a.on{color:#fff}
.v2bnav a.on .ic{background:transparent;color:#fff;padding:0}
.v56plus{flex:none;background:none;border:0;padding:0;cursor:pointer;align-self:flex-start}
.v56plus i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#EDE4D6;color:#2A201B;margin-top:-20px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.v56plus .ic{width:20px;height:20px}
@media (min-width:760px){.v56plus{display:none}}
.v2pills a{border-radius:0}.v2pills a.on{background:var(--deep);border-color:var(--deep);color:var(--deep-ink)}
@media (max-width:759px){
  .phrow h1,.phead h1{font-size:25px}
  .phrow{flex-direction:column;align-items:flex-start}
  .pact .b:not(.pri){display:none}
  .pact .b.pri{width:100%;justify-content:center}
  .pact{width:100%}
  .v2k b{font-size:24px}
  .v56grid{grid-template-columns:1fr}
  .v56sh h3{font-size:10.5px}
}
button.b,a.b,label.b{border-radius:2px;border-color:var(--line);letter-spacing:0}
button.b:hover,a.b:hover{border-color:var(--ink)}
.v2side .mono-s{color:#EDE4D6;width:34px;height:25px}
.v2side .v2brand{align-items:center}
.v2side .v2brand b{white-space:nowrap}
.blk-h .blk-k{text-transform:uppercase!important;letter-spacing:.16em!important;font-size:10.5px!important;font-weight:600!important}
.ib,.prp,.pill2,.hview,.hview button,.qadd .b,.wbadge,.ck2{border-radius:2px!important}
.ck2{border-radius:2px!important}
@media (max-width:759px){
  .v2bnav{justify-content:space-between;padding-left:4px;padding-right:4px}
  .v2bnav a{flex:1 1 0;min-width:0;padding:4px 0;font-size:10px;letter-spacing:0;text-transform:none}
  .v2bnav a span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .v56plus{flex:0 0 52px;display:flex;justify-content:center}
  .v2top .v2add{display:none}
  .v2k span{letter-spacing:.1em}
}

.v2main h2{font-family:var(--display);font-weight:600;font-size:11px!important;letter-spacing:.18em;text-transform:uppercase;line-height:1.4;margin:30px 0 12px}
.v2main .stats b,.v2main .stats strong{font-family:var(--display);font-weight:300}
.ptabs.v2pt{flex-wrap:nowrap;scrollbar-width:none}.ptabs.v2pt::-webkit-scrollbar{display:none}
@media (max-width:759px){.ptabs.v2pt{gap:18px}.ptabs.v2pt a{font-size:11px}}
.ptabs a,.ptabs button,.ptabs2,.ptabs2 button,.seg,.seg2,.seg button,.seg2 button,.snav a,.spfl,.stpill,.chip2,.v3tabs button,.qppay label,.mpfit,.aim-apps button,.dcard{border-radius:2px!important}
.ptabs:not(.v2pt) button.on,.ptabs2 button.on,.v3tabs button.on,.snav a.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.ptabs:not(.v2pt){gap:6px;border:0;background:transparent}
.ptabs:not(.v2pt) a,.ptabs:not(.v2pt) button{background:transparent;border:1px solid var(--line);color:var(--muted);letter-spacing:.02em;font-size:12.5px;text-transform:none}
.ptabs:not(.v2pt) a.on,.ptabs:not(.v2pt) button.on{background:var(--deep)!important;color:var(--deep-ink)!important;border-color:var(--deep)!important}

/* =====================================================================
   v57 — Brief kontraktor
   ===================================================================== */
.bfbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 16px}
.bfbar .sp,.bfst .sp{flex:1}
.bfbar>div{flex:1;min-width:240px}
.bfempty ol{margin:0;padding:6px 0 6px 20px;line-height:2;font-size:14px}
.bfgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.bfcard{display:flex;flex-direction:column;text-align:left;background:var(--paper);border:1px solid var(--line);padding:0;cursor:pointer;font:inherit;color:var(--ink)}
.bfcard:hover{border-color:var(--ink)}
.bfth{aspect-ratio:16/10;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--line)}
.bfth img{width:100%;height:100%;object-fit:contain}.bfth em{font-style:normal;font-size:12px;color:var(--muted)}
.bfcm{padding:12px 14px;display:block}.bfcm b{display:flex;gap:8px;align-items:center;font-weight:600;font-size:14px}
.bfcm i{font-style:normal;font-size:11px;background:var(--deep);color:var(--deep-ink);padding:2px 7px;letter-spacing:.06em}
.bfcm small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.bfhead{display:flex;gap:10px;margin-bottom:14px}
.bfhead input{font:inherit;border:0;border-bottom:1px solid var(--line);background:transparent;padding:6px 2px;color:var(--ink)}
.bfhead input:focus{outline:0;border-color:var(--ink)}
.bfcode{width:92px;font-weight:600!important;letter-spacing:.06em;font-size:16px!important}
.bfname{flex:1;min-width:0;font-family:var(--display)!important;font-size:22px!important;font-weight:500!important}
.bfed{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
@media (min-width:1000px){.bfed{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr)}}
.bfst{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px;min-height:32px}
.bfst label.b{cursor:pointer}
.bfdrop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;min-height:300px;border:1.5px dashed var(--pill);background:var(--paper);cursor:pointer;padding:20px;color:var(--ink)}
.bfdrop.sm{min-height:150px}.bfdrop b{font-size:15px;font-weight:600}.bfdrop span{font-size:13px;color:var(--muted)}.bfdrop small{font-size:12px;color:var(--muted);margin-top:6px}
.bfdrop:hover{border-color:var(--ink)}
.bfstage{position:relative;background:#fff;border:1px solid var(--line);line-height:0;user-select:none;-webkit-user-select:none;touch-action:none}
.bfstage img{display:block;width:100%;height:auto;pointer-events:none}
.bfstage .bfsvg{position:absolute;inset:0;width:100%;height:100%}
.bfstage.adding{cursor:crosshair;outline:2px solid #B04E45;outline-offset:2px}
.bfstage:not(.adding){touch-action:pan-y}
.bfstage.kp:not(.adding) .bfsvg{pointer-events:none}
.bfhint{margin:6px 0 0;font-size:12.5px}
.bfpins{margin-top:10px;border-top:1px solid var(--line)}
.bfpr{display:grid;grid-template-columns:26px 150px 1fr auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line)}
.bfn{width:22px;height:22px;display:grid;place-items:center;font-size:11px;font-weight:600;background:var(--deep);color:var(--deep-ink)}
.bfpr select,.bfpr input{min-width:0;font-size:13px;padding:7px 8px}
.bfinfo{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;margin:14px 0 6px}
.bfinfo .f{margin:0}
.bfmats{margin-bottom:14px}
.bfm{display:grid;grid-template-columns:34px 30px 1fr auto;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid var(--line)}
.bfsw{width:34px;height:34px;display:block;border:1px solid var(--line);cursor:pointer;position:relative;overflow:hidden}
.bfsw input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.bfk{font-size:11px;font-weight:600;background:#B04E45;color:#fff;text-align:center;padding:3px 0;margin-top:7px}
.bfmf{display:grid;gap:4px;min-width:0}.bfmf input{font-size:13px;padding:6px 8px;min-width:0}
.bfsp{flex:1;min-width:0;font-size:13px;padding:6px 8px}
@media (max-width:759px){.bfpr{grid-template-columns:24px 1fr auto}.bfpr input{grid-column:2 / 3}.bfname{font-size:18px!important}}
label.b{font-family:var(--sans);font-size:13px;font-weight:500;border:1px solid var(--line);padding:5px 13px;min-height:32px;display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--ink)}
label.b:hover{border-color:var(--ink)}

/* =====================================================================
   v58 — Sinkron 2 menit, curhat proyek, catatan pengembang
   ===================================================================== */
.sybar{display:flex;gap:16px;align-items:center;background:#2A201B;color:#F5EEE3;padding:16px 18px;margin:0 0 18px}
.sybar .syn{font-size:30px;font-weight:300;line-height:1;flex:none}
.sybar .syt{flex:1;min-width:0}.sybar .syt b{display:block;font-weight:600}.sybar .syt small{color:#C9B9A7;font-size:12.5px}
.sych{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.sych span{font-size:11px;padding:2px 8px;background:rgba(237,228,214,.14);color:#EDE4D6}
.sybar .b{background:#EDE4D6!important;color:#2A201B!important;border-color:#EDE4D6!important}
@media (max-width:640px){.sybar{flex-wrap:wrap}.sybar .b{width:100%;justify-content:center}}
#syov:empty{display:none}
.sywrap{z-index:800;align-items:center;padding:24px}
.sycard{width:min(660px,100%);background:var(--paper);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.35);display:flex;flex-direction:column;max-height:calc(100vh - 48px)}
.sytop{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--line)}
.syk{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.sypg{flex:1;display:flex;gap:3px}.sypg i{flex:1;height:4px;background:var(--soft)}.sypg i.d{background:var(--deep)}.sypg i.c{background:var(--ochre,#B07D3E)}
.sytop .v2x{background:none;border:0;cursor:pointer;color:var(--muted);padding:4px}.sytop .v2x .ic{width:18px;height:18px}
.sybody{padding:22px 24px 10px;overflow:auto}
.sykind{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;margin-bottom:12px}
.sykind.money{background:#F1E3CC;color:#80592A}.sykind.last{background:#E2E5D8;color:#4D5940}.sykind.data{background:var(--soft);color:var(--muted)}.sykind.why{background:#F4DDD8;color:#8E3830}
.syproj{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-bottom:6px}
.syq{font-size:21px;line-height:1.3;font-weight:500;margin-bottom:6px}
.sybody .note{margin:4px 0 0}
.syctx{margin:14px 0 4px;border:1px solid var(--line);background:var(--field);padding:14px;display:grid;gap:10px}
.sybr .r{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;margin-bottom:4px}.sybr .r b{font-weight:600;text-align:right}
.sybr .tr{height:8px;background:var(--soft);position:relative}.sybr .tr i{position:absolute;inset:0 auto 0 0}
.syv{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.5}
.syv.warn{background:#F4DDD8;color:#6E2A22}.syv.ok{background:#E2E5D8;color:#3F4C34}
.syans{display:grid;gap:8px;margin:14px 0 6px}.syans.g2{grid-template-columns:1fr 1fr}
.syans button{font:inherit;text-align:left;border:1px solid var(--line);background:var(--paper);padding:12px 14px;font-size:14.5px;display:flex;gap:10px;align-items:center;color:var(--ink);cursor:pointer}
.syans button:hover{border-color:var(--ink)}
.syans button small{display:block;color:var(--muted);font-size:12px;margin-top:1px}
.syans button.sel{border-color:var(--deep);box-shadow:inset 3px 0 0 var(--deep);background:var(--field)}
.syans .k{width:22px;height:22px;flex:none;border:1px solid var(--line);display:grid;place-items:center;font-size:11px;color:var(--muted)}
.syans button.sel .k{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.sybody textarea,.sybody input{font:inherit;width:100%;border:1px solid var(--line);background:var(--field);padding:10px 12px;font-size:14px;color:var(--ink);border-radius:0}
.symini{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:14px 0 6px}
.sytags{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.sytags button,.sytags span{font:inherit;font-size:12.5px;border:1px solid var(--line);padding:5px 10px;background:var(--paper);cursor:pointer;color:var(--ink)}
.sytags .on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}.sytags.ro span{cursor:default}
.sydev{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:10px 12px;border:1px dashed var(--pill);font-size:12.5px;color:var(--muted)}
.syfoot{display:flex;gap:8px;align-items:center;padding:12px 20px;border-top:1px solid var(--line)}.syfoot .sp{flex:1}
.syfoot .b[disabled]{opacity:.4;pointer-events:none}
.syscore{display:flex;align-items:flex-end;gap:16px;margin:14px 0}.syscore small{display:block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.syscore b{font-size:52px;font-weight:300;line-height:1}.syscore>span{color:var(--muted);font-size:13px;padding-bottom:6px}
.sytrend{display:flex;gap:6px;align-items:flex-end;height:70px;margin-bottom:12px}.sytrend div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;gap:4px}.sytrend i{background:var(--deep);display:block}.sytrend small{font-size:10px;color:var(--muted);text-align:center}
.sylog{border-top:1px solid var(--line)}.sylog div{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px;align-items:flex-start}
.sylog .tg{font-size:10.5px;font-weight:600;padding:2px 7px;flex:none;margin-top:1px;background:var(--soft);color:var(--muted);min-width:64px;text-align:center}
.sycta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}.sycta .note{margin:0}
body.syopen{overflow:hidden}
@media (max-width:640px){.sywrap{padding:0;align-items:stretch}.sycard{max-height:none;height:100%;width:100%}.syq{font-size:19px}.syans.g2{grid-template-columns:1fr}.sybody{padding:18px 16px 10px}.syfoot{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}}
.dvgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
@media (min-width:1100px){.dvgrid{grid-template-columns:minmax(0,1fr) 300px}}
.dvlist{padding:4px 14px;overflow-x:auto}
.dvt{width:100%;border-collapse:collapse}.dvt th{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);font-weight:600}
.dvt td{padding:10px 6px;border-bottom:1px solid var(--line);vertical-align:top;font-size:13px}.dvt td b{font-weight:600}
.dvt td.nw{white-space:nowrap;color:var(--muted)}.dvt td.nw small{display:block;font-size:11px}
.dvt input,.dvt select{font-size:12.5px;padding:5px 7px;min-width:120px}
.dvt tr.done td{opacity:.5}
.dvtag{display:inline-block;font-size:11px;padding:2px 7px;background:#F1E3CC;color:#80592A;margin:0 4px 4px 0}
.dvpat h3{text-transform:uppercase;margin-bottom:8px}
.dvadd{margin-bottom:16px}
@media (max-width:759px){.dvt thead{display:none}.dvt tr{display:block;padding:10px 0;border-bottom:1px solid var(--line)}.dvt td{display:block;border:0;padding:3px 0}}

/* =====================================================================
   v59 — tampilan sederhana + perbaikan kontras mode gelap
   ===================================================================== */
:root{--field:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--field:#2A221D;--lime:#D8C49E;--lime-soft:#2B2A1C;--rose:#E7C2B1}}
:root[data-theme="dark"]{--field:#2A221D;--lime:#D8C49E;--lime-soft:#2B2A1C;--rose:#E7C2B1}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .v56more{color:#F0A99F}
  :root:not([data-theme="light"]) .chip.revisi{color:#F0A99F;border-color:#E28F82;box-shadow:inset 0 0 0 1px #E28F82}
  :root:not([data-theme="light"]) .chip.proses,:root:not([data-theme="light"]) .chip.review{color:#2A201B}
  :root:not([data-theme="light"]) .v2k.alert,:root:not([data-theme="light"]) .v2k.alert span,:root:not([data-theme="light"]) .v2k.alert b{color:#5A1E14}
  :root:not([data-theme="light"]) .tkst.b1{color:#5A3E1C}}
:root[data-theme="dark"] .v56more{color:#F0A99F}
:root[data-theme="dark"] .chip.revisi{color:#F0A99F;border-color:#E28F82;box-shadow:inset 0 0 0 1px #E28F82}

/* sidebar: tanpa daftar pin, akun di bawah */
.v2side .v2foot{gap:6px}
.v2side .v2me{color:#EDE4D6;text-decoration:none}
.v59acc{display:flex;gap:4px;flex-wrap:wrap}
.v59acc a,.v59acc button{font:inherit;font-size:12px;color:#A9998A;background:none;border:0;padding:4px 6px;cursor:pointer;text-decoration:none}
.v59acc a:hover,.v59acc button:hover{color:#fff}

/* Perlu perhatian: satu bar */
.v59att{display:flex;gap:16px;align-items:center;background:#2A201B;color:#F5EEE3;padding:14px 18px;margin:0 0 18px}
.v59n{font-size:28px;font-weight:300;line-height:1;flex:none}
.v59t{flex:1;min-width:0}.v59t b{display:block;font-weight:600}.v59t small{display:block;color:#C9B9A7;font-size:12.5px;line-height:1.45}
.v59ab{display:flex;gap:8px;flex:none}
.v59att .b{background:transparent!important;color:#EDE4D6!important;border-color:rgba(237,228,214,.35)!important}
.v59att .b.lt{background:#EDE4D6!important;color:#2A201B!important;border-color:#EDE4D6!important}
@media (max-width:640px){.v59att{flex-wrap:wrap}.v59ab{width:100%}.v59ab .b{flex:1;justify-content:center}}

/* Hari ini: proyek sekilas + Lainnya */
.v2cb .v2ag{order:0}
.v59gl .blk-t{text-decoration:none;color:var(--muted);font-size:12px}
.v59gr{display:grid;grid-template-columns:minmax(0,150px) 1fr 46px;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13px}
.v59gr:last-child{border-bottom:0}
.v59gr .nm{display:flex;gap:8px;align-items:center;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.v59gr .pc{text-align:right;font-size:12px;color:var(--muted)}.v59gr .pc.late{color:var(--warn)}
.v59more{margin:4px 0 18px;border:1px dashed var(--pill)}
.v59more summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 16px;color:var(--muted);font-size:13px}
.v59more summary::-webkit-details-marker{display:none}
.v59more summary span{font-weight:600;color:var(--ink);margin-right:4px}
.v59more summary span::after{content:" \25B8"}.v59more[open] summary span::after{content:" \25BE"}
.v59more summary em{font-style:normal;font-size:12px;padding:3px 8px;background:var(--soft);color:var(--ink)}
.v59mb{padding:0 12px 12px;display:grid;gap:12px}

/* Papan proyek */
.v59f{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.v59f button{font:inherit;font-size:12.5px;padding:6px 12px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.v59f button b{font-weight:600;margin-left:6px}
.v59f button.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.v59b{background:var(--paper);border:1px solid var(--line)}
.v59h,.v59r{display:grid;grid-template-columns:minmax(170px,1.4fr) minmax(150px,1.1fr) minmax(170px,1.4fr) minmax(110px,.9fr) 130px 110px 22px;gap:16px;align-items:center;padding:0 18px}
.v59b.nomoney .v59h,.v59b.nomoney .v59r{grid-template-columns:minmax(170px,1.4fr) minmax(150px,1.1fr) minmax(170px,1.4fr) minmax(110px,.9fr) 110px 22px}
.v59h{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600;padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.v59r{padding-top:14px;padding-bottom:14px;border-bottom:1px solid var(--line);position:relative;cursor:pointer}
.v59r:last-child{border-bottom:0}
.v59r:hover{background:rgba(42,32,27,.025)}
.v59r::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.v59r.r::before{background:#B04E45}.v59r.o::before{background:#B07D3E}.v59r.g::before{background:#6E7B5E}
.v59r small{display:block;font-size:12px;color:var(--muted);margin-top:1px}
.v59r .late,.v59r small.late{color:var(--warn)}
.c-pn{display:flex;gap:10px;align-items:flex-start;min-width:0}.c-pn .v2dot{margin-top:6px}.c-pn b{display:block;font-weight:600;font-size:14.5px}
.c-nx b{display:block;font-weight:500;font-size:13.5px}
.c-du b{display:block;font-weight:500}
.c-ch{color:var(--muted);text-align:center}
.v59pm{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted);margin-top:5px}
.v59pill{display:inline-block;font-size:11.5px;padding:2px 8px;font-weight:500}
.v59pill.g{background:#E2E5D8;color:#4D5940}.v59pill.o{background:#F1E3CC;color:#80592A}.v59pill.r{background:#F4DDD8;color:#8E3830}.v59pill.n{background:var(--soft);color:var(--muted)}
.v59x{grid-column:1/-1;margin:12px -18px -14px;padding:16px 18px 16px 31px;background:var(--alt);border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;cursor:default}
.v59mx{display:grid;gap:4px 6px;font-size:12px;align-items:center}
.v59mx .h{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center}
.v59mx .rn{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.v59mx .c{height:14px;background:var(--soft)}.v59mx .c.d{background:var(--deep)}.v59mx .c.p{background:#B07D3E}.v59mx .c.a{background:#B04E45}.v59mx .c.n{background:transparent;border:1px dashed var(--line)}
.v59lg2{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--muted);margin-top:10px}.v59lg2 i{display:inline-block;width:10px;height:10px;margin-right:5px;vertical-align:-1px;background:var(--soft)}.v59lg2 i.d{background:var(--deep)}.v59lg2 i.p{background:#B07D3E}.v59lg2 i.a{background:#B04E45}
.v59qa{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.v59lg{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:10px}.v59lg span{display:inline-block;width:10px;height:10px;margin-left:6px}.v59lg span:first-child{margin-left:0}.v59lg .r{background:#B04E45}.v59lg .o{background:#B07D3E}.v59lg .g{background:#6E7B5E}
@media (max-width:1100px){.v59h{display:none}.v59b{background:transparent;border:0}
  .v59r,.v59b.nomoney .v59r{grid-template-columns:1fr auto;gap:10px 14px;background:var(--paper);border:1px solid var(--line);margin-bottom:10px;padding:14px 14px 14px 17px}
  .v59r:last-child{border-bottom:1px solid var(--line)}
  .c-st,.c-nx{grid-column:1/-1}.c-bl{grid-column:1/2}.c-du{grid-column:2/3;text-align:right}.c-mo{grid-column:1/-1}.c-mo:empty{display:none}.c-ch{display:none}
  .c-pn{grid-column:1/-1}
  .v59x{grid-template-columns:1fr;margin:6px -14px -14px -17px;padding:14px}}

/* =====================================================================
   v60 — Pustaka material
   ===================================================================== */
.mlth{display:inline-grid;place-items:center;width:44px;height:44px;flex:none;background:#D9CDBD center/cover no-repeat;border:1px solid var(--line);color:#5F5249;font-weight:600;font-size:15px}
.mlth.sm{width:28px;height:28px;font-size:11px}.mlth.lg{width:64px;height:64px;font-size:20px}
#mlov:empty{display:none}
.mlwrap{z-index:850;align-items:center;padding:24px}
.mlbox{width:min(720px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--paper);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.mlhd{display:flex;align-items:flex-start;gap:12px;padding:16px 20px 10px}.mlhd b{display:block;font-size:18px;font-weight:600;margin-top:4px}.mlhd .v2x{margin-left:auto;background:none;border:0;color:var(--muted);cursor:pointer}.mlhd .v2x .ic{width:18px;height:18px}
.mlsr{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--field);padding:0 12px;margin:0 20px}
.mlsr .ic{width:17px;height:17px;color:var(--muted);flex:none}.mlsr input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;padding:11px 0;font-size:15px;color:var(--ink)}
.mlcat{display:flex;gap:6px;overflow-x:auto;padding:10px 20px 4px;scrollbar-width:none}.mlcat::-webkit-scrollbar{display:none}
.mlcat button{font:inherit;font-size:12.5px;white-space:nowrap;padding:5px 11px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.mlcat button.on{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.mllist{overflow:auto;padding:4px 20px 14px;flex:1}
.mlg{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:14px 0 8px}
.mlgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.mlc{display:flex;gap:10px;align-items:center;text-align:left;font:inherit;border:1px solid var(--line);background:var(--paper);padding:8px;cursor:pointer;color:var(--ink)}
.mlc:hover{border-color:var(--ink)}
.mlc.on{border-color:var(--deep);box-shadow:inset 3px 0 0 var(--deep);background:var(--field)}
.mlt{flex:1;min-width:0}.mlt b{display:block;font-weight:600;font-size:13.5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.mlt small{display:block;font-size:12px;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.mlt em{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.mlt em i,.mluse i,.mluse a i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px;vertical-align:0}
.mlck{width:22px;height:22px;border:1px solid var(--line);display:grid;place-items:center;font-size:12px;flex:none}
.mlc.on .mlck{background:var(--deep);color:var(--deep-ink);border-color:var(--deep)}
.mlnew{display:flex;gap:8px;align-items:center;width:100%;margin-top:12px;font:inherit;font-size:13.5px;border:1px dashed var(--pill);background:transparent;padding:12px;cursor:pointer;color:var(--ink);text-align:left}
.mlnew .ic{width:16px;height:16px}
.mlft{display:flex;gap:10px;align-items:center;padding:12px 20px;border-top:1px solid var(--line)}.mlft .sp{flex:1}.mlft a{font-size:13px;color:var(--muted)}
.mlft .b[disabled]{opacity:.4;pointer-events:none}
body.mlopen{overflow:hidden}
@media (max-width:640px){.mlwrap{padding:0;align-items:stretch}.mlbox{max-height:none;height:100%;width:100%}.mlgrid{grid-template-columns:1fr}.mlft{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}
.mlrow{grid-column:1/-1;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.mlchips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:8px}
.mlchip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--field);padding:4px 6px 4px 4px;font-size:13px;max-width:100%}
.mlchip small{display:block;font-size:11px;color:var(--muted)}
.mlchip button{background:none;border:0;cursor:pointer;color:var(--muted);font-size:16px;padding:0 4px}
.mluse{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--muted);margin-top:6px}
.mluse a{color:var(--ink);text-decoration:none}.mluse a:hover{text-decoration:underline}.mluse .more{color:var(--muted)}
.mlbar{display:grid;gap:10px;margin-bottom:16px}.mlbar .mlsr{margin:0;max-width:520px}.mlbar .mlcat{padding:0}
.mlpage{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;align-items:start}
.mlcard{background:var(--paper);border:1px solid var(--line);padding:12px 14px}
.mlcard.open{grid-column:1/-1}
.mlhead{display:flex;gap:12px;align-items:center;width:100%;text-align:left;font:inherit;background:none;border:0;padding:0;cursor:pointer;color:var(--ink)}
.mlhead .mlt b{font-size:15px}
.mlcard .mluse{margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}
.mled{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .spphoto{background:var(--field)!important}}
:root[data-theme="dark"] .spphoto{background:var(--field)!important}
/* v62 — bingkai brief: label bisa keluar dari gambar */
.bfstage.fr{aspect-ratio:1600/1250;line-height:0}
.bfstage.fr .bfimg,.bfstage.fr .bfsvg{position:absolute;inset:0;width:100%;height:100%}
.bfstage.fr .bfimg{pointer-events:none}

/* v63 — status, ukuran, tabel brief */
.bfmeta2{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px;margin:-4px 0 16px}
.bfsz{display:flex;flex-direction:column;gap:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.bfsz input{font:inherit;font-size:15px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--ink);border:1px solid var(--line);background:var(--field);padding:8px 10px;width:230px;font-variant-numeric:tabular-nums}
.bfseg{display:inline-flex;border:1px solid var(--line);background:var(--field)}
.bfseg button{font:inherit;font-size:13px;padding:8px 13px;border:0;background:transparent;color:var(--muted);cursor:pointer;border-right:1px solid var(--line)}
.bfseg button:last-child{border-right:0}
.bfseg button.on{background:var(--deep);color:var(--deep-ink)}
.bfseg button.on.s-baru{background:#B04E45;color:#fff}.bfseg button.on.s-modif{background:#9A6B1E;color:#fff}.bfseg button.on.s-eks{background:#6E6156;color:#fff}
.bfvbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 12px}
.bfcnt{display:flex;gap:14px;font-size:13px;color:var(--muted)}.bfcnt i{display:inline-block;width:10px;height:10px;margin-right:6px;vertical-align:-1px}
.bfcnt .s-baru i{background:#B04E45}.bfcnt .s-modif i{background:#C08A2E}.bfcnt .s-eks i{border:1.5px dashed #8A7B6E}
.bftab-w{overflow-x:auto;border:1px solid var(--line);background:var(--paper)}
.bftab{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px}
.bftab th{text-align:left;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:10px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.bftab td{padding:4px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.bftab tr:last-child td{border-bottom:0}
.bftab td:first-child{padding-left:12px;white-space:nowrap;box-shadow:inset 3px 0 0 #B04E45}
.bftab tr.s-modif td:first-child{box-shadow:inset 3px 0 0 #C08A2E}.bftab tr.s-eks td:first-child{box-shadow:inset 3px 0 0 #8A7B6E}
.bftab tr.s-eks td{color:var(--muted)}
.bftab input,.bftab select{width:100%;min-width:0;font:inherit;font-size:13.5px;border:1px solid transparent;background:transparent;color:var(--ink);padding:7px 6px}
.bftab input:hover,.bftab select:hover{border-color:var(--line)}.bftab input:focus,.bftab select:focus{border-color:var(--ink);outline:0;background:var(--field)}
.bftab input.q{width:52px;text-align:center}
.bftab td:nth-child(4) input{font-variant-numeric:tabular-nums;min-width:150px}
.bftab .ib{background:none;border:0;color:var(--muted);cursor:pointer;padding:6px}
.bfstc{display:inline-block;font-style:normal;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-left:8px;padding:2px 6px;vertical-align:2px;color:#fff;background:#B04E45}
.bfstc.s-modif{background:#9A6B1E}.bfstc.s-eks{background:transparent;color:var(--muted);border:1px dashed var(--muted)}
@media (max-width:640px){.bfsz input{width:100%}.bfsz{flex:1 1 100%}}
.bftab td.th{width:76px;padding:4px 4px}
.bfthm{display:block;width:72px;height:50px;padding:0;border:1px solid var(--line);background:#fff;cursor:pointer}
.bfthm img{width:100%;height:100%;object-fit:contain;display:block}
.bfthm em{font-style:normal;color:#8A7B6E;font-size:12px}
.bfthm:hover{border-color:var(--ink)}
.bfaic{display:inline-block;margin-left:6px;font-size:11px;padding:1px 7px;background:var(--deep);color:var(--deep-ink);font-weight:600}
.bfopt{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 12px}.bfopt .note{margin:0}
/* v67 — Dropbox */
.dbxp{margin-bottom:16px}.dbxh{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:6px}.dbxh b{font-size:15px}
.dbxpath{font-family:ui-monospace,Menlo,monospace;font-size:12px;margin:0 0 10px;word-break:break-all}
.dbxpre{display:grid;gap:2px;margin:10px 0 12px;font-size:13px;color:var(--muted)}.dbxpre code{font-size:12px;color:var(--ink);word-break:break-all}.dbxpre span{padding-left:16px}
.dbxlist{border-top:1px solid var(--line)}.dbxr{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.dbxn{flex:1;min-width:180px;display:flex;align-items:center;gap:10px;background:none;border:0;padding:6px 0;font:inherit;color:var(--ink);cursor:pointer;text-align:left}
.dbxn small{color:var(--muted);margin-left:auto;font-size:12px}.dbxi{font-size:11px;font-weight:700;letter-spacing:.06em;background:var(--field);border:1px solid var(--line);padding:3px 6px;color:var(--muted)}
.dbxr label.b.on{opacity:.6;pointer-events:none}
.dbxfiles{padding:4px 0 10px 40px;border-bottom:1px solid var(--line)}.dbxf{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:4px 0}.dbxf small{color:var(--muted);white-space:nowrap}
.dbxsteps{padding-left:18px;display:grid;gap:12px;margin:10px 0}.dbxsteps li{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.bfarea{margin:0 0 14px}.bfachips{margin:8px 0 10px;flex-wrap:wrap}.bfarea .bfstage{max-height:none}
.bfarea .bfstage{max-width:min(760px,100%);margin:0 auto}
.dbxf{align-items:center}.dbxf span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dbxdel{font:inherit;font-size:12px;border:1px solid var(--line);background:transparent;color:var(--muted);padding:3px 8px;cursor:pointer}
.dbxdel:hover,.dbxdel.on{border-color:#B04E45;color:#B04E45}
/* v70 — file manager */
.fmwrap{padding:16px 18px}
.fm{position:relative;border:1px solid var(--line);background:var(--paper);margin-top:10px}
.fmbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--field)}
.fmcrumb{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0;font-size:13.5px}
.fmcrumb button{font:inherit;background:none;border:0;padding:4px 6px;color:var(--ink);cursor:pointer;display:inline-flex;gap:6px;align-items:center;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fmcrumb button:last-child{font-weight:600}.fmcrumb button:hover{text-decoration:underline}.fmcrumb span{color:var(--muted)}
.fmcrumb .ic,.fmf .ic{width:15px;height:15px;flex:none}
.fmtools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.fmsrch{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--paper);padding:0 8px}.fmsrch .ic{width:14px;height:14px;color:var(--muted)}
.fmsrch input{border:0!important;background:transparent!important;box-shadow:none!important;padding:7px 0;width:160px;font-size:13px;color:var(--ink)}
.fmtools select{font:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.fmview button{padding:6px 10px;font-size:12.5px}
.fmbody{display:grid;grid-template-columns:230px 1fr;min-height:340px}
.fmside{border-right:1px solid var(--line);padding:8px;display:flex;flex-direction:column;gap:2px;background:var(--field)}
.fmf{display:flex;align-items:center;gap:8px;font:inherit;font-size:13px;text-align:left;background:none;border:0;padding:8px;cursor:pointer;color:var(--ink)}
.fmf span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmf small{color:var(--muted);font-size:11.5px}.fmf i{font-style:normal;color:#B04E45;font-size:12px}
.fmf:hover{background:var(--paper)}.fmf.on{background:var(--deep);color:var(--deep-ink)}.fmf.on small{color:inherit;opacity:.75}.fmf.on i{color:inherit}
.fmmain{min-width:0;padding:6px 0}
.fmempty{padding:48px 20px;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:6px;align-items:center}.fmempty b{color:var(--ink)}
.fmreq{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:6px 12px 8px;padding:8px 10px;background:var(--field);font-size:12.5px;color:var(--muted);border-left:3px solid #B04E45}
.fmprog{position:relative;margin:6px 12px 8px;padding:8px 10px;background:var(--field);font-size:12.5px;overflow:hidden}.fmprog span{position:relative;z-index:1}.fmprog i{position:absolute;left:0;top:0;bottom:0;background:rgba(176,78,69,.18);transition:width .2s}
.fmhd,.fmr{display:grid;grid-template-columns:minmax(0,1fr) 90px 110px 44px;gap:10px;align-items:center;padding:0 12px}
.fmhd{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;padding-top:6px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.fmr{border-bottom:1px solid var(--line);min-height:48px}.fmr:hover{background:var(--field)}.fmr.act{grid-template-columns:minmax(0,1fr);padding-bottom:8px}
.fmn{display:flex;align-items:center;gap:10px;min-width:0;font:inherit;text-align:left;background:none;border:0;padding:8px 0;cursor:pointer;color:var(--ink)}
.fmn>span{min-width:0}.fmn b{display:block;font-weight:500;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmn small{display:block;color:var(--muted);font-size:11.5px}
.fms,.fmd{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.fmic{width:34px;height:34px;flex:none;display:grid;place-items:center;font-size:9px;font-weight:700;letter-spacing:.04em;color:#fff;background:#8A7B6E}
.fmic.pdf{background:#B04E45}.fmic.img{background:#5F7A6B}.fmic.cad{background:#3A4E61}.fmic.xls{background:#4E7A4A}.fmic.doc{background:#3F5E8C}.fmic.zip{background:#6E5F54}.fmic.vid{background:#7A5A8C}
.fmic.fold{background:transparent;color:#B08A62}.fmic.fold .ic{width:28px;height:28px;fill:rgba(176,138,98,.25)}
.fmdots{font:inherit;font-size:18px;background:none;border:0;cursor:pointer;color:var(--muted);padding:6px}
.fmmenu{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:4px 0 2px}
.fmmenu button,.fmmenu select{font:inherit;font-size:12.5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:5px 10px;cursor:pointer}
.fmmenu button.dang{color:#B04E45;border-color:#E3C1BB}.fmmenu button:hover{border-color:var(--ink)}
.fmgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:10px 12px}
.fmc{border:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column}
.fmc.act{grid-column:span 2}
.fmcth{aspect-ratio:4/3;display:grid;place-items:center;background:var(--field);border:0;cursor:pointer;padding:0;overflow:hidden}
.fmcth img{width:100%;height:100%;object-fit:cover}.fmcth .fmic{width:48px;height:48px;font-size:11px}
.fmcm{padding:8px 8px 2px}.fmcm b{display:block;font-size:12.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmcm small{font-size:11px;color:var(--muted)}
.fmc .fmdots{align-self:flex-end;padding:0 8px 4px}.fmc .fmmenu{padding:4px 8px 8px}
.fmdropov{display:none;position:absolute;inset:0;background:rgba(176,78,69,.08);border:2px dashed #B04E45;align-items:center;justify-content:center;font-size:15px;color:var(--ink);pointer-events:none}
.fm.drag .fmdropov{display:flex}
@media (max-width:760px){.fmbody{grid-template-columns:1fr}.fmside{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.fmf{white-space:nowrap;flex:none}.fmf span{overflow:visible}
  .fmhd{display:none}.fmr{grid-template-columns:minmax(0,1fr) auto 36px}.fmd{display:none}.fmsrch input{width:120px}}
/* v71 */
.phup{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.phup .note{margin:0;flex:1;min-width:240px}
.phbig{padding:14px 20px;font-size:15px}
.tkundo{border-color:var(--warn)!important;color:var(--warn)!important;background:transparent!important}
#cuov textarea{width:100%;font:inherit;font-size:15px;padding:12px;border:1px solid var(--line);background:var(--field);color:var(--ink);margin-top:10px}
.cufacts{list-style:none;padding:0;margin:6px 0 10px;display:grid;gap:6px}.cufacts li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:var(--field);border-left:3px solid var(--bronze);font-size:13.5px}.cufacts li.warn{border-color:var(--warn)}.cufacts li.ok{border-color:var(--muted)}.cufacts span{color:var(--muted);text-align:right}
.cupri{margin:6px 0 10px;padding-left:20px;display:grid;gap:6px}.cupri li small{display:block;color:var(--muted);font-size:12.5px}.cupri a{color:var(--ink)}
.cusug{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.cusug>div{flex:1}.cusug small{display:block;color:var(--muted);font-size:12.5px}.cusug .b.on{background:var(--deep);color:var(--deep-ink)}
/* v72–v73: kotak file tim + editor harga (pakai token tema, aman untuk mode gelap) */
.lkbox{border:1px solid var(--line);padding:16px 18px;margin:14px 0;background:var(--alt)}
.lkhd{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.lkhd b{font-size:15px;color:var(--ink)}.lkhd .sub{font-size:12px}
.lkbox .note a,.lkwarn a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
.lkrow{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:start;margin:10px 0}
.lklbl{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-top:8px}
.lkchips{display:flex;flex-wrap:wrap;gap:6px}
.lkchip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 12px;font-family:var(--sans);font-size:12.5px;cursor:pointer;color:var(--muted);transition:all .15s}
.lkchip:hover{color:var(--ink);border-color:var(--ink)}
.lkchip.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.lkchip:disabled{opacity:.5;cursor:default}
.lkwarn{margin:-2px 0 8px 132px!important;font-size:12.5px;color:var(--warn)}
.lklinks{margin:0 0 4px 132px;display:grid}
.lkl,.lkf{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid var(--line)}
.lkl>span:first-child,.lkf>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:var(--ink)}
.lkupb{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lkpath{flex:1;min-width:180px;font-size:13px;background:var(--paper);border:1px solid var(--line);padding:7px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}
.lkbtns{display:flex;gap:6px}
.lkact{margin-top:12px;gap:6px;flex-wrap:wrap}
.lkfiles{margin-top:8px}
.lkf small{color:var(--muted);white-space:nowrap;font-size:12px}
.lkman{margin-top:12px;font-size:13px}.lkman summary{cursor:pointer;color:var(--muted)}.lkman summary:hover{color:var(--ink)}
@media(max-width:640px){.lkrow{grid-template-columns:minmax(0,1fr);gap:6px}.lkupb{min-width:0}.lklinks,.lkwarn{margin-left:0!important}.lklbl{padding-top:0}.lkpath{flex-basis:100%}}
.v3lk{border:1px solid var(--line);padding:14px 16px;margin:12px 0;background:var(--alt)}
.v3lkh{font-weight:600;margin-bottom:8px;color:var(--ink)}
.v3lkr{margin:10px 0}.v3lkr small{display:block;color:var(--muted);margin-bottom:6px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase}
.v3lkb{display:flex;flex-wrap:wrap;gap:6px}
.v3up{display:inline-flex;font-size:15px;padding:12px 20px}
.v3lkr p.sub{margin:8px 0 0;font-size:13px}
.v3chg{display:block;font-size:11.5px;color:var(--warn);margin-top:2px;font-weight:400}
/* editor harga */
.tkpe .tkln{align-items:center;gap:10px;min-height:44px}
.tkpe .tkln>span:first-child{flex:1;min-width:0}
.tkpe .tkln small{font-size:12px}
.tkinw{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--muted);font-size:13px}
.tkpin{font-family:var(--sans);font-size:15px;padding:7px 10px;border:1px solid var(--line);background:var(--field);color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;width:140px;border-radius:0}
.tkpin.sm{width:64px}.tkpin.md{width:110px}
.tkpin:focus{outline:2px solid var(--ink);outline-offset:-1px}
.tkpin::placeholder{color:var(--muted);opacity:.7}
.tkfx{border-top:1px solid var(--line);padding-top:10px;margin-top:6px}
.tkqk{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.tkplog{margin:10px 0 0;font-size:12.5px;color:var(--muted)}.tkplog b{color:var(--ink)}
.tkrbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--line);padding:14px 18px;margin:0 0 16px;background:var(--paper)}
.tkrbar b{color:var(--ink)}.tkrbar small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.tkstale{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-left:3px solid var(--warn);background:var(--alt);padding:10px 12px;margin:0 0 14px;font-size:13px;color:var(--ink)}
.rpv{display:block;font-size:12px;color:var(--muted);margin-top:4px;letter-spacing:0;text-transform:none}
@media(max-width:640px){.tkpe .tkln{flex-wrap:wrap}.tkpe .tkinw{margin-left:auto}}
@media (max-width:759px){.pact .b[data-cu="open"]{display:inline-flex}.pact{flex-wrap:wrap}}
@media(max-width:640px){.phup .b{width:100%;justify-content:center}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tkex{color:var(--ink)}}
:root[data-theme="dark"] .tkex{color:var(--ink)}
/* v74: jenis multi + brief bebas + tanya-jawab */
.tkkinds{margin:14px 0 4px}
.tkkl{font-size:13px;color:var(--muted);margin-bottom:8px}.tkkl b{color:var(--ink);font-weight:500}
.tkkg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tkkc{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:10px 12px;font-family:var(--sans);font-size:14px;cursor:pointer;min-height:44px}
.tkkc i{width:18px;height:18px;flex:0 0 18px;border:1.5px solid var(--muted);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:11px}
.tkkc.on{border-color:var(--ink);background:var(--alt)}.tkkc.on i{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.tkkc:disabled{opacity:.6;cursor:default}
.tkksum{margin:10px 0 0;padding:9px 12px;border-left:3px solid var(--bronze);background:var(--alt);font-size:13px}
@media(max-width:640px){.tkkg{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tkqn{font-size:11px;padding:2px 8px;background:var(--warn);color:var(--paper);white-space:nowrap}
.tbbox{border:1px solid var(--line);background:var(--alt);padding:16px 18px;margin:14px 0}
.tbhd{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}.tbhd b{font-size:15px}.tbhd .sub{font-size:12px}
.tbk{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.tbraw{display:block}.tbraw textarea{display:block;width:100%;margin-top:6px;font-family:var(--sans);font-size:15px;line-height:1.55;padding:12px 14px;border:1px solid var(--line);background:var(--field);color:var(--ink);border-left:4px solid var(--bronze);resize:vertical}
.tbtip{font-size:12.5px;color:var(--muted);line-height:1.55;margin:8px 0 0}.tbtip b{color:var(--ink);font-weight:500}
.tbtools{margin-top:12px;gap:6px;flex-wrap:wrap;align-items:center}.tbtools .sp{flex:1}
.tbtools .b.rec{background:var(--warn);border-color:var(--warn);color:var(--paper)}
.tbvoice{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.tbvoice audio{height:36px;max-width:100%}
.tbmarks{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.tbm{border:1px solid var(--line);background:var(--paper);padding:4px;cursor:pointer;display:flex;flex-direction:column;gap:3px;color:var(--ink)}.tbm small{font-size:11px;color:var(--muted)}
.tbimg{position:relative;display:inline-block;line-height:0}.tbimg img{display:block;max-width:100%}
.tbimg.th img{width:120px;height:84px;object-fit:cover}
.tbimg i{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;background:var(--warn);color:#fff;border:2px solid #fff;font-style:normal;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 1px 4px rgba(0,0,0,.3)}
.tbimg.th i{width:16px;height:16px;font-size:9px;border-width:1px}
.tbrapi{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.tbrapi textarea{font-family:var(--sans);line-height:1.5}
.tbask{border-left:3px solid var(--bronze);background:var(--paper);padding:10px 12px;font-size:13px;margin-top:8px}.tbask ul{margin:6px 0 0;padding-left:18px}
.tbqa{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.tbm2{background:var(--paper);border:1px solid var(--line);padding:8px 11px;margin-top:6px;font-size:13.5px;line-height:1.5;max-width:88%;color:var(--ink)}
.tbm2.me{margin-left:auto;background:var(--soft)}.tbm2 small{display:block;color:var(--muted);font-size:11px;margin-bottom:2px}
.tbqi{display:flex;gap:8px;margin-top:10px;align-items:flex-end}.tbqi textarea{flex:1;font-family:var(--sans);font-size:14px;padding:8px 10px;border:1px solid var(--line);background:var(--field);color:var(--ink);resize:vertical}
#tbov{position:fixed;inset:0;z-index:300;background:rgba(20,16,13,.6);display:flex;align-items:center;justify-content:center;padding:16px}#tbov[hidden]{display:none}
.tbsheet{background:var(--paper);color:var(--ink);width:min(1100px,100%);max-height:94vh;display:flex;flex-direction:column}
.tbsh{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tbsh .sp{flex:1}.tbsh .sub{font-size:12.5px}
.tbsb{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;padding:16px 18px;overflow:auto}
.tbstage{cursor:crosshair;background:var(--alt);display:flex;justify-content:center;align-items:flex-start}.tbstage .tbimg img{max-height:72vh;width:auto}
.tbpins{margin:0;padding-left:22px;display:grid;gap:8px;align-content:start}.tbpins li{display:flex;gap:6px;align-items:center}.tbpins input{flex:1;font-family:var(--sans);font-size:14px;padding:8px 10px;border:1px solid var(--line);background:var(--field);color:var(--ink)}
@media(max-width:760px){.tbsb{grid-template-columns:1fr}}
/* portal tim */
.v3tb{margin:14px 0}
.v3q{border-left:4px solid #8C6D48;background:#EFE7DC;padding:12px 14px}
.v3qt{font-style:italic;font-size:15px;line-height:1.55;color:#2E241E}
.v3qb{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:12px;color:#6E6359;flex-wrap:wrap}.v3qb audio{height:34px;max-width:100%}
.v3sec{margin-top:14px}.v3sec h4{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#6E6359;margin:0 0 6px}.v3sec p,.v3sec ul{margin:0;font-size:14px;line-height:1.55}.v3sec ul{padding-left:18px}
.v3chk{display:grid;gap:6px}.v3chk label{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid #DCD2C4;background:#fff;font-size:14px;cursor:pointer;min-height:44px}
.v3chk label.on{background:#EEF0E8;border-color:#B9C0A8}.v3chk label.on span{text-decoration:line-through;color:#6E6359}.v3chk input{width:18px;height:18px;accent-color:#5F6B4E}
.v3dont{background:#F6E5E0;border-left:4px solid #A3412F;padding:10px 12px;font-size:14px}
.v3mark{margin-top:8px}.v3mark .tbimg img{max-height:420px}.v3mark ol{margin:8px 0 0;padding-left:22px;font-size:14px;line-height:1.55}
.v3tb .tbqa{border-top-color:#DCD2C4}.v3tb .tbk{color:#6E6359}.v3tb .tbm2{background:#fff;border-color:#DCD2C4;color:#2E241E}.v3tb .tbm2.me{background:#EFE7DC}.v3tb .tbm2 small{color:#6E6359}.v3tb .tbqi textarea{background:#fff;border-color:#DCD2C4;color:#2E241E}
.tbpins{padding-left:0;list-style:none}.tbn{width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:var(--warn);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
/* v75 timeline order (gaya garis dimensi) + tambahan brief */
:root{--esp:#2B211B;--espT:#F3ECE2;--espM:#CDBFAE;--espL:#5A4A3F;--red:#C23B2A;--redbg:#FBEDE9;--sage:#66724F}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--esp:#14100D;--espL:#4A3E35;--red:#E2705F;--redbg:#3A2420;--sage:#8A9A6E}}
:root[data-theme="dark"]{--esp:#14100D;--espL:#4A3E35;--red:#E2705F;--redbg:#3A2420;--sage:#8A9A6E}
.tlsheet{background:var(--paper);border:1px solid var(--line);margin:0 0 18px;position:relative;overflow:hidden}
.tlhead{background:var(--esp);color:var(--espT);padding:18px 24px;display:flex;align-items:center;gap:18px}
.tlav{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:#5E7488;color:#fff;display:flex;align-items:center;justify-content:center;font-family:Archivo,var(--sans);font-weight:600;font-size:17px}
.tlht{min-width:0}.tlht h2{margin:0;font-family:Archivo,var(--sans);font-weight:600;font-size:22px;letter-spacing:-.01em;line-height:1.15;color:var(--espT);text-transform:none}
.tlht div{font-size:13.5px;color:var(--espM);margin-top:3px}
.tleta{margin-left:auto;text-align:right;flex:0 0 auto}.tleta span{font-size:12.5px;color:var(--espM);display:block}
.tleta b{display:block;font-family:Archivo,var(--sans);font-weight:600;font-size:28px;line-height:1.05;color:var(--espT)}
.tlok{display:inline-flex;align-items:center;gap:6px;font-style:normal;font-size:12px;padding:4px 10px;border-radius:999px;margin-top:6px;background:#3E4A33;color:#DDE6CF}
.tlok:before{content:"";width:7px;height:7px;border-radius:50%;background:#A9C08A}
.tlok.late{background:#5A2A22;color:#F6D6CF}.tlok.late:before{background:#F08A78}
.tldraw{position:relative;padding:14px 22px 0;overflow-x:auto;background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px}
.tlsvg{display:block;width:100%;min-width:760px;height:auto}
.tlsvg text{font-family:"Hanken Grotesk",var(--sans)}
.tlp{stroke:var(--ink);stroke-width:3}.tlf{stroke:var(--muted);stroke-width:1.6;stroke-dasharray:6 5}.tlf.g{stroke:var(--sage)}
.tle{stroke:var(--ink);stroke-width:1}.tlt{stroke:var(--ink);stroke-width:2}
.tln{fill:var(--ink);font-size:15px;font-weight:600}.tln.fin{fill:var(--sage);font-weight:700}
.tld{fill:var(--muted);font-size:13px}.tlx{fill:var(--ink);font-size:14px;font-weight:600;font-family:Archivo,var(--sans)!important}.tlx.b{font-size:16px}
.tlfin{fill:var(--paper);stroke:var(--sage);stroke-width:2}.tlfin.on{fill:var(--sage)}
.tlfin:not(.on)+g path{stroke:var(--sage)}.tlfin:not(.on)+g rect{fill:var(--sage)}
.tltd{stroke:var(--bronze);stroke-width:1.5}.tltp{fill:var(--bronze)}.tltt{fill:var(--bronze);font-size:13px;font-weight:600}.tltt.s{font-size:10.5px}
.tlcl{fill:none;stroke:var(--red);stroke-width:1.8;stroke-linejoin:round}.tlcl.s{stroke-width:1.2}
.tldl{fill:var(--paper);stroke:var(--red);stroke-width:2;stroke-linejoin:round}.tldn{fill:var(--red);font-family:Archivo,var(--sans)!important;font-weight:600;font-size:11px}
.tlld{stroke:var(--red);stroke-width:1.2}.tlan{fill:var(--red);font-size:13px}.tlan.b{font-size:14px;font-weight:700}
.tlold{stroke:var(--red);stroke-width:1.5}.tlox{fill:var(--red);font-size:12px;text-decoration:line-through;font-family:Archivo,var(--sans)!important}
.tlml{fill:var(--muted);font-size:11.5px;font-weight:500}.tlml.b{fill:var(--ink);font-weight:700}
.tlleg{display:flex;gap:20px;flex-wrap:wrap;padding:6px 22px 16px;font-size:12.5px;color:var(--muted);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px}
.tlleg span{display:inline-flex;align-items:center;gap:8px}.tlleg .sw{width:22px;height:3px;background:var(--ink)}.tlleg .sw.p{background:repeating-linear-gradient(90deg,var(--muted) 0 5px,transparent 5px 9px)}
.tllow{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:18px;margin:0 0 18px}
.tacomp{background:var(--esp);color:var(--espT);padding:20px 22px}
.tacomp h3{margin:0;font-family:Archivo,var(--sans);font-weight:600;font-size:19px;color:var(--espT);letter-spacing:0;text-transform:none}
.tacomp .sub{font-size:13px;color:var(--espM);margin:3px 0 14px}
.tata{display:block;width:100%;background:#FBF8F2;color:#2B211B;border:0;border-left:4px solid var(--red);padding:12px 14px;font-family:var(--sans);font-size:15px;line-height:1.55;resize:vertical}
.tali{display:block;margin-top:10px;font-size:12.5px;color:var(--espM)}.tali small{opacity:.8}
.tali textarea{display:block;width:100%;margin-top:5px;background:transparent;color:var(--espT);border:1px solid var(--espL);padding:8px 10px;font-family:var(--sans);font-size:14px;line-height:1.5;resize:vertical}
.tali textarea::placeholder{color:#8F8073}
.taimp{display:grid;gap:8px;margin-top:14px}
.tar{display:grid;grid-template-columns:60px minmax(0,1fr);gap:10px;align-items:center;font-size:13px}.tar>span{color:var(--espM)}
.tar input{background:transparent;color:var(--espT);border:1px solid var(--espL);padding:7px 10px;font-family:var(--sans);font-size:14px;color-scheme:dark}
.taseg{display:flex;border:1px solid var(--espL)}
.taseg button{flex:1;background:transparent;border:0;border-right:1px solid var(--espL);color:var(--espM);font-family:var(--sans);font-size:12.5px;padding:8px 4px;cursor:pointer;min-height:38px}
.taseg button:last-child{border-right:0}.taseg button.on{background:var(--espT);color:#2B211B;font-weight:600}
.taseg button:focus-visible,.tabtn:focus-visible{outline:2px solid var(--espT);outline-offset:2px}
.tahint{font-size:12.5px;color:#F2C3B8;margin:10px 0 0}
.tatools{display:flex;gap:8px;align-items:center;margin-top:14px}.tatools .sp{flex:1}
.tabtn{height:40px;padding:0 16px;background:transparent;border:1px solid var(--espL);color:var(--espT);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer}
.tabtn.p{background:var(--red);border-color:var(--red);color:#fff}
.tawill{font-size:13px;line-height:1.5;color:#E6DCCF;border-top:1px solid var(--espL);padding-top:12px;margin:14px 0 0}.tawill b{color:#fff}
.tarev{background:var(--paper);border:1.5px solid var(--ink);align-self:start}
.tarh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:14px 18px 10px;border-bottom:1.5px solid var(--ink);flex-wrap:wrap}
.tarh h3{margin:0;font-family:Archivo,var(--sans);font-weight:600;font-size:19px;letter-spacing:0;text-transform:none}.tarh span{font-size:12.5px;color:var(--muted)}
.tarev table{width:100%;border-collapse:collapse;font-size:13.5px}
.tarev th{text-align:left;font-weight:500;color:var(--muted);font-size:12px;padding:8px 12px;border-bottom:1px solid var(--line);white-space:nowrap;letter-spacing:0;text-transform:none}
.tarev td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.45;color:var(--ink)}
.tarev td small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.tarev .c{width:52px;text-align:center}.tarev .dt{width:110px;color:var(--muted);font-size:12.5px;white-space:nowrap}
.tarev tr.new td{background:var(--redbg)}
.rd{font-size:12.5px;white-space:nowrap;color:var(--muted)}.rd.no{color:var(--red);font-weight:600}.rd.y{color:var(--sage)}
.r0{display:inline-flex;width:24px;height:24px;border:1.5px solid var(--ink);border-radius:50%;align-items:center;justify-content:center;font-family:Archivo,var(--sans);font-size:11px;font-weight:600}
.taact{padding:12px 18px 14px;display:grid;gap:7px;font-size:13px;color:var(--muted)}
.taact div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px}.taact b{color:var(--ink);font-weight:600}
.tkqn.rv{background:var(--red)}
@media(max-width:900px){.tllow{grid-template-columns:1fr}}
@media(max-width:640px){.tlhead{flex-wrap:wrap;padding:16px}.tleta{margin-left:58px;text-align:left}.tldraw{padding:10px 12px 0}.tlleg{padding:6px 12px 14px}.tarev .dt{width:auto;white-space:normal}.tarev th:nth-child(2),.tarev td.dt{display:none}}
/* portal tim */
.v3cloud{position:relative;margin:2px 4px 18px;padding:16px 16px 14px 18px;background:#FBEDE9}
.v3cl{position:absolute;left:-6px;top:-6px;width:calc(100% + 12px);height:calc(100% + 12px);overflow:visible;pointer-events:none}
.v3cl .tlcl{stroke:#C23B2A}
.v3ct{display:flex;gap:10px;align-items:flex-start;position:relative}.v3ct b{font-size:15px;color:#2B211B}.v3ct p{margin:3px 0 0;font-size:13.5px;line-height:1.45;color:#5A4038}.v3ct p.v3raw{font-style:italic;color:#2B211B}
.v3ct .tldl{fill:#FBEDE9;stroke:#C23B2A}.v3ct .tldn{fill:#C23B2A}
.v3rb{display:block;width:100%;margin-top:12px;background:#C23B2A;border:0;color:#fff;font-family:inherit;font-weight:600;font-size:15px;padding:12px;cursor:pointer;position:relative}
.v3tl{margin:0 0 6px}.v3tl .tlsvg{min-width:0}
.v3tl .tlp,.v3tl .tle,.v3tl .tlt{stroke:#2B211B}.v3tl .tlf{stroke:#6A6057}.v3tl .tlml{fill:#6A6057}.v3tl .tlml.b{fill:#2B211B}.v3tl .tltd{stroke:#9A7650}.v3tl .tltt{fill:#9A7650}.v3tl .tlfin{stroke:#66724F;fill:#fff}.v3tl .tlfin.on{fill:#66724F}.v3tl .tlcl{stroke:#C23B2A}
.v3chk label.rv{border-color:#E7B7AD;position:relative}
.v3dl{flex:0 0 24px}.v3dl .tldl{fill:#fff;stroke:#C23B2A}.v3dl .tldn{fill:#C23B2A}
.tlsheet .tlht h2{font-size:22px!important;line-height:1.15!important;margin:0!important;font-family:Archivo,var(--sans)!important;letter-spacing:-.01em!important;text-transform:none!important}
.tlmob{display:none}
@media(max-width:640px){.tldraw>.tlsvg{display:none}.tlmob{display:block;padding:8px 0 4px}.tlmob .tlsvg{min-width:0}.tlsheet .tlht h2{font-size:19px!important}.tlleg{gap:8px 14px}}
.v3ct p.v3when{font-size:12px;color:#8A6A60;margin-top:1px}
/* v76 pemilih gambar + coret di tambahan */
#tbpk{position:fixed;inset:0;z-index:310;background:rgba(20,16,13,.62);display:flex;align-items:center;justify-content:center;padding:16px}#tbpk[hidden]{display:none}
.pksheet{background:var(--paper);color:var(--ink);width:min(940px,100%);max-height:92vh;display:flex;flex-direction:column;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.pkh{display:flex;align-items:flex-start;gap:12px;padding:18px 22px 12px;background:var(--esp);color:var(--espT)}
.pkh b{display:block;font-family:Archivo,var(--sans);font-weight:600;font-size:19px}.pkh span{display:block;font-size:13px;color:var(--espM);margin-top:3px}
.pkx{margin-left:auto;background:none;border:0;color:var(--espT);font-size:26px;line-height:1;cursor:pointer;padding:0 4px}
.pktabs{display:flex;background:var(--esp);padding:0 22px}
.pktabs button{background:none;border:0;border-bottom:3px solid transparent;color:var(--espM);font-family:var(--sans);font-size:14px;font-weight:600;padding:10px 0 9px;margin-right:22px;cursor:pointer}
.pktabs button.on{color:var(--espT);border-bottom-color:var(--red)}
.pkb{padding:16px 22px 22px;overflow:auto;min-height:280px}
.pkcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:14px;margin-bottom:12px}.pkcrumb .sp{flex:1}
.pkcrumb button{background:none;border:0;color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;padding:4px 2px}.pkcrumb button:hover{text-decoration:underline}
.pkcrumb span{color:var(--muted)}
.pkfold{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;margin-bottom:14px}
.pkfold button{display:flex;align-items:center;gap:10px;text-align:left;background:var(--alt);border:1px solid var(--line);color:var(--ink);font-family:var(--sans);font-size:13.5px;padding:10px 12px;cursor:pointer;min-height:44px}
.pkfold button:hover{border-color:var(--ink)}
.pkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.pkimg{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:var(--ink);font-family:var(--sans)}
.pkth{display:block;aspect-ratio:4/3;background:var(--alt);border:1px solid var(--line);overflow:hidden;position:relative}
.pkth img{width:100%;height:100%;object-fit:cover;display:block}
.pkimg:hover .pkth,.pkimg:focus-visible .pkth{outline:2px solid var(--red);outline-offset:1px}
.pkimg.busy .pkth:after{content:"Mengambil…";position:absolute;inset:0;background:rgba(43,33,27,.6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px}
.pkimg small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pknote{font-size:12.5px;color:var(--muted);margin:14px 0 0}
.pkempty{padding:40px 10px;text-align:center;color:var(--muted);font-size:14px}.pkempty b{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}
.pkup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--line);padding:56px 20px;text-align:center;cursor:pointer}
.pkup:hover{border-color:var(--ink)}.pkup b{font-size:16px}.pkup span{font-size:13px;color:var(--muted)}
.tabtn.ic{width:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:16px}
.tabtn.ic.rec{width:auto;padding:0 12px;background:var(--red);border-color:var(--red);color:#fff;font-size:13px}
.tamed{display:flex;align-items:center;gap:8px;margin-top:10px}.tamed audio{height:34px;flex:1;min-width:0}
.tax{background:none;border:1px solid var(--espL);color:var(--espT);width:32px;height:32px;cursor:pointer;font-size:18px}
.tamarks{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.tam{background:#FBF8F2;border:0;padding:4px;cursor:pointer;display:flex;flex-direction:column;gap:3px}.tam small{font-size:11px;color:#6A6057}
.v3mark.rv{border-left:3px solid #C23B2A;padding-left:10px}
.v3mt{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#C23B2A;margin-bottom:6px}
.v3aud{height:34px;width:100%;margin-top:8px}
.pkgrp{margin-bottom:22px}.pkgrp:last-child{margin-bottom:0}
.pkgh{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.pkgh b{font-size:15px;font-weight:600}.pkgh span{font-size:12.5px;color:var(--muted)}
/* v78 papan brief */
.bdwrap{border:1px solid var(--line);background:var(--paper);margin:0 0 18px}
.bdtop{background:var(--esp);color:var(--espT);padding:14px 20px}
.bdtop b{display:block;font-family:Archivo,var(--sans);font-weight:600;font-size:19px}.bdtop span{display:block;font-size:13px;color:var(--espM);margin-top:2px;max-width:760px}
.bdbody{display:grid;grid-template-columns:62px minmax(0,1fr) 280px;height:640px}
.bdrail{background:var(--alt);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0}
.bdt{width:50px;height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:0;color:var(--muted);font-family:var(--sans);font-size:10.5px;cursor:pointer;border-radius:4px}
.bdt:hover{color:var(--ink);background:var(--soft)}.bdt.on{background:var(--esp);color:var(--espT)}.bdt:disabled{opacity:.35;cursor:default}
.bdt:focus-visible{outline:2px solid var(--ink);outline-offset:1px}
.bdcv{position:relative;overflow:hidden;background-color:var(--paper);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;touch-action:none;cursor:grab;outline:none}
.bdcv.arrow{cursor:crosshair}
.bdin{position:absolute;left:0;top:0;transform-origin:0 0;width:1px;height:1px}
.bdsv{position:absolute;left:0;top:0;width:1px;height:1px;overflow:visible}
.bdal{stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bdar.sel .bdal{stroke:#3E5C76}.bdar.rv .bdal{stroke:var(--red)}.bdar.pend .bdal{stroke-dasharray:6 4}
.bdhit{stroke:transparent;stroke-width:16;cursor:move;pointer-events:stroke}
.bdae{fill:#fff;stroke:#3E5C76;stroke-width:2;cursor:grab}
.bdfr,.bdim,.bdno,.bdmt{position:absolute;cursor:move;user-select:none;-webkit-user-select:none}
.bdfr{border:1.5px solid var(--ink);background:color-mix(in srgb,var(--paper) 55%,transparent)}
.bdft{position:absolute;top:-13px;left:10px;display:flex;align-items:center;gap:6px;background:var(--esp);color:var(--espT);font-size:12.5px;font-weight:600;padding:3px 9px;white-space:nowrap;max-width:calc(100% - 20px)}
.bdft span{overflow:hidden;text-overflow:ellipsis}
.bdft i{font-style:normal;background:var(--espT);color:#2B211B;width:17px;height:17px;flex:0 0 17px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10.5px}
.bdft input{background:transparent;border:0;color:var(--espT);font:inherit;width:300px;max-width:100%;outline:none}
.bdim{background:#fff;padding:6px;box-shadow:0 6px 16px rgba(43,33,27,.16)}
.bdim .tbimg{display:block}.bdim .tbimg img{width:100%;height:auto;display:block;pointer-events:none}
.bdcap{display:block;font-size:12px;color:#6A6057;margin-top:5px;line-height:1.35}
input.bdcap{width:100%;border:1px solid #D8CEC0;padding:4px 6px;font-family:var(--sans);font-size:12.5px;color:#2B211B;background:#fff}
.bdno{background:#fff;border:1px solid #D8CEC0;padding:10px 12px;box-shadow:0 4px 10px rgba(43,33,27,.08);color:#2B211B}
.bdnk{font-size:11px;font-weight:600;color:#6A6057;margin-bottom:3px}
.bdnt{font-size:13.5px;line-height:1.45}
.bdno textarea{display:block;width:100%;border:0;background:transparent;font-family:var(--sans);font-size:13.5px;line-height:1.45;resize:none;outline:none;color:#2B211B;padding:0}
.bdno.k-wajib{border:1.5px solid #2B211B}.bdno.k-wajib .bdnk{color:#2B211B}
.bdno.k-wajib .bdnk:before{content:"✓ ";}
.bdno.k-jangan{border:1.5px solid #C23B2A;background:#FBEDE9}.bdno.k-jangan .bdnk{color:#C23B2A}
.bdmt{width:110px;background:#fff;padding:6px;box-shadow:0 4px 10px rgba(43,33,27,.1);color:#2B211B}
.bdmt i{display:block;height:62px;background-size:cover;background-position:center;margin-bottom:5px}
.bdmt b{display:block;font-size:12px;line-height:1.3}.bdmt span{display:block;font-size:11px;color:#6A6057;line-height:1.3}
.bdfr.sel,.bdim.sel,.bdno.sel,.bdmt.sel{outline:2px solid #3E5C76;outline-offset:3px}
.bdfr.pend,.bdim.pend,.bdno.pend,.bdmt.pend{outline:2px dashed var(--red);outline-offset:5px}
.bdfr.sel.pend,.bdim.sel.pend,.bdno.sel.pend,.bdmt.sel.pend{outline:2px solid #3E5C76}
.bdrv{position:absolute;top:-10px;right:-10px;background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;font-family:Archivo,var(--sans)}
.bdrv.p{background:#fff;color:var(--red);border:1px solid var(--red)}
.bdfr .bdrv{top:-13px}
.bdrz{position:absolute;right:-7px;bottom:-7px;width:14px;height:14px;background:#fff;border:2px solid #3E5C76;cursor:nwse-resize;display:none}
.sel>.bdrz{display:block}
.bdempty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:420px;text-align:center;color:var(--muted);font-size:14px;line-height:1.55;pointer-events:none}.bdempty>b{display:block;color:var(--ink);font-size:17px;margin-bottom:6px}
.bdctx{position:absolute;left:50%;top:12px;transform:translateX(-50%);display:flex;align-items:center;gap:2px;background:var(--esp);padding:4px;box-shadow:0 8px 20px rgba(0,0,0,.2);white-space:nowrap}
.bdctx button{background:none;border:0;color:var(--espT);font-family:var(--sans);font-size:13px;padding:6px 10px;cursor:pointer}
.bdctx button.on{background:var(--espT);color:#2B211B;font-weight:600}.bdctx button.dl{color:#F2A493}
.bdctx .sep{width:1px;height:20px;background:var(--espL);margin:0 4px}
.bdchk{color:var(--espT);font-size:13px;display:flex;align-items:center;gap:6px;padding:0 8px}
.bdzoom{position:absolute;left:12px;bottom:12px;display:flex;background:var(--paper);border:1px solid var(--line);font-size:12.5px}
.bdzoom button{background:none;border:0;border-right:1px solid var(--line);color:var(--ink);font-family:var(--sans);padding:6px 10px;cursor:pointer}.bdzoom span{padding:6px 10px;border-right:1px solid var(--line);min-width:52px;text-align:center}
.bdzoom button:last-child{border-right:0}
.bdtb{position:absolute;right:12px;bottom:12px;border:1.5px solid var(--ink);background:var(--paper);display:grid;grid-template-columns:auto auto;font-size:11px;min-width:240px}
.bdtb div{padding:4px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.bdtb div:nth-child(2n){border-right:0}.bdtb div:nth-last-child(-n+2){border-bottom:0}
.bdtb span{display:block;color:var(--muted);font-size:9.5px}.bdtb b{font-family:Archivo,var(--sans);font-weight:600;font-size:12.5px}.bdtb b.r{color:var(--red)}
.bdside{border-left:1px solid var(--line);padding:16px 18px;overflow:auto;background:var(--paper)}
.bdside h3{margin:0;font-family:Archivo,var(--sans);font-weight:600;font-size:17px;letter-spacing:0;text-transform:none}
.bdside h4{margin:18px 0 8px;font-size:13px;font-weight:600;letter-spacing:0;text-transform:none}
.bdside .sub{font-size:12.5px;color:var(--muted);margin:2px 0 10px}
.bdli{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-top:1px solid var(--line);font-size:13.5px;line-height:1.4}
.bdli .n{width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--ink);color:var(--bg);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.bdli small{display:block;color:var(--muted);font-size:12px}.bdli b.r{color:var(--red)}.bdli b.p{color:var(--red);font-weight:500;font-size:12px}
.bdli.rv{background:var(--redbg);margin:0 -18px;padding:9px 18px}.bdli.rv .n{background:var(--red);color:#fff}
.bdhint{font-size:13px;color:var(--muted);line-height:1.5}
.bdchips{display:flex;flex-wrap:wrap;gap:6px}.bdchips span{font-size:12px;padding:4px 8px;border:1px solid var(--line);display:inline-flex;align-items:center;gap:6px}.bdchips i{width:11px;height:11px;display:inline-block}
.bdpend{margin-top:16px;border:1.5px solid var(--red);background:var(--redbg);padding:12px}
.bdpend b{display:block;color:var(--red);font-size:14px}.bdpend span{display:block;font-size:12.5px;line-height:1.45;margin:4px 0 10px;color:var(--ink)}
.bdpend button{width:100%;background:var(--red);color:#fff;border:0;font-family:var(--sans);font-weight:600;font-size:14px;padding:10px;cursor:pointer}
.bdpriv{font-size:12px;color:var(--muted);margin-top:16px;line-height:1.45}
#bdmp{position:fixed;inset:0;z-index:310;background:rgba(20,16,13,.62);display:flex;align-items:center;justify-content:center;padding:16px}#bdmp[hidden]{display:none}
.mpq{width:100%;padding:10px 12px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-family:var(--sans);font-size:14px;margin-bottom:12px}
.mpl{display:grid;gap:6px}
.mpi{display:flex;align-items:center;gap:12px;text-align:left;background:var(--paper);border:1px solid var(--line);padding:8px;cursor:pointer;color:var(--ink);font-family:var(--sans)}
.mpi:hover{border-color:var(--ink)}.mpi i{width:46px;height:46px;flex:0 0 46px;background-size:cover;background-position:center}
.mpi span{flex:1;min-width:0}.mpi b{display:block;font-size:14px}.mpi small{display:block;font-size:12px;color:var(--muted)}.mpi em{font-style:normal;font-size:11.5px;color:var(--muted);white-space:nowrap}
.mpnew{margin-top:12px;background:none;border:1px dashed var(--line);width:100%;padding:10px;font-family:var(--sans);font-size:13.5px;color:var(--ink);cursor:pointer}
@media(max-width:1100px){.bdbody{grid-template-columns:56px minmax(0,1fr);height:auto}.bdcv{height:560px}.bdside{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:640px){.bdbody{grid-template-columns:1fr}.bdrail{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:4px 8px;justify-content:flex-start}.bdcv{height:460px}.bdtb{display:none}.bdctx{top:auto;bottom:56px;max-width:calc(100% - 16px);overflow-x:auto}}
/* portal */
.v3bd{position:relative;overflow:hidden;border:1px solid #DCD2C4;background-color:#FBF8F2;background-image:radial-gradient(#DCD2C4 1px,transparent 1px);background-size:14px 14px}
.v3bd .bdin{position:absolute;left:0;top:0;width:auto;height:auto}
.v3bd .bdfr,.v3bd .bdim,.v3bd .bdno,.v3bd .bdmt{cursor:default}
.v3bd .bdfr{background:rgba(251,248,242,.55);border-color:#2B211B}.v3bd .bdft{background:#2B211B;color:#F3ECE2}.v3bd .bdft i{background:#F3ECE2;color:#2B211B}
.v3bd .bdal{stroke:#2B211B}.v3bd .bdar.rv .bdal{stroke:#C23B2A}
.v3tip{font-size:12px;color:#6A6057;margin:6px 0 0}
/* v79 kamera view, komentar kartu, layar penuh */
.bdcone{fill:#3E5C76;fill-opacity:.14;stroke:#3E5C76;stroke-width:1.4;stroke-dasharray:5 4}
.bdcb{fill:#2B211B;stroke:#fff;stroke-width:2;cursor:move}
.bdcn{fill:#fff;font-family:Archivo,var(--sans);font-weight:600;font-size:13px;pointer-events:none}
.bdcam.rv .bdcone{fill:#C23B2A;stroke:#C23B2A}.bdcam.rv .bdcb{fill:#C23B2A}
.bdcam.pend .bdcb{stroke:#C23B2A;stroke-dasharray:3 2}
.bdcam.sel .bdcb{stroke:#3E5C76;stroke-width:3}
.bdcam.fssel .bdcb{stroke:#3E5C76;stroke-width:4}
.bdcmn{position:absolute;top:-11px;left:-11px;min-width:22px;height:22px;border-radius:11px;background:#3E5C76;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 6px;border:2px solid #fff}
.bdcmn:before{content:"";position:absolute;left:3px;bottom:-5px;border:4px solid transparent;border-top-color:#3E5C76;border-left-color:#3E5C76}
.bdsel{margin:-16px -18px 16px;padding:14px 18px;background:var(--alt);border-bottom:1px solid var(--line)}
.bdsel h3{font-size:15px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bdth .tbm2{max-width:100%}.bdth .tbqi textarea{min-width:0}
.v3bd{cursor:zoom-in}
.v3open{display:block;width:100%;margin-top:8px;background:#2B211B;color:#F3ECE2;border:0;font-family:inherit;font-weight:600;font-size:14.5px;padding:12px;cursor:pointer}
body.bdfsopen{overflow:hidden}
#bdfs{position:fixed;inset:0;z-index:320;background:#FBF8F2;display:flex;flex-direction:column;color:#2B211B}#bdfs[hidden]{display:none}
.fshd{display:flex;align-items:center;gap:12px;background:#2B211B;color:#F3ECE2;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top))}
.fshd b{display:block;font-size:15px}.fshd small{display:block;font-size:12px;color:#CDBFAE}
.fsx{background:none;border:0;color:#F3ECE2;font-size:24px;width:40px;height:40px;cursor:pointer}
.fscv{position:relative;flex:1;overflow:hidden;touch-action:none;background-color:#FBF8F2;background-image:radial-gradient(#DCD2C4 1px,transparent 1px);background-size:16px 16px}
.fscv .bdin{position:absolute;left:0;top:0;transform-origin:0 0}
.fscv .bdfr,.fscv .bdim,.fscv .bdno,.fscv .bdmt{cursor:pointer}
.fscv .bdfr{background:rgba(251,248,242,.55);border-color:#2B211B}.fscv .bdft{background:#2B211B;color:#F3ECE2}.fscv .bdft i{background:#F3ECE2;color:#2B211B}.fscv .bdal{stroke:#2B211B}
.fscv .fssel{outline:3px solid #3E5C76;outline-offset:4px}
.fszoom{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;background:#fff;border:1px solid #DCD2C4;box-shadow:0 4px 12px rgba(0,0,0,.1)}
.fszoom button{background:none;border:0;border-bottom:1px solid #DCD2C4;width:44px;height:44px;font-size:18px;font-family:inherit;color:#2B211B;cursor:pointer}.fszoom button:last-child{border-bottom:0}.fszoom button[data-fs="fit"]{font-size:12px;font-weight:600}
.fshint{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:rgba(43,33,27,.85);color:#fff;font-size:12.5px;padding:7px 12px;white-space:nowrap;pointer-events:none}
.fssheet{background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -10px 30px rgba(43,33,27,.18);padding:10px 18px calc(16px + env(safe-area-inset-bottom));max-height:58vh;overflow:auto;margin-top:-18px;position:relative;z-index:2}
.fssheet .grab{width:40px;height:4px;background:#D8CEC0;border-radius:2px;margin:0 auto 10px}
.fsst{display:flex;align-items:flex-start;gap:10px}.fsst b{flex:1;font-size:16px}.fsst button{background:none;border:0;font-size:24px;line-height:1;color:#6A6057;cursor:pointer}
.fsp{font-size:14px;line-height:1.5;margin:6px 0 10px}.fsp.no{color:#C23B2A}
.fsimg{display:block;margin:8px 0}.fsimg .tbimg img{max-height:38vh;width:auto;max-width:100%}
.fsol{margin:4px 0 10px;padding-left:22px;font-size:14px;line-height:1.5}
.fsmat{display:flex;gap:12px;align-items:center;margin:8px 0 12px}.fsmat i{width:64px;height:64px;background-size:cover;background-position:center;flex:0 0 64px}.fsmat b{display:block;font-size:15px}.fsmat span{font-size:13px;color:#6A6057}
#bdfs .tbm2{background:#fff;border-color:#DCD2C4;color:#2B211B}#bdfs .tbm2.me{background:#EFE7DC}#bdfs .tbm2 small{color:#6A6057}#bdfs .tbqi textarea{background:#fff;border-color:#DCD2C4;color:#2B211B}
.bdsv{z-index:5}.bdcone,.bdal,.bdcn{pointer-events:none}.bdhit,.bdcb,.bdae{pointer-events:all}
.bdft input{height:18px!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:var(--espT)!important;font-size:12.5px!important;font-weight:600!important;line-height:18px!important;box-shadow:none!important;width:280px}
.bdft input::placeholder{color:#B9AC9C}
input.bdcap{min-height:0!important;height:26px!important;margin-top:5px!important}
.bdno textarea{min-height:0!important;margin:0!important;box-shadow:none!important}
/* v81 Hari ini versi tenang */
.fz{background:var(--paper);border:1px solid var(--line);margin:0 0 16px}
.fzh{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 20px 10px;flex-wrap:wrap}
.fzh b{font-family:Archivo,var(--sans);font-weight:600;font-size:20px;letter-spacing:-.01em}.fzh span{font-size:13.5px;color:var(--muted);flex-basis:100%}
.fzset{background:none;border:0;color:var(--muted);font-family:var(--sans);font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 0}
.fzset:hover{color:var(--ink)}
.fzr{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 20px;border-top:1px solid var(--line)}
.fzn{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font-family:Archivo,var(--sans);font-weight:600;font-size:13px}
.fzr.first .fzn{background:var(--ink);color:var(--bg)}
.fzm b{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;line-height:1.3}
.fzdot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;display:inline-block}
.fzm small{display:block;font-size:13.5px;color:var(--muted);margin-top:3px;line-height:1.4}.fzm small.late{color:var(--warn)}
.fzg{display:inline-block;font-size:11.5px;color:var(--muted);margin-top:5px;border:1px solid var(--line);padding:1px 7px}
.fza{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.fzskip{color:var(--muted)!important}
.fzmore{margin:0;padding:10px 20px 14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.fzsetup{margin:0 20px 12px;padding:12px 14px;background:var(--alt);font-size:13.5px}
.fzsetup p{margin:0 0 8px;color:var(--muted)}
.fzo{display:flex;align-items:center;gap:6px;padding:5px 0;border-top:1px solid var(--line)}.fzo span{flex:1}
.fzall{border:1px solid var(--line);background:var(--paper);margin:0 0 16px}
.fzall>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;font-size:14px;color:var(--muted)}
.fzall>summary::-webkit-details-marker{display:none}
.fzall>summary b{color:var(--ink);font-weight:600}
.fzsw{font-size:13px;color:var(--ink);border:1px solid var(--line);padding:5px 12px;white-space:nowrap}
.fzall[open]>summary{border-bottom:1px solid var(--line)}
.fzall>.blk,.fzall>section{margin-left:0;margin-right:0}
.fzatt{padding:12px 12px 0}
.fzback{margin:12px 16px 16px}
.fzdup{font-size:11px;font-weight:600;color:var(--muted);border:1px solid var(--line);padding:0 5px;margin-left:4px;vertical-align:1px}
[data-a="tpin"].on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
@media(max-width:640px){.fzr{grid-template-columns:30px minmax(0,1fr);padding:14px 16px}.fza{grid-column:2;justify-content:flex-start}.fzh{padding:14px 16px 8px}.fzall>summary{padding:14px 16px}}
.fzo .ib:disabled{opacity:.3;cursor:default}
@media(max-width:640px){.qadd{display:grid!important;grid-template-columns:1fr 1fr 44px 44px;gap:6px}.qadd>input{grid-column:1/-1;min-width:0;width:100%}.qadd>select{min-width:0;width:100%}}
/* v82 proyek sekilas */
.pg2{display:block;padding:12px 0 13px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.v59gl .pg2:last-child{border-bottom:0}
.pg2:hover .nm{text-decoration:underline;text-underline-offset:3px}
.pg2t{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.pg2 .nm{font-size:14.5px;font-weight:600;line-height:1.3}
.pg2 .pc{font-family:Archivo,var(--sans);font-weight:600;font-size:14px;font-variant-numeric:tabular-nums;color:var(--ink)}
.pg2bar{height:6px;background:var(--soft);margin:8px 0 7px;overflow:hidden;border-radius:3px}
.pg2bar i{display:block;height:100%;border-radius:3px}
.pg2s{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--muted);line-height:1.35}
.pg2s .late{color:var(--warn);font-weight:600;white-space:nowrap}
.pg2.warn{box-shadow:inset 3px 0 0 var(--warn);padding-left:12px;margin-left:-12px}
.v59gl .pg2{padding:12px 16px 13px}
.v59gl .pg2.warn{margin-left:0;padding-left:16px;box-shadow:inset 3px 0 0 var(--warn)}
.v59gl .pg2.warn{box-shadow:none}
.pg2 .nm{display:flex;align-items:center;gap:8px}
.pg2 .nm .v2dot{flex:0 0 auto}
.pg2stg{margin:9px 0 7px}
.pg2stg .v56stg{width:100%}
/* v84 kanban ringan */
.ksum{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;margin:4px 0 16px;font-size:13.5px;color:var(--muted)}
.ksum b{color:var(--ink);font-family:Archivo,var(--sans);font-weight:600;font-size:15px;margin-right:3px}
.ksum .mut{opacity:.7}
.kchip{background:var(--paper);border:1px solid var(--line);color:var(--muted);font-family:var(--sans);font-size:13.5px;padding:4px 10px;cursor:pointer}
.kchip:hover{border-color:var(--ink);color:var(--ink)}
.kex{background:var(--paper);border:1px solid var(--line);padding:6px 14px 10px;margin:0 0 16px}
.kexh{font-size:13px;font-weight:600;padding:8px 0 4px}
.kb2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.kcol2{min-width:0}
.kh2{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--ink);padding-bottom:6px}
.kh2 b{font-size:15px;font-weight:600}.kh2 span{font-size:12.5px;color:var(--muted)}
.kd2{font-size:12.5px;color:var(--muted);margin:6px 0 10px}
.kg{background:var(--paper);border:1px solid var(--line);margin-bottom:8px}
.kgh{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;padding:10px 12px;cursor:pointer;text-align:left;font-family:var(--sans);color:var(--ink);font-size:14px;font-weight:600}
.kgh span:first-of-type{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kgh em{font-style:normal;font-size:12px;color:var(--muted);font-weight:500;background:var(--alt);padding:1px 7px;border-radius:999px}
.kchev{color:var(--muted);font-size:12px;width:12px;text-align:center}
.kdot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;display:inline-block}
.kl{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line)}
.kl.run{background:var(--alt)}
.klm{flex:1;min-width:0}.klm b{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;line-height:1.3}
.klm small{display:block;font-size:12px;color:var(--muted);margin-top:1px}
.kla{display:flex;gap:4px;flex:0 0 auto}
.kla .ib{min-width:34px;height:32px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.kok2{font-size:14px!important}
.kmore{display:block;width:100%;background:none;border:0;border-top:1px solid var(--line);padding:8px 12px;text-align:left;font-family:var(--sans);font-size:12.5px;color:var(--muted);cursor:pointer}
.kmore:hover{color:var(--ink)}
.kempty2{font-size:13px;color:var(--muted);padding:10px 0}
@media(max-width:900px){.kb2{grid-template-columns:1fr}}
/* ===== v86 Markup ala iPhone ===== */
.tbimg .mksv{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.tbimg.th img{width:auto;height:84px;max-width:none;object-fit:fill}
html.mkopen,html.mkopen body{overflow:hidden;overscroll-behavior:none}
#mkov{position:fixed;inset:0;z-index:400}
#mkov[hidden]{display:none}
.mked{position:absolute;inset:0;display:flex;flex-direction:column;background:#1C1714;color:#F3ECE2;font-family:var(--sans);-webkit-user-select:none;user-select:none;padding-top:env(safe-area-inset-top)}
.mked button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.mked button:disabled{opacity:.35;cursor:default}
.mkhd{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 14px 6px;flex:none}
.mkhd>button{font-size:16px;padding:8px 6px;min-height:44px}.mkhd .ok{color:#E4B23A;font-weight:700}
.mkttl{text-align:center;min-width:0}.mkttl b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mkttl small{font-size:11.5px;color:#A99E92}
.mkbar{display:flex;align-items:center;gap:4px;padding:0 10px 8px;flex:none}
.mkbar>button{min-width:40px;height:36px;border-radius:8px;font-size:19px;padding:0 8px}
.mkbar>button[data-mk="fit"]{font-size:12.5px;border:1px solid #4A3F37}
.mkhint{flex:1;text-align:center;font-size:12px;color:#A99E92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 6px}
.mkpl{font-size:13px!important;font-weight:700;border:1px solid #4A3F37;padding:0 12px!important}.mkpl.on{background:#F3ECE2;color:#2B211B!important}
.mkmain{flex:1;min-height:0;display:flex;position:relative}
.mkst{flex:1;position:relative;overflow:hidden;touch-action:none;background:#141110}
.mkpic{position:absolute;transform-origin:0 0;box-shadow:0 10px 40px rgba(0,0,0,.5);background:#fff}
.mkpic img{display:block;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none}
.mkpic .mksv,.mkpic .mkfx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.mkpin{position:absolute;width:26px;height:26px;border-radius:50%;background:#C23B2A;color:#fff;border:2px solid #fff;font-style:normal;font-size:12px;font-weight:700;font-family:Archivo,var(--sans);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.4);transform:translate(-50%,-50%);cursor:grab;touch-action:none}
.mkpin.on{outline:3px solid #E4B23A;outline-offset:1px}
.mkselbar{position:absolute;transform:translateY(-110%);display:flex;background:#F3ECE2;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.35);overflow:hidden;white-space:nowrap;z-index:2}
.mkselbar button{color:#2B211B!important;font-size:12.5px;font-weight:600;padding:9px 11px;border-left:1px solid #D8CEC0!important}.mkselbar button:first-child{border-left:0!important;color:#C23B2A!important}
.mkside{display:none;background:#F3ECE2;color:#2B211B;flex-direction:column;overflow:auto;-webkit-user-select:text;user-select:text}
.mked.lst .mkside{display:flex;position:absolute;left:0;right:0;bottom:0;max-height:62%;border-radius:18px 18px 0 0;box-shadow:0 -10px 30px rgba(0,0,0,.4);z-index:3}
.mksh{display:flex;justify-content:space-between;align-items:center;padding:12px 16px 8px;position:sticky;top:0;background:#F3ECE2;z-index:1}.mksh b{font-family:Archivo,var(--sans);font-weight:600;font-size:15px}
.mkx{font-size:22px;width:36px;height:36px;color:#6A6057!important}
.mkemp{margin:0 16px 12px;font-size:13px;line-height:1.55;color:#6A6057}
.mkpt{display:grid;grid-template-columns:26px 1fr 30px;gap:10px;padding:10px 12px 10px 16px;border-top:1px solid #D8CEC0}
.mkpt.on{background:#fff}
.mkn{width:24px;height:24px;border-radius:50%;background:#C23B2A;color:#fff;font-weight:700;font-size:11.5px;display:inline-flex;align-items:center;justify-content:center;font-family:Archivo,var(--sans)}
.mkch{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.mkch button{font-size:11.5px!important;padding:4px 8px!important;border:1px solid #D8CEC0!important;background:#fff!important;color:#2B211B!important;border-radius:0}
.mkch button.on{background:#2B211B!important;color:#F3ECE2!important;border-color:#2B211B!important}
.mkpt textarea{width:100%;box-sizing:border-box;border:1px solid #D8CEC0;background:#fff;color:#2B211B;font:inherit;font-size:15px;padding:8px 9px;resize:vertical;min-height:44px;border-radius:0}
.mkdel{font-size:20px;color:#6A6057!important;height:32px}
.mkfoot{padding:12px 16px 16px;font-size:12px;color:#6A6057;display:flex;flex-direction:column;gap:8px;border-top:1px solid #D8CEC0;margin-top:auto}
.mkdimg{color:#C23B2A!important;font-weight:600;text-align:left;padding:4px 0!important;font-size:13px}
.mkedit{display:flex;gap:8px;padding:8px 12px;background:#2A231F;border-top:1px solid #3A312B;flex:none}
.mkedit input{flex:1;min-width:0;height:42px;border:1px solid #4A3F37;background:#1C1714;color:#F3ECE2;font:inherit;font-size:16px;padding:0 12px;border-radius:8px}
.mkedit button{background:#E4B23A!important;color:#2B211B!important;font-weight:700;padding:0 16px;border-radius:8px}
.mktray{flex:none;background:#2A231F;border-top:1px solid #3A312B;padding:8px 10px calc(10px + env(safe-area-inset-bottom));position:relative}
.mkwd,.mkcols{display:flex;justify-content:center;gap:8px;margin-bottom:6px}
.mkwd button{width:44px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px}.mkwd button span{display:block;width:24px;background:#F3ECE2;border-radius:3px}.mkwd button.on{background:#4A3F37}.mkwd button.on span{background:#E4B23A}
.mkcols button{width:34px;height:34px;border-radius:50%;border:2px solid #4A3F37!important}.mkcols button.on{box-shadow:0 0 0 3px #2A231F,0 0 0 5px #F3ECE2}
.mktools{display:flex;justify-content:space-between;align-items:flex-end;max-width:520px;margin:0 auto}
.mktl{width:44px;display:flex;flex-direction:column;align-items:center;transition:transform .15s;padding:0!important}
.mktl.on{transform:translateY(-10px)}
.mktip{width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:14px solid var(--c)}
.mkbd{width:20px;height:34px;background:#E9E1D5;border-radius:2px 2px 0 0;position:relative}.mkbd:after{content:"";position:absolute;left:3px;right:3px;top:6px;height:5px;background:var(--c);border-radius:1px}
.mktl.t-hl .mktip{border-left-width:11px;border-right-width:11px;border-bottom-width:10px}
.mktl.t-pencil .mktip{border-bottom-color:#6A6057}
.mktl.t-eraser .mktip{border-left-width:10px;border-right-width:10px;border-bottom-width:8px}.mktl.t-eraser .mkbd:after,.mktl.t-lasso .mkbd:after{background:#B9AFA3}
.mktl.t-line .mktip{display:none}.mktl.t-line .mkbd{width:11px;height:48px;transform:rotate(28deg);background:repeating-linear-gradient(180deg,#E9E1D5 0 4px,#9C8F81 4px 5px)}.mktl.t-line .mkbd:after{display:none}
.mktl small,.mkcd small,.mkplus small{font-size:9.5px;color:#A99E92;margin-top:5px;white-space:nowrap}
.mktl.on small{color:#F3ECE2;font-weight:700}
.mkcd,.mkplus{width:46px;display:flex;flex-direction:column;align-items:center;padding:0!important}
.mkcd span{width:30px;height:30px;border-radius:50%;border:3px solid #2A231F;box-shadow:0 0 0 2px #A99E92}
.mkplus b,.mkplus svg{width:32px;height:32px;border-radius:50%;background:#3A312B;display:flex;align-items:center;justify-content:center;font-size:21px;font-weight:400;padding:4px;box-sizing:border-box}
.mkplus.on svg{background:#F3ECE2;color:#C23B2A}.mkplus.on small{color:#F3ECE2;font-weight:700}
.mkdim{position:absolute;inset:0;background:rgba(0,0,0,.45);z-index:4}
.mkplsh{position:absolute;left:0;right:0;bottom:0;background:#F3ECE2;color:#2B211B;border-radius:22px 22px 0 0;padding:10px 16px calc(22px + env(safe-area-inset-bottom));z-index:5;max-width:560px;margin:0 auto}
.mkgrab{width:38px;height:5px;border-radius:3px;background:#CFC5B8;margin:0 auto 10px}
.mkplsh h4{margin:0 0 8px;font-family:Archivo,var(--sans);font-weight:600;font-size:16px}
.mksep{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#6A6057;margin:12px 0 8px;font-weight:700}
.mkgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}
.mkgrid button{background:#fff!important;border:1px solid #D8CEC0!important;border-radius:12px;min-height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:11.5px;font-weight:600;color:#6A6057!important}
.mkgrid button svg{color:#2B211B}
.mkgrid.st button{border-color:#E7B7AE!important;color:#C23B2A!important;background:#FBEDE9!important}.mkgrid.st button svg{color:#C23B2A}
.mkgrid button.on{outline:2px solid #2B211B}
@media(min-width:900px){.mkside{display:flex;width:360px;flex:none;border-left:1px solid #3A312B}.mked.lst .mkside{position:static;max-height:none;border-radius:0;box-shadow:none}.mkx{display:none}.mkpl{display:none}}
/* ekspor */
.mkexp{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:14px;padding:12px 14px;border:1px solid var(--line);background:var(--alt)}
.mkexl{flex:1 1 240px;min-width:0}.mkexl b{display:block;font-size:14px}.mkexl .sub{font-size:12.5px}
.mkexc{font-size:13px;display:flex;gap:6px;align-items:center}
.mkexb{display:flex;gap:6px;flex-wrap:wrap}
.mkst2{flex-basis:100%;font-size:12.5px;color:var(--muted)}.mkst2:empty{display:none}
.mktg{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border:1px solid currentColor;vertical-align:1px;line-height:1.4}
/* halaman PDF (dirender di luar layar) */
#mkpdf{position:absolute;left:-30000px;top:0;width:1123px}
.mkpg{width:1123px;height:794px;box-sizing:border-box;background:#fff;color:#2B211B;padding:34px 40px 0;display:flex;flex-direction:column;font-family:"Hanken Grotesk",Inter,Arial,sans-serif;font-size:13px;overflow:hidden;margin-bottom:20px}
.mkph{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #2B211B;padding-bottom:10px;gap:20px}
.mkps{font-size:11px;color:#6A6057;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.mkpt1{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:26px;letter-spacing:-.01em;line-height:1.1}
.mkpr{text-align:right;font-size:12px;color:#6A6057;line-height:1.6;white-space:nowrap}.mkpr b{color:#2B211B;font-size:13px}
.mkcov{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:6px;flex:1;min-height:0;overflow:hidden}
.mkh5{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#6A6057;font-weight:700;margin:16px 0 8px}
.mkkv{display:grid;grid-template-columns:110px 1fr;row-gap:5px;font-size:13px}.mkkv span{color:#6A6057}
.mksum{display:flex;gap:6px}.mksum div{flex:1;border:1px solid #D8CEC0;padding:8px 4px;text-align:center}.mksum b{display:block;font-family:Archivo,Arial,sans-serif;font-size:22px;font-weight:600;line-height:1.1}.mksum span{font-size:10.5px;color:#6A6057}
.mkq{margin:0;font-size:13px;line-height:1.55;max-height:150px;overflow:hidden}
.mkp{margin:0;font-size:13px;line-height:1.55}
.mkkir div{display:flex;gap:9px;padding:6px 0;border-bottom:1px solid #E6DED2;font-size:13px;line-height:1.4}.mkkir div.on span:last-child{color:#6A6057;text-decoration:line-through}
.mkkir em,.mkidx em{font-style:normal;color:#C23B2A;font-weight:700}
.mkcb{flex:none;width:14px;height:14px;border:1.5px solid #2B211B;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#5C6A45;margin-top:1px;box-sizing:border-box}
.mkidx{width:100%;border-collapse:collapse;font-size:12.5px}.mkidx td{padding:6px 0;border-bottom:1px solid #E6DED2}.mkidx td:last-child{text-align:right;color:#6A6057;white-space:nowrap}
.mktb{margin-top:auto;display:grid;grid-template-columns:1.3fr 1.2fr 1.1fr .9fr .8fr .5fr;border-top:2px solid #2B211B;font-size:11px}
.mktb div{padding:7px 9px 10px;border-left:1px solid #D8CEC0;min-width:0}.mktb div:first-child{border-left:0;padding-left:0}
.mktb small{display:block;color:#6A6057;letter-spacing:.12em;text-transform:uppercase;font-size:8.5px;margin-bottom:3px}.mktb b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.mkdet{display:grid;grid-template-columns:auto 1fr;gap:26px;margin-top:14px;flex:1;min-height:0;overflow:hidden}
.mkimg{max-width:640px}.mkimg .tbimg,.mkcrop .tbimg{display:block}.mkpg .tbimg.mkfull img{width:100%;height:auto;max-width:none;max-height:none;display:block}
.mkpg .tbimg i{width:26px;height:26px;font-size:12px}
.mkzoom{display:flex;gap:10px;margin-top:10px}.mkzoom small{display:block;font-size:10px;font-weight:700;color:#C23B2A;margin-bottom:3px;letter-spacing:.06em;text-transform:uppercase}
.mkcrop{position:relative;overflow:hidden;border:1px solid #D8CEC0;background:#f6f3ee}
.mkptab{width:100%;border-collapse:collapse;font-size:12.5px;line-height:1.45}
.mkptab th{text-align:left;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:#6A6057;font-weight:700;padding:0 8px 6px 0;border-bottom:1.5px solid #2B211B}
.mkptab td{padding:8px 8px 8px 0;border-bottom:1px solid #E6DED2;vertical-align:top}.mkptab td:first-child{width:30px}.mkptab td:nth-child(2){width:78px}.mkptab td:last-child{width:18px;padding-right:0}
.mkul{margin:0;padding-left:18px;font-size:13px;line-height:1.55}.mkul.dont li::marker{content:"✕  ";color:#C23B2A}
.mkleg{margin:0;font-size:11.5px;line-height:1.6;color:#6A6057}
.mkadd{margin-bottom:10px;font-size:12.5px}.mkadd>b{color:#C23B2A}.mkadd>span{color:#6A6057}
.mkqa{border-bottom:1px solid #E6DED2;padding:7px 0;font-size:12.5px;line-height:1.5}.mkqa small{display:block;color:#6A6057;font-size:10.5px}
.mktl2{position:relative;height:98px;margin:4px 0 0}
.mktbar{position:absolute;left:0;right:0;top:44px;height:10px;border-top:1px solid #2B211B;border-bottom:1px solid #2B211B}
.mktbar i{position:absolute;top:1px;height:8px}
.mktod{position:absolute;top:30px;height:34px;border-left:1.5px solid #C23B2A}.mktod em{position:absolute;top:-30px;left:-22px;font-style:normal;font-size:10px;color:#C23B2A;font-weight:700;white-space:nowrap}
.mktlb{position:absolute;transform:translateX(-50%);font-size:10.5px;color:#6A6057;white-space:nowrap;text-align:center;line-height:1.25}.mktlb b{display:block;color:#2B211B;font-size:11px}
.mktlb.mkr0{top:60px}.mktlb.mkr1{top:14px}
.mktfin{position:absolute;right:0;top:72px;font-size:10.5px;color:#6A6057;display:none}
/* ===== v87 brief ↔ papan ===== */
.tbm{position:relative}.tbm .mkgo{position:absolute;right:-4px;top:-8px;background:var(--ink);color:var(--paper);font-size:10.5px;font-weight:700;padding:2px 7px;font-style:normal}
.mkfwd{margin-top:12px;border:1px solid var(--line);background:var(--paper)}
.mkfh{padding:10px 12px 8px;border-bottom:1px solid var(--line)}.mkfh b{display:block;font-size:13.5px}.mkfh .sub{font-size:12px}
.mkfk{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:10px 12px 2px}
.mkfr{display:flex;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid var(--soft,var(--line));font-size:13.5px}.mkfr:last-child{border-bottom:0}
.mkfr>span:first-child{flex:1;min-width:0}
.mkon{font-size:12px;font-weight:700;color:var(--sage,#5C6A45);white-space:nowrap}
.v3grp,.mkkg{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted,#6A6057);font-weight:700;margin:12px 0 4px}
.v3grp:first-child,.mkkg:first-child{margin-top:2px}
.mkpbd{display:inline-flex;width:20px;height:20px;border-radius:50%;background:#C23B2A;color:#fff;font-size:10.5px;font-weight:700;align-items:center;justify-content:center;margin-right:6px;vertical-align:-1px;font-family:Archivo,var(--sans)}
.mkpk{font-style:normal;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-right:2px}
.mkpg .mkpbd{width:16px;height:16px;font-size:9px}
.mkkir .mkkg{display:block;border:0;padding:0;margin:12px 0 2px;font-size:9.5px;letter-spacing:.14em}.mkkir .mkkg:first-child{margin-top:0}
/* ===== v88 daftar poin ===== */
.ptl{margin:14px 0 6px;border:1px solid var(--line);background:var(--paper)}
.ptlh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px 10px;border-bottom:1px solid var(--line)}
.ptlh b{display:block;font-size:15px}.ptlh .sub{font-size:12.5px}
.ptcount{font-size:12px;color:var(--muted);white-space:nowrap}
.ptempty{padding:16px 14px;font-size:13.5px;color:var(--muted);line-height:1.55}
.ptr{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}
.ptr.pend{background:color-mix(in srgb,var(--paper) 85%,#E4B23A 15%)}
.ptn{width:28px;height:28px;border-radius:50%;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;font-family:Archivo,var(--sans)}
.ptm{min-width:0;display:flex;flex-direction:column;gap:6px}
.pttop{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ptsel{height:30px;border:1px solid var(--line);background:var(--field,var(--paper));color:var(--ink);font:inherit;font-size:12.5px;padding:0 8px;border-radius:0}
.ptrv{font-size:11px;font-weight:700;color:var(--warn)}.ptnew{font-size:10.5px;font-weight:700;color:#fff;background:var(--warn);padding:1px 6px}.ptok{font-size:11.5px;font-weight:700;color:var(--sage,#5C6A45)}
.ptt{height:40px;border:1px solid var(--line);background:var(--field,#fff);color:var(--ink);font:inherit;font-size:15px;font-weight:600;padding:0 10px;border-radius:0;width:100%}
.ptd{border:1px solid var(--line);background:var(--field,#fff);color:var(--ink);font:inherit;font-size:13.5px;padding:7px 10px;border-radius:0;width:100%;resize:vertical;min-height:36px}
.ptimgs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:2px}
.ptsrc{position:relative;padding:0;border:1px solid var(--line);background:#fff;cursor:pointer;line-height:0}
.ptsrc small{position:absolute;left:4px;bottom:4px;background:rgba(43,33,27,.82);color:#fff;font-size:10.5px;font-weight:700;padding:2px 6px;line-height:1.3}
.ptcrop{position:relative;overflow:hidden;background:#f2eee7}
.ptcrop .tbimg{display:block}.ptcrop .tbimg.mkfull img,.mkfull img{width:100%;height:auto;max-width:none;max-height:none;display:block}
.ptarr{color:var(--warn);font-weight:700;font-size:18px}
.ptref{position:relative;width:88px;height:88px;border:1px solid var(--line);background:#fff}
.ptref a{display:block;width:100%;height:100%}.ptref img{width:100%;height:100%;object-fit:cover;display:block}
.ptref em{position:absolute;left:3px;top:3px;font-style:normal;font-size:9px;font-weight:700;background:#fff;color:var(--muted);padding:0 4px;border:1px solid var(--line)}.ptref em.pin{color:#BD081C;border-color:#BD081C}
.ptrx{position:absolute;right:-8px;top:-8px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:14px;line-height:1;cursor:pointer;padding:0}
.ptadd2{width:88px;height:88px;border:1.5px dashed var(--muted);background:transparent;color:var(--muted);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.25}
.ptadd2 i{font-style:normal;font-size:20px;line-height:1}
.ptadd2:hover,.ptsrc:hover{border-color:var(--ink);color:var(--ink)}
.ptat{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.ptat>span{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;width:46px}
.ptc{height:28px;padding:0 10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:12px;cursor:pointer;border-radius:0}
.ptc.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.ptxs{display:flex;flex-direction:column;gap:6px}
.ptxs button{min-width:34px;height:32px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font-size:15px;border-radius:0;padding:0 6px}
.ptxs button.cf{background:var(--warn);color:#fff;border-color:var(--warn);font-size:11.5px;font-weight:700}
.ptxs button:disabled{opacity:.35;cursor:default}
.ptadd{display:flex;gap:8px;padding:12px 14px;flex-wrap:wrap}
@media(max-width:640px){.ptr{grid-template-columns:28px minmax(0,1fr);}.ptxs{grid-column:2;flex-direction:row}.ptref,.ptadd2{width:76px;height:76px}}
/* picker: Pinterest & tempel */
html.mkopen #tbpk{z-index:450}
.pkpin,.pkclip{padding:6px 2px}
.pkpin p{margin:0 0 10px;font-size:14px;line-height:1.55}
.pkpr{display:flex;gap:8px}.pkpr input{flex:1;min-width:0;height:46px;border:1px solid var(--line);background:var(--field,#fff);color:var(--ink);font:inherit;font-size:15px;padding:0 12px;border-radius:0}
.pkpaste{margin-top:10px;border:1.5px dashed var(--line);padding:22px;text-align:center;color:var(--muted);font-size:13.5px;outline:none;min-height:64px}
.pkpaste:focus{border-color:var(--ink);color:var(--ink)}
.pkclip .pkup{width:100%;text-align:left;font:inherit;color:var(--ink);cursor:pointer}
/* editor coret: panel poin */
.mkp2t{width:100%;box-sizing:border-box;height:40px;border:1px solid #D8CEC0;background:#fff;color:#2B211B;font:inherit;font-size:15px;font-weight:600;padding:0 10px;border-radius:0;margin-bottom:6px}
.mkrefs{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.mkref{position:relative;width:64px;height:64px;border:1px solid #D8CEC0;background:#fff}
.mkref img{width:100%;height:100%;object-fit:cover;display:block}
.mkref em{position:absolute;left:2px;top:2px;font-style:normal;font-size:8.5px;font-weight:700;background:#fff;padding:0 3px;color:#BD081C}
.mkref button{position:absolute;right:-7px;top:-7px;width:20px;height:20px;border-radius:50%;border:1px solid #D8CEC0!important;background:#fff!important;color:#2B211B!important;font-size:13px;line-height:1;padding:0!important}
.mkradd{width:64px;height:64px;border:1.5px dashed #6A6057!important;color:#6A6057!important;font-size:10.5px!important;font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center}
.mkradd b{font-size:18px;font-weight:400}
.mkat{display:flex;gap:4px;align-items:center;flex-wrap:wrap;margin-top:6px}
.mkat>span{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:#6A6057;font-weight:700;width:40px}
.mkat button{font-size:11px!important;padding:3px 8px!important;border:1px solid #D8CEC0!important;background:#fff!important;color:#2B211B!important}
.mkat button.on{background:#2B211B!important;color:#F3ECE2!important;border-color:#2B211B!important}
/* papan: kartu poin */
.bdpt{position:absolute;background:#fff;border:1px solid var(--line,#D8CEC0);border-top:3px solid #2B211B;box-shadow:0 6px 16px rgba(43,33,27,.14);padding:8px 10px 10px;color:#2B211B;cursor:grab}
.bdpt.sel{outline:2px solid var(--tim,#3E5C76);outline-offset:3px}
.bdpth{display:flex;gap:8px;align-items:flex-start}
.bdpth i{flex:none;width:22px;height:22px;border-radius:50%;color:#fff;font-style:normal;font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;font-family:Archivo,sans-serif}
.bdpth b{display:block;font-size:12.5px;line-height:1.3}.bdpth small{display:block;font-size:10px;color:#6A6057;letter-spacing:.06em;text-transform:uppercase}
.bdpt p{margin:6px 0 0;font-size:11.5px;line-height:1.4;color:#4A3F37;max-height:30px;overflow:hidden}
.bdptr{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.bdptr span{position:relative;display:block;overflow:hidden;background:#f2eee7}.bdptr img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.bdptr em{position:absolute;left:3px;top:3px;font-style:normal;font-size:8.5px;font-weight:700;background:#fff;color:#BD081C;padding:0 3px}
.bdptk{margin-top:6px;font-size:10.5px;color:#6A6057}
/* portal: detail poin */
.v3chk label{flex-wrap:wrap}
.v3ptd{flex-basis:100%;padding-left:28px;font-size:13px;color:#4A3F37}
.v3ptd p{margin:2px 0 6px;line-height:1.5}
.v3ba{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.v3baf,.v3bar{position:relative;display:block;border:1px solid #DCD2C4;background:#fff;line-height:0}
.v3baf>span,.v3bar>span{position:absolute;left:3px;top:3px;z-index:2;font-size:9px;font-weight:700;background:#fff;padding:1px 4px;line-height:1.2;color:#2E241E}
.v3bar>span{color:#BD081C}
.v3bar img{width:96px;height:96px;object-fit:cover;display:block}
.v3baa{color:#C23B2A;font-size:16px}
.v3tk{font-size:12px;color:#6A6057;margin:6px 0 0}
/* PDF */
.ptpref{display:flex;gap:6px;align-items:center;margin:4px 0 8px}
.ptpref span{position:relative;width:86px;height:64px;border:1px solid #D8CEC0;display:block;overflow:hidden}
.ptpref span img{width:100%;height:100%;object-fit:cover;display:block}
.ptpref span em{position:absolute;left:2px;top:2px;font-style:normal;font-size:8px;font-weight:700;background:#fff;color:#BD081C;padding:0 3px}
.ptop{margin-top:12px;display:grid;gap:10px}
.ptoprow{display:grid;grid-template-columns:24px 1fr 18px;gap:12px;border-bottom:1px solid #E6DED2;padding-bottom:10px;font-size:13px}
.ptoprow p{margin:3px 0 0;color:#6A6057}
/* hasil meeting klien */
.rvcard .rvrow{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:11px 0;cursor:pointer;color:var(--ink);font:inherit}
.rvno{font-family:Archivo,var(--sans);font-weight:600;font-size:13px}
.rvm b{display:block;font-size:14px}.rvm small{color:var(--muted);font-size:12px}
.rvst{font-size:11.5px;font-weight:700;padding:3px 9px;border:1px solid currentColor;white-space:nowrap}
.rvst.draft{color:var(--muted)}.rvst.wait{color:#9A7650}.rvst.ok{color:var(--sage,#5C6A45)}
#rvov{position:fixed;inset:0;z-index:300;background:rgba(20,16,13,.55);display:flex;justify-content:center}
#rvov[hidden]{display:none}
html.rvopen,html.rvopen body{overflow:hidden}
.rvsheet{background:var(--bg);color:var(--ink);width:min(980px,100%);height:100%;display:flex;flex-direction:column;position:relative;box-shadow:0 0 60px rgba(0,0,0,.3)}
.rvhead{display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap;padding-top:calc(12px + env(safe-area-inset-top))}
.rvhead>div:nth-child(2){flex:1;min-width:180px}.rvhead b{display:block;font-size:17px}
.rvx{width:40px;height:40px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:18px;cursor:pointer}
.rvtabs{display:flex;border:1px solid var(--line)}.rvtabs button{height:36px;padding:0 14px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.rvtabs button.on{background:var(--ink);color:var(--paper)}
.rvbody{flex:1;overflow:auto;padding:18px 20px 30px;-webkit-overflow-scrolling:touch}
.rvgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}
.rvgrid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;margin-top:8px}
.rvlock{background:var(--paper);border-left:3px solid var(--sage,#5C6A45);padding:10px 14px;font-size:13.5px;margin-bottom:12px}
.rvfoot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line)}
.rvmsg{flex:1;min-width:160px;font-size:12.5px;color:var(--muted)}
.rvfwd{font-size:12.5px;font-weight:700;color:var(--sage,#5C6A45)}
.rvdocwrap{background:#E9E4DC;padding:14px 0;margin:-18px -20px}
.rvdec{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}
.rvdec p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}
.rvdv{font-size:12px;font-weight:700;padding:3px 8px;border:1px solid currentColor;color:var(--muted)}
.rvdec.ok .rvdv,.rvdec.note .rvdv{color:var(--sage,#5C6A45)}.rvdec.no .rvdv{color:var(--warn)}
.rvsig{padding:12px 14px}.rvsig img{max-height:80px;background:#fff;border:1px solid var(--line);padding:4px}
.rvfs{position:absolute;inset:0;background:rgba(20,16,13,.5);display:flex;align-items:flex-end;justify-content:center;z-index:3}
.rvfsb{background:var(--paper);width:min(560px,100%);padding:18px 18px calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px}
.rvfsb b{font-size:16px}.rvfo{text-align:left;border:1px solid var(--line);background:var(--bg);padding:10px 12px;cursor:pointer;color:var(--ink);font:inherit}.rvfo b{display:block;font-size:14px}.rvfo small{color:var(--muted);font-size:12px}
#rvpdf{position:absolute;left:-30000px;top:0;width:794px}
@media(max-width:700px){.rvgrid{grid-template-columns:1fr 1fr}.rvgrid3{grid-template-columns:1fr}.rvbody{padding:14px 12px 24px}.rvdocwrap{margin:-14px -12px}}
.mkside button,.mkside input,.mkside textarea{scroll-margin-top:60px}
.bdptr.one{grid-template-columns:1fr}
.bdpth{padding-right:34px}
.ptpn{flex:none;width:18px;height:18px;border-radius:50%;color:#fff;font-size:9.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;align-self:flex-start}
.ptimgs.bare .ptadd2{width:auto;height:32px;flex-direction:row;padding:0 12px;gap:6px;font-size:12px;border-width:1px}
.ptimgs.bare .ptadd2 i{font-size:15px}.ptimgs.bare .ptadd2 br{display:none}
.v3chk label>span{flex:1 1 0;min-width:0}
.ptadd2{text-align:center;padding:0 6px}
/* ===== v91 alat Area ===== */
.mkarbar{flex:none;background:#2A231F;border-top:1px solid #3A312B;padding:8px 12px 6px;display:flex;flex-direction:column;gap:6px}
.mkarr{display:flex;gap:6px;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
.mkarr::-webkit-scrollbar{display:none}
.mkarr>b{font-size:13px;color:#F3ECE2;margin-right:auto;white-space:nowrap}
.mkarr>span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#A99E92;font-weight:700;width:42px;flex:none}
.mkarr button{flex:none;height:34px;padding:0 10px!important;border:1px solid #4A3F37!important;border-radius:8px;font-size:12.5px!important;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#F3ECE2!important}
.mkarr button.on{background:#F3ECE2!important;color:#2B211B!important;border-color:#F3ECE2!important}
.mkarr button.ok{background:#E4B23A!important;color:#2B211B!important;border-color:#E4B23A!important;font-weight:700}
.arsw{display:inline-block;width:16px;height:16px;border:1.5px solid currentColor;border-radius:3px;flex:none}
.arsw.f-hatch{background:repeating-linear-gradient(135deg,currentColor 0 1.5px,transparent 1.5px 4px)}
.arsw.f-cross{background:repeating-linear-gradient(135deg,currentColor 0 1.2px,transparent 1.2px 4px),repeating-linear-gradient(45deg,currentColor 0 1.2px,transparent 1.2px 4px)}
.arsw.f-dots{background:radial-gradient(currentColor 1.1px,transparent 1.3px) 0 0/4px 4px}
.arsw.f-solid{background:color-mix(in srgb,currentColor 35%,transparent)}
.arsw.f-spot{background:#1C1714;box-shadow:inset 0 0 0 3px #A99E92}
.arsw.f-none{background:transparent}
.arsw.l-solid{border-style:solid}.arsw.l-dash{border-style:dashed}.arsw.l-none{border-color:transparent;background:repeating-linear-gradient(135deg,transparent 0 3px,#6A6057 3px 4px)}
/* v92 — kartu poin: foto utuh */
.bdptr.v92{display:block;position:relative}
.bdptr.v92 span{position:absolute;overflow:hidden;background:#f2eee7}
.bdptr.v92 img{max-width:none;object-fit:fill}
.bdptr.v92 u{position:absolute;right:3px;bottom:3px;text-decoration:none;font-size:10px;line-height:1;background:rgba(255,255,255,.9);color:#2B211B;padding:2px 3px}
/* v92 — editor bingkai foto */
#crov{position:fixed;inset:0;z-index:9500;background:#1C1714;display:flex;flex-direction:column;color:#EFE8DE;font-family:inherit}
#crov[hidden]{display:none}
.crhd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top))}
.crhd b{font-weight:500;font-size:15px}
#crov button{background:transparent;border:1px solid #5A4F47;color:#EFE8DE;font:inherit;font-size:13px;height:38px;padding:0 14px;cursor:pointer;border-radius:0}
#crov button.ok{background:#E4B23A;border-color:#E4B23A;color:#1C1714;font-weight:600}
.crtabs{display:flex;gap:6px;padding:0 12px 8px;overflow-x:auto;flex:none}
#crov .crtabs button{padding:0;width:50px;height:50px;flex:none;opacity:.5}
#crov .crtabs button.on{opacity:1;border:2px solid #E4B23A}
.crtabs img{width:100%;height:100%;object-fit:cover;display:block}
.crst{flex:1;position:relative;min-height:0}
.crpic{position:absolute;touch-action:none;user-select:none;-webkit-user-select:none}
.crpic>img{width:100%;height:100%;display:block;pointer-events:none}
.crdim{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.crhole{position:absolute;box-shadow:0 0 0 9999px rgba(28,23,20,.66)}
.crbox{position:absolute;outline:1.5px solid #fff;cursor:move;touch-action:none;background-image:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35)),linear-gradient(90deg,rgba(255,255,255,.35),rgba(255,255,255,.35)),linear-gradient(90deg,rgba(255,255,255,.35),rgba(255,255,255,.35));background-size:100% 1px,100% 1px,1px 100%,1px 100%;background-position:0 33.3%,0 66.6%,33.3% 0,66.6% 0;background-repeat:no-repeat}
.crbox i{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;background:#fff;border:2px solid #1C1714;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.4);touch-action:none}
.crbox i::after{content:'';position:absolute;inset:-14px}
.crbox i[data-crh=nw]{left:0;top:0;cursor:nwse-resize}.crbox i[data-crh=ne]{left:100%;top:0;cursor:nesw-resize}
.crbox i[data-crh=sw]{left:0;top:100%;cursor:nesw-resize}.crbox i[data-crh=se]{left:100%;top:100%;cursor:nwse-resize}
.crft{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px calc(12px + env(safe-area-inset-bottom));font-size:12.5px;line-height:1.45;color:#BDB2A6;flex:none}
.crft b{color:#EFE8DE;font-weight:500}
/* v92 — area polyline */


.arsw.g-line{border:none;border-radius:0;background:linear-gradient(135deg,transparent 46%,currentColor 46% 56%,transparent 56%)}
.arsw.g-arc{border:none;border-radius:0;border-top:2px solid currentColor;border-radius:50% 50% 0 0/100% 100% 0 0;height:9px;margin-top:5px}
.mkarr.arhelp small{font-size:11.5px;color:#BDB2A6;display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.mkarr.arhelp i{display:inline-block;width:9px;height:9px;background:#3E5C76;border:1px solid #fff}
.mkarr.arhelp i.g2{border-radius:50%;background:#fff;border:1.5px solid #3E5C76}
/* v93 — atur potongan di dokumen klien */
.crmk,.crmk .tbimg{width:100%;height:100%;display:block;pointer-events:none}
.crmk img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:fill!important;display:block}
.rvcrb{position:absolute;right:6px;top:6px;z-index:3;background:rgba(43,33,27,.88);color:#fff;border:0;font:inherit;font-size:11.5px;padding:6px 9px;cursor:pointer;border-radius:4px}
.rd-ref{position:relative}
.rvcrhint{max-width:794px;margin:0 auto 10px;background:#FFF7E6;border:1px solid #E9D3A6;color:#5B4A2E;font-size:13px;padding:9px 12px;line-height:1.45}
/* ===== v96 — Jalur & Buku kas ===== */
.v56stg.jlbar{grid-template-columns:repeat(8,1fr)}
.v56stg i.w{background:var(--soft)}.v56stg i.n{background:transparent;border:1px dashed #D3C9BC}.v56stg i.cur{box-shadow:0 0 0 1.5px #C9A25E}
.jlrail{display:grid;grid-template-columns:110px repeat(8,minmax(0,1fr));background:#fff;border:1px solid var(--line,#DDD3C6);padding:16px 14px 12px;margin-top:16px}
.jlst{position:relative;align-self:start;background:none;border:0;text-align:left;padding:0 6px 4px;font:inherit;color:inherit;cursor:pointer;min-width:0}
.jlst .d{width:28px;height:28px;border-radius:50%;border:2px solid #2A211B;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:500;position:relative;z-index:2}
.jlst:not(:last-of-type)::after{content:'';position:absolute;left:36px;right:-6px;top:13px;height:2px;background:#D3C9BC}
.jlst.d .d{background:#2A211B;color:#F3ECE2}.jlst.d::after{background:#2A211B!important}
.jlst.p .d,.jlst.a .d{border-color:#C9A25E}.jlst.a .d{border-color:#B04E45}
.jlst.cur .d{background:#C9A25E;border-color:#C9A25E;color:#2A211B;box-shadow:0 0 0 5px rgba(201,162,94,.25)}
.jlst.n .d{border-style:dashed;border-color:#C8BCAE;color:#A99E92}
.jlst b{display:block;font-weight:500;font-size:13.5px;margin-top:8px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jlst small{display:block;font-size:11.5px;color:var(--muted);margin-top:2px}
.jlst.a small{color:#B04E45}
.jlpick{background:#fff;border:1px solid #2A211B;padding:12px 14px;margin-top:8px}
.jlpick b{font-weight:500;margin-right:8px}
.jllwrap{margin-top:8px}
.jlrail>.jll{align-self:start;margin-top:8px}
.jllanes{background:#fff;border:1px solid var(--line,#DDD3C6);padding:6px 14px}
.jllanes.head{margin-top:14px}
.jlr{display:grid;grid-template-columns:110px repeat(8,minmax(0,1fr));align-items:center;min-height:52px;border-top:1px solid #F1EBE2;position:relative}
.jlr:first-child{border-top:0}
.jlh{min-height:40px;font-size:12.5px;font-weight:500}
.jlh span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:6px}.jlh span.cur{color:#8C6D48}.jlh span.off{color:#B6AB9E}
.jll{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;display:flex;align-items:center;gap:7px;grid-row:1;grid-column:1}
.jll i{width:9px;height:9px;display:inline-block}
.jlh .jll{color:var(--muted);font-weight:400}
.jlseg{grid-row:1;height:6px;background:color-mix(in srgb,var(--c) 14%,#fff)}
.jlchip{grid-row:1;z-index:2;justify-self:start;font-size:11.5px;line-height:1.25;padding:4px 8px;background:#fff;border:1px dashed #B9AC9C;color:var(--muted);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jlchip small{display:block;font-size:10px;opacity:.85}
.jlchip.in{background:#2A211B;border:1px solid #2A211B;color:#F3ECE2}
.jlchip.part{border:1px solid #C9A25E;color:#2A211B;background:#FBF4E6}
.jlchip.due{border:1px solid #B04E45;color:#8E3A2C;background:#F6E9E6}
.jlchip.out{border:1px solid #A3412F;color:#A3412F}
.jlnone{grid-row:1;font-size:12px;color:var(--muted)}
.jlgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;margin-top:16px}
.jlnow{background:#2A211B;color:#F3ECE2;padding:20px 22px}
.jlnow .k,.jlmoney .k,.jlnext .k,.kashead .k,.kassum .k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:400}
.jlnow .k{color:#BFB2A3}
.jlnow .jlt{font-size:24px;font-weight:500;margin:6px 0 0;color:#F3ECE2;line-height:1.2}
.jlnow p{color:#D9CFC3;font-size:14.5px;margin:8px 0 0;line-height:1.5}
.jlbtns{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;align-items:center}
.jlnow .bt{border:1px solid #F3ECE2;color:#F3ECE2;background:none;padding:9px 14px;font:inherit;font-size:13.5px;text-decoration:none;cursor:pointer}
.jlnow .bt.p{background:#C9A25E;border-color:#C9A25E;color:#2A211B;font-weight:500}
.jlnow .phbtn,.jlnow label.b{background:transparent;color:#F3ECE2;border-color:#F3ECE2}
.jlnext{background:#fff;border:1px solid var(--line,#DDD3C6);padding:16px 20px;margin-top:12px}
.jlnext .k{color:var(--muted)}
.jlt2{font-size:18px;font-weight:500;margin:4px 0 0;line-height:1.25}
.jlt2 small{font-size:12.5px;color:var(--muted);font-weight:400;margin-left:6px}
.jlnext p{font-size:13.5px;color:var(--muted);margin:4px 0 0}
.jllinks{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:13.5px}
.jllinks a,.jllinks .lk{color:var(--muted);border:0;border-bottom:1px solid #C8BCAE;background:none;padding:0;font:inherit;cursor:pointer;text-decoration:none}
.jlmoney{background:#fff;border:1px solid var(--line,#DDD3C6);padding:18px 20px;align-self:start}
.jlmoney .k{color:var(--muted)}
.jlpb{height:10px;background:#EEE6DB;position:relative;margin-top:10px}.jlpb i{position:absolute;left:0;top:0;bottom:0;background:#2A211B}.jlpb u{position:absolute;top:-4px;bottom:-4px;width:2px;background:#A3412F}
.jlpl{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:5px}
.jlrow{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding:8px 0;border-top:1px solid #F0E9DF}
.jlrow:first-of-type{margin-top:8px}.jlrow b{font-weight:500}.jlrow.tot{border-top:1px solid #2A211B}
.jlalert{background:#F6E9E6;border:1px solid #E8C9C1;color:#7A3426;font-size:13px;padding:9px 11px;margin-top:10px;line-height:1.45}
.jlmore{margin-top:22px;border-top:1px solid var(--line,#DDD3C6);padding-top:10px}
.jlmore>summary{cursor:pointer;font-weight:500;font-size:14px;padding:6px 0}
.kashead{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-top:6px}
.kashead .k{color:var(--muted)}
.kast{font-size:28px;font-weight:500;margin:4px 0 0;line-height:1.1}
.kast i{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;color:#8C6D48;font-size:32px}
.kassum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#2A211B;color:#F3ECE2;margin-top:14px}
.kassum>div{padding:14px 18px;border-left:1px solid #43372E}.kassum>div:first-child{border-left:0}
.kassum .k{color:#BFB2A3}.kassum b{display:block;font-size:22px;font-weight:500;margin-top:4px}.kassum b.neg{color:#F0A898}.kassum small{font-size:12px;color:#CFC3B5}
.kaspk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.kaspk .pk{background:#fff;border:1px solid var(--line,#DDD3C6);border-top:4px solid #2A211B;padding:14px 16px}
.kaspk .pk.p{border-top-color:#5B6B57}.kaspk .pk.f{border-top-color:#8C6D48}
.kaspk h3{font-size:16px;font-weight:500;display:flex;justify-content:space-between;gap:8px;margin:0 0 4px;text-transform:none;letter-spacing:0}
.kaspk h3 span{font-size:12px;color:var(--muted);font-weight:400}
.kaspk .r{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:7px 0;border-top:1px solid #F0E9DF}
.kaspk .r b{font-weight:500}.kaspk .r.tot{border-top:1px solid #2A211B}.kaspk .r.hid{color:var(--muted);font-size:12.5px}.kaspk .neg{color:#A3412F}
.kasbot{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:12px;margin-top:12px}
.kasbot .led,.kasbot .cl{background:#fff;border:1px solid var(--line,#DDD3C6);padding:14px 16px}
.kasbot h3{font-size:16px;font-weight:500;margin:0 0 6px;text-transform:none;letter-spacing:0}
.kasbot .li{display:grid;grid-template-columns:56px minmax(0,1fr) 82px 120px;gap:8px;font-size:13px;padding:8px 0;border-top:1px solid #F0E9DF;align-items:center}
.kasbot .li .dt{color:var(--muted);font-size:12px}
.kasbot .tg{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:2px 6px;color:#fff;justify-self:start;background:#2A211B}.kasbot .tg.p{background:#5B6B57}
.kasbot .am{text-align:right;font-weight:500}.kasbot .am.o{color:#A3412F}
@media (max-width:820px){
  .jlrail{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:14px}.jlrail>.jll{display:none}.jlst:nth-child(4n+1)::after{display:none}
  .jllanes{overflow-x:auto}.jlr{min-width:760px}.jllwrap{display:none}.jlst b{white-space:normal;overflow:visible}
  .jlgrid,.kasbot,.kaspk{grid-template-columns:1fr}
  .kassum{grid-template-columns:1fr 1fr}.kassum>div:nth-child(3){border-left:0}
  .kasbot .li{grid-template-columns:48px minmax(0,1fr) 96px}.kasbot .li .tg{display:none}
}

/* ===================== v97 — desain ulang (aman di gelap & terang) ===================== */
:root{--v7och:#93641F;--v7och-bg:rgba(147,100,31,.10);--v7ochInk:#FFF8EE;--v7warn:#A3412F;--v7warn-bg:rgba(163,65,47,.08);--v7sage:#4F6145;--v7sage-bg:rgba(79,97,69,.10);--v7blue:#3E5C76;--v7raise:#EBE3D7;--v7line2:rgba(42,33,27,.26);--v7btn:#2A211B;--v7btnInk:#F6F0E6}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--v7och:#D9A867;--v7och-bg:rgba(217,168,103,.13);--v7ochInk:#1D150F;--v7warn:#EC9483;--v7warn-bg:rgba(236,148,131,.11);--v7sage:#AEBE95;--v7sage-bg:rgba(174,190,149,.11);--v7blue:#9DB4CF;--v7raise:#2C241F;--v7line2:rgba(239,230,216,.24);--v7btn:#EFE6D8;--v7btnInk:#17120F}}
:root[data-theme="dark"]{--v7och:#D9A867;--v7och-bg:rgba(217,168,103,.13);--v7ochInk:#1D150F;--v7warn:#EC9483;--v7warn-bg:rgba(236,148,131,.11);--v7sage:#AEBE95;--v7sage-bg:rgba(174,190,149,.11);--v7blue:#9DB4CF;--v7raise:#2C241F;--v7line2:rgba(239,230,216,.24);--v7btn:#EFE6D8;--v7btnInk:#17120F}
/* tab proyek: huruf biasa, garis emas */
.ptabs.v2pt{gap:4px}
.ptabs.v2pt a{padding:12px 14px 13px;font-size:14px!important;letter-spacing:0!important;text-transform:none!important;font-weight:500}
.ptabs.v2pt a.on{box-shadow:inset 0 -2px 0 var(--v7och);font-weight:600}
.v7{color:var(--ink)}
.v7 *,.v7 *::before,.v7 *::after{box-sizing:border-box}
.v7card{background:var(--paper);border:1px solid var(--line);border-radius:14px}
.v7pad{padding:20px 22px}
.v7lbl{font-size:12.5px;font-weight:500;color:var(--muted)}
.v7note{font-size:13px;color:var(--muted);line-height:1.5;margin:0}
.v7t2{font-family:var(--display,inherit);font-weight:600;font-size:19px;line-height:1.25;color:var(--ink)}
.v7t2 small{font-family:var(--sans,inherit);font-size:12.5px;color:var(--muted);font-weight:400;margin-left:6px}
.v7big{font-family:var(--display,inherit);font-weight:600;font-size:28px;line-height:1.1}
.n,.v7big{font-variant-numeric:tabular-nums}
.v7neg{color:var(--v7warn)!important}.v7pos{color:var(--v7sage)!important}
.v7btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:10px;border:1px solid var(--v7line2);background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;text-decoration:none}
.v7btn.sm{min-height:36px;padding:0 13px;font-size:13.5px;border-radius:9px}
.v7btn.och{background:var(--v7och);border-color:var(--v7och);color:var(--v7ochInk)}
.v7btn.pri{background:var(--v7btn);border-color:var(--v7btn);color:var(--v7btnInk)}
.v7btn.ghost{border-color:transparent;color:var(--muted)}
.v7btn:focus-visible,.v7st:focus-visible,.v7filt button:focus-visible{outline:2px solid var(--v7och);outline-offset:2px}
.v7acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;align-items:center}
.v7who{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink)}
.v7who i{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:700}
.v7who.k i{background:var(--v7och);color:var(--v7ochInk)}.v7who.c i{background:var(--v7blue);color:#fff}.v7who.t i{background:var(--v7sage);color:#fff}.v7who.v i{background:var(--v7raise);color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .v7who.c i,:root:not([data-theme="light"]) .v7who.t i{color:#141210}}
:root[data-theme="dark"] .v7who.c i,:root[data-theme="dark"] .v7who.t i{color:#141210}
.v7pill{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500;background:var(--v7raise);color:var(--ink);white-space:nowrap}
.v7pill i{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block;flex:none}
.v7pill.w{background:var(--v7warn-bg);color:var(--v7warn)}.v7pill.o{background:var(--v7och-bg);color:var(--v7och)}.v7pill.s{background:var(--v7sage-bg);color:var(--v7sage)}
.v7rows{margin-top:10px}
.v7row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:14px}
.v7row:first-child{border-top:0}
.v7row b{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.v7row small{display:block;font-size:12px;color:var(--muted)}
.v7row.tot{border-top:1px solid var(--v7line2)}
.v7row.v7hid,.v7row.v7hid b{color:var(--muted);font-size:13px}
.v7ok{margin-top:14px;padding:11px 13px;border-radius:10px;background:var(--v7sage-bg);color:var(--v7sage);font-size:13.5px;line-height:1.45}
.v7warn{margin-top:14px;padding:11px 13px;border-radius:10px;background:var(--v7warn-bg);color:var(--v7warn);font-size:13.5px;line-height:1.45}
.v7cols{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;margin-top:20px}
.v7cols>.v7l{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:14px}
.v7cols>.v7r{flex:1 1 330px;min-width:0}
/* jalur: garis dimensi */
.v7rail{padding:22px 26px 10px}
.v7railh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:22px;flex-wrap:wrap}
.v7dim{display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}
.v7 button.v7st{all:unset;box-sizing:border-box;position:relative;display:block!important;padding:0 12px 6px 0;cursor:pointer;min-width:0;border-radius:6px;text-align:left;font:inherit;color:var(--ink)}
.v7 .v7st>span{display:block!important}
.v7 .v7st .v7mm{display:none!important}
.v7ln{display:block;position:relative;height:28px}
.v7ln::before{content:'';position:absolute;left:0;right:0;top:13px;border-top:1.5px dashed var(--v7line2)}
.v7st.d .v7ln::before{border-top-style:solid;border-top-color:var(--ink)}
.v7st.p .v7ln::before,.v7st.a .v7ln::before{border-top-style:solid}
.v7st.cur .v7ln::before{border-top:3px solid var(--v7och);top:12px}
.v7st.cur.a .v7ln::before{border-top-color:var(--v7warn)}
.v7ln::after{content:'';position:absolute;left:0;top:4px;width:1.5px;height:20px;background:var(--ink);transform:skewX(-35deg)}
.v7st.w .v7ln::after,.v7st.n .v7ln::after{background:var(--v7line2)}
.v7k{display:block;font-family:var(--display,inherit);font-weight:600;font-stretch:125%;font-size:30px;line-height:1;margin-top:8px;font-variant-numeric:tabular-nums;color:var(--ink)}
.v7st.w .v7k,.v7st.n .v7k{color:var(--muted);opacity:.6}
.v7st.cur .v7k{color:var(--v7och);opacity:1}
.v7st.cur.a .v7k{color:var(--v7warn)}
.v7sx{display:block}
.v7nm{display:block;font-weight:600;font-size:14.5px;margin-top:8px;line-height:1.25}
.v7st.n .v7nm{color:var(--muted)}
.v7ss{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.v7st.a .v7ss{color:var(--v7warn)}
.v7st.cur .v7ss{font-weight:500;color:var(--v7och)}
.v7st.cur.a .v7ss{color:var(--v7warn)}
.v7here{position:absolute;top:-18px;left:0;font-size:11.5px;font-weight:600;color:var(--v7och);white-space:nowrap}
.v7st:hover .v7nm{text-decoration:underline;text-decoration-color:var(--v7line2);text-underline-offset:3px}
.v7mm{display:none}
.v7lanes{margin-top:18px;border-top:1px solid var(--line)}
.v7lane{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));align-items:start;padding:14px 0 2px;position:relative}
.v7lane+.v7lane{border-top:1px dashed var(--line)}
.v7lt{position:absolute;left:0;top:-9px;font-size:11.5px;font-weight:600;padding-right:8px;background:var(--paper);display:flex;align-items:center;gap:6px}
.v7lt i{width:8px;height:8px;border-radius:2px;display:inline-block}
.v7none{font-size:12.5px;color:var(--muted);padding:8px 0 10px}
.v7m{display:block;padding:7px 10px 8px;border-radius:9px;font-size:12px;line-height:1.3;border:1px dashed var(--v7line2);color:var(--muted);margin:6px 10px 10px 0;min-width:0}
.v7m b{display:block;font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v7m.in{border:1px solid transparent;background:var(--v7raise)}
.v7m.due{border:1px solid var(--v7warn);background:var(--v7warn-bg);color:var(--v7warn)}.v7m.due b{color:var(--v7warn)}
.v7m.out{border:1px solid var(--v7line2)}.v7m.out b{color:var(--v7warn)}
.v7m.part{border:1px solid var(--v7och);background:var(--v7och-bg)}.v7m.part b{color:var(--v7och)}
.v7pick{margin-top:10px;background:var(--paper);border:1px solid var(--v7och);border-radius:14px;padding:16px 18px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.v7pick b{display:block;font-weight:600}.v7pick span{font-size:13px;color:var(--muted)}
.v7pick .v7acts{margin-top:0}
.v7pick p{flex-basis:100%;margin:0;font-size:12.5px;color:var(--muted)}
/* sekarang, setelah itu */
.v7now{background:var(--v7raise);border-radius:14px;padding:24px 26px;position:relative;overflow:hidden}
.v7now::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--v7och)}
.v7nt{font-family:var(--display,inherit);font-weight:600;font-size:26px;line-height:1.2;margin-top:10px}
.v7now p{margin:8px 0 0;color:var(--ink);opacity:.85;font-size:15px;max-width:62ch;line-height:1.5}
.v7nx{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;padding:18px 22px}
.v7nx .v7big{font-stretch:125%;font-size:30px;color:var(--muted);line-height:1}
.v7nx p{margin:6px 0 0;font-size:13.5px;color:var(--muted)}
.v7links{display:flex;flex-wrap:wrap;gap:18px;padding:2px}
.v7links a,.v7links button{font:inherit;font-size:13.5px;color:var(--ink);opacity:.85;border:0;border-bottom:1px solid var(--v7line2);background:none;padding:0 0 1px;cursor:pointer;text-decoration:none}
.v7meter{position:relative;height:10px;border-radius:5px;background:var(--v7raise);margin-top:14px}
.v7meter i{position:absolute;left:0;top:0;bottom:0;border-radius:5px;background:var(--ink)}
.v7meter u{position:absolute;top:-5px;bottom:-5px;width:2px;background:var(--v7och)}
.v7mlg{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:7px}
.v7mlg span:last-child{color:var(--v7och)}
.v7more{margin-top:24px;border-top:1px solid var(--line)}
.v7more>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;cursor:pointer;font-size:14px;color:var(--muted)}
.v7more>summary::-webkit-details-marker{display:none}
.v7more>summary b{color:var(--ink);font-weight:600;margin-right:6px}
.v7moreb{padding-bottom:10px}
/* buku kas */
.v7kh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px}
.v7sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}
.v7sum>div{padding:20px 22px;border-left:1px solid var(--line)}
.v7sum>div:first-child{border-left:0}
.v7sum .v7big{margin-top:8px}
.v7sum small,.v7k4 small{display:block;margin-top:6px;font-size:12.5px;color:var(--muted);line-height:1.4}
.v7stops{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));font-size:12.5px;color:var(--muted);padding-bottom:10px}
.v7stops span{display:flex;gap:6px;align-items:baseline;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v7stops b{font-family:var(--display,inherit);font-stretch:125%;font-size:15px;color:var(--ink)}
.v7stops .c,.v7stops .c b{color:var(--v7och)}
.v7stops .off{opacity:.5}
.v7pk3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.v7pkh{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:10px;margin-bottom:4px;border-bottom:2px solid var(--c,var(--line))}
.v7pkh>span:last-child{font-size:12.5px;color:var(--muted)}
.v7tx{display:grid;grid-template-columns:64px minmax(0,1fr) 84px 132px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);font-size:14px}
.v7tx:first-child{border-top:0}
.v7d{color:var(--muted);font-size:12.5px}
.v7a{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.v7a.o{color:var(--v7warn)}
.v7tg{font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:6px;justify-self:start;background:var(--v7raise);color:var(--ink)}
.v7tg.p{background:var(--v7sage-bg);color:var(--v7sage)}
.v7doc{margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--bg)}
.v7doct{font-family:'Cormorant Garamond',Garamond,serif;font-size:24px;line-height:1.15;margin:4px 0 8px}
.v7doct i{color:var(--v7och)}
/* proyek berjalan */
.v7filt{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.v7filt button{min-height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--line);background:transparent;display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer}
.v7filt button b{font-weight:600}
.v7filt button.on{background:var(--v7btn);color:var(--v7btnInk);border-color:var(--v7btn)}
.v7grp{display:flex;align-items:center;gap:12px;margin:28px 0 10px;flex-wrap:wrap}
.v7tb{overflow-x:auto}
.v7pl{display:grid;grid-template-columns:minmax(200px,1.3fr) minmax(190px,1.1fr) minmax(220px,1.5fr) 170px 120px;gap:20px;align-items:center;padding:16px 22px;border-top:1px solid var(--line);min-width:1000px;color:var(--ink);text-decoration:none}
.v7pl.nm{grid-template-columns:minmax(200px,1.3fr) minmax(190px,1.1fr) minmax(220px,1.5fr) 120px;min-width:820px}
.v7pl:first-child{border-top:0}
.v7pl:hover:not(.hdr){background:var(--v7raise)}
.v7pl.hdr{padding-top:12px;padding-bottom:12px;font-size:12.5px;color:var(--muted);font-weight:500}
.v7pn b{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}
.v7pn b i{width:8px;height:8px;border-radius:50%;flex:none}
.v7pn small,.v7nxl small,.v7du small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.v7mini{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;height:7px}
.v7mini i{border-radius:2px;background:var(--v7raise)}
.v7mini i.d{background:var(--ink)}.v7mini i.c,.v7mini i.p{background:var(--v7och)}.v7mini i.p{opacity:.45}.v7mini i.c{opacity:1}.v7mini i.a{background:var(--v7warn)}.v7mini i.n{background:transparent;border:1px dashed var(--v7line2)}
.v7js{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--muted);margin-top:8px}
.v7js b{color:var(--ink);font-weight:500}
.v7pl .v7nxl{display:block;padding:0}
.v7pl .v7nxl b{display:block;font-size:14px;font-weight:500}
.v7du{text-align:right}
.v7du b{display:block;font-size:14px;font-weight:600}
.v7du small.late,.v7gs .late,small.late{color:var(--v7warn)}
/* hari ini */
.v7gl .v7gp{display:block;padding:13px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.v7gl .v7gp:first-of-type{border-top:0}
.v7gh{display:flex;justify-content:space-between;gap:10px;font-size:14px;margin-bottom:8px}
.v7gh b{font-weight:600}.v7gh span{font-size:12.5px;color:var(--muted)}
.v7gs{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--muted);margin-top:7px}
.v7wait .v7wt{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:start;padding:12px 0;border-top:1px solid var(--line);font-size:14px;color:var(--ink);text-decoration:none}
.v7wait .v7wt:first-child{border-top:0}
.v7wait .v7wt small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
/* tim */
.v7od{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 140px auto;gap:16px;align-items:center;padding:16px 20px;border-top:1px solid var(--line)}
.v7od:first-child{border-top:0}
.v7odt b,.v7odd b{display:block;font-size:14.5px;font-weight:600}
.v7odd b{font-weight:500;font-size:13.5px}
.v7odt small,.v7odd small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
/* uang studio */
.v7k4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v7k4 .v7big{margin-top:8px}
.v7k4 .own{background:var(--v7raise);border-color:transparent}
.v7bar2{display:flex;height:12px;border-radius:6px;overflow:hidden;margin-top:14px;background:var(--v7raise)}
.v7bar2 i{display:block;height:100%}
.v7lg{display:flex;flex-wrap:wrap;gap:16px;margin-top:9px;font-size:12.5px;color:var(--muted)}
.v7lg span{display:flex;align-items:center;gap:6px}.v7lg i{width:9px;height:9px;border-radius:2px;display:inline-block}
.v7tr{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(4,minmax(110px,1fr)) minmax(170px,1fr);gap:14px;align-items:center;padding:14px 20px;border-top:1px solid var(--line);min-width:960px;font-size:14px;color:var(--ink);text-decoration:none}
.v7tr:first-child{border-top:0}
.v7tr.h{font-size:12.5px;color:var(--muted);font-weight:500;padding-top:12px;padding-bottom:12px}
.v7tr .n{text-align:right}
.v7tr.f{border-top:1px solid var(--v7line2);font-weight:600}
a.v7tr:hover{background:var(--v7raise)}
/* file per tahap */
.v7seg{display:inline-flex;gap:4px;padding:4px;border-radius:11px;background:var(--v7raise);margin:4px 0 18px}
.v7seg button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:13.5px;font-weight:500;min-height:34px;padding:0 14px;border-radius:8px;cursor:pointer}
.v7seg button.on{background:var(--paper);color:var(--ink)}
.v7fh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px}
.v7stg{display:flex;gap:8px;overflow-x:auto;margin:14px 0 16px;padding-bottom:4px}
.v7stg button{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:transparent;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer}
.v7stg button b{font-family:var(--display,inherit);font-stretch:125%;font-size:15px}
.v7stg button.cur b{color:var(--v7och)}
.v7stg button.on{background:var(--v7btn);color:var(--v7btnInk);border-color:var(--v7btn)}
.v7stg button.on b{color:inherit}
.v7col3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.v7col{display:flex;flex-direction:column;overflow:hidden}
.v7ch{padding:16px 18px 12px;border-bottom:1px solid var(--line)}
.v7ch .v7t2{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.v7ch .v7t2 span{font-family:var(--sans,inherit);font-size:12.5px;font-weight:500;color:var(--muted)}
.v7ch p{margin:4px 0 0;font-size:12.5px;color:var(--muted)}
.v7fin .v7ch{background:var(--v7sage-bg)}
.v7fl{display:flex;gap:12px;align-items:center;padding:10px 18px;border-top:1px solid var(--line);font-size:13.5px}
.v7fl:first-child{border-top:0}
.v7th{width:46px;height:36px;border-radius:6px;background:var(--v7raise);flex:none;overflow:hidden;display:flex;align-items:center;justify-content:center}
.v7th img{width:100%;height:100%;object-fit:cover;display:block}
.v7th i{font-style:normal;font-size:10px;font-weight:700;color:var(--muted)}
.v7fn{min-width:0;flex:1}
.v7fn b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v7fn small{display:block;font-size:12px;color:var(--muted)}
.v7drop{display:block;margin:12px 18px 16px;border:1.5px dashed var(--v7line2);border-radius:10px;padding:14px;text-align:center;font-size:13px;color:var(--muted);cursor:pointer}
.v7cf{padding:12px 18px;border-top:1px solid var(--line);margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}
/* ===== HP & tablet ===== */
@media (max-width:900px){
  .v7sum,.v7k4,.v7pk3{grid-template-columns:1fr 1fr}
  .v7sum>div:nth-child(3){border-left:0}.v7sum>div:nth-child(n+3){border-top:1px solid var(--line)}
  .v7col3{grid-template-columns:1fr}
}
@media (max-width:640px){
  .v7rail{padding:18px 16px 8px}
  .v7dim{grid-template-columns:1fr}
  .v7 button.v7st{display:grid!important;grid-template-columns:44px minmax(0,1fr);gap:0 12px;padding:0 0 16px}
  .v7 .v7st .v7ln{display:none!important}
  .v7k{grid-column:1;grid-row:1;margin-top:0;text-align:center;font-size:26px;position:relative}
  .v7st::after{content:'';position:absolute;left:21px;top:32px;bottom:2px;border-left:1.5px dashed var(--v7line2)}
  .v7st.d::after{border-left-style:solid;border-left-color:var(--ink)}
  .v7st:last-child::after{display:none}
  .v7sx{grid-column:2;grid-row:1}
  .v7nm{margin-top:2px}
  .v7st.cur .v7sx{background:var(--v7raise);border-radius:12px;padding:10px 12px;border-left:3px solid var(--v7och)}
  .v7 .v7st .v7here{display:none!important}
  .v7 .v7st .v7sx .v7mm{display:flex!important;flex-wrap:wrap;gap:6px;margin-top:8px}
  .v7mm .v7m{margin:0;padding:5px 9px}
  .v7lanes{display:none}
  .v7now{padding:20px}.v7nt{font-size:21px}
  .v7acts>.v7btn{flex:1 1 140px}
  .v7sum,.v7k4,.v7pk3{grid-template-columns:1fr}
  .v7sum>div{border-left:0;border-top:1px solid var(--line)}.v7sum>div:first-child{border-top:0}
  .v7stops{display:none}
  .v7tx{grid-template-columns:52px minmax(0,1fr) 112px}.v7tx .v7tg{display:none}
  .v7od{grid-template-columns:minmax(0,1fr) auto}.v7od .v7odd{grid-column:1}.v7od>span:nth-child(3){grid-column:2;grid-row:1}
  .v7pl,.v7pl.nm{min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px 16px}
  .v7pl.hdr{display:none}
  .v7pl .v7jl{grid-column:1/-1;grid-row:2}.v7pl .v7nxl{grid-column:1/-1;grid-row:3}.v7pl .v7du{grid-column:2;grid-row:1}.v7pl>span:nth-child(4):not(.v7du){grid-column:1/-1;grid-row:4}
}

.v7t2 small{display:inline!important}

.v7gl .v7gp{padding:13px 18px}
.v7wait{margin-bottom:14px}
.v2sub a{border-radius:9px!important;min-height:34px;display:inline-flex;align-items:center}
.v2sub a.on{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--v7line2)!important}
.ptabs:not(.v2pt) a{border-radius:9px!important}
@media (max-width:640px){.v7lc{overflow-x:auto}.v7lc .v7stops{display:grid!important;min-width:760px}.v7lc .v7lanes{display:block!important;min-width:760px}}
/* ===================== v98 — Hari ini ikut desain baru (sudut membulat, tanpa label huruf besar) ===================== */
.phead .label{text-transform:none!important;letter-spacing:0!important;font-size:13.5px!important;color:var(--muted)}
.v2today .fz{background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:14px!important;overflow:hidden;box-shadow:none!important}
.v2today .fzh{padding:16px 22px!important;border-bottom:1px solid var(--line)!important}
.v2today .fzh b{font-size:16px!important;font-weight:600}
.v2today .fzr{padding:20px 22px!important;border-top:1px solid var(--line)!important;gap:16px!important;align-items:flex-start!important}
.v2today .fzh+.fzr{border-top:0!important}
.v2today .fzn{width:30px!important;height:30px!important;border-radius:50%!important;border:1.5px solid var(--v7line2)!important;background:transparent!important;color:var(--ink)!important;font-weight:600!important;font-size:13.5px!important;display:inline-flex!important;align-items:center;justify-content:center;flex:none}
.v2today .fzr.first .fzn{background:var(--v7och)!important;border-color:var(--v7och)!important;color:var(--v7ochInk)!important}
.v2today .fzm b{font-size:17px!important;line-height:1.3}
.v2today .fzm small{font-size:13.5px!important;margin-top:3px}
.v2today .fzg{display:block!important;border:0!important;background:none!important;padding:0!important;margin-top:6px!important;font-size:12.5px!important;color:var(--muted)!important;letter-spacing:0!important;text-transform:none!important}
.v2today .fza{gap:8px!important}
.v2today .fza .ib,.v2today .fza a.ib{height:38px!important;min-height:38px;padding:0 14px!important;border-radius:9px!important;border:1px solid var(--v7line2)!important;background:transparent!important;color:var(--ink)!important;font-size:13.5px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;display:inline-flex!important;align-items:center;justify-content:center;width:auto!important}
.v2today .fza .ib.tmb{width:38px!important;padding:0!important}
.v2today .fzr.first .fza .ok{background:var(--v7och)!important;border-color:var(--v7och)!important;color:var(--v7ochInk)!important}
.v2today .fza .fzskip{border-color:transparent!important;color:var(--muted)!important}
.v2today .qadd{gap:10px!important;margin-top:14px!important}
.v2today .qadd input,.v2today .qadd select{height:46px!important;border-radius:10px!important;border:1px solid var(--line)!important;background:var(--paper)!important;color:var(--ink)!important;padding:0 14px!important;font-size:14px!important}
.v2today .qadd .qbtn{height:46px!important;min-width:46px;border-radius:10px!important}
.v2today .qadd .qbtn.pri{background:var(--v7btn)!important;border-color:var(--v7btn)!important;color:var(--v7btnInk)!important}
.v2today .fzall{border-radius:14px!important;border:1px solid var(--line)!important;background:var(--paper)!important;overflow:hidden}
.v2today .fzall>summary{padding:16px 22px!important}
.v2today .fzall .fzsw{border-radius:9px!important}
.v2today .v2cb .blk{background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:14px!important;overflow:hidden;box-shadow:none!important}
.v2today .v2cb .blk-h{padding:18px 20px 8px!important;border-bottom:0!important;align-items:baseline}
.v2today .v2cb .blk-k{font-size:17px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:var(--ink)!important}
.v2today .v2cb .blk-t{font-size:13.5px!important;letter-spacing:0!important;text-transform:none!important}
.v2today .v2cb .v7gp{padding:12px 20px!important}
.v2today .v2cb .empty{padding:4px 20px 18px!important;color:var(--muted)}
.v2today .blk{border-radius:14px}
.v2today .b,.phead .b{border-radius:9px!important}
@media (max-width:640px){.v2today .fzr{padding:16px!important}.v2today .fza{width:100%}.v2today .fza .ib{flex:1}}
.v2today .v2cb,.v2today .v2cb>.blk:first-child{margin-top:0!important}
.v2today .qadd{display:flex!important;flex-wrap:wrap}
.v2today .qadd input{flex:3 1 260px!important;min-width:0}
.v2today .qadd select{flex:1 1 140px!important;min-width:0}
.v2today .qadd>*{width:auto!important;max-width:none!important}
@media (min-width:641px){.v2today .qadd{flex-wrap:nowrap}}
/* ===================== v99 — "Di app" per tahap ===================== */
.v9app{margin:4px 0 18px}
.v9h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.v9h b{font-size:15px;font-weight:600;color:var(--ink)}
.v9h span{font-size:13px;color:var(--muted)}
.v9grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.v9it{all:unset;box-sizing:border-box;display:grid!important;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);cursor:pointer;color:var(--ink);text-decoration:none;min-height:70px}
.v9it:hover{border-color:var(--v7line2)}
.v9it:focus-visible{outline:2px solid var(--v7och);outline-offset:2px}
.v9th{width:64px;height:48px;border-radius:8px;overflow:hidden;background:var(--v7raise);display:flex;align-items:center;justify-content:center}
.v9th img{width:100%;height:100%;object-fit:cover;display:block}
.v9th i{font-style:normal;font-size:11px;font-weight:600;color:var(--muted)}
.v9tx{min-width:0}
.v9tx b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;overflow:hidden;line-height:1.3}
.v9tx small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;color:var(--muted);margin-top:3px;overflow:hidden;line-height:1.35}
.v9dot{width:9px;height:9px;border-radius:50%;background:var(--v7och)}
.rvfoot .rvfwd+.b{margin-left:6px}
/* ===================== v100 — screenshot furnitur dari 3D artist ===================== */
.ssp{padding:18px 20px;margin:14px 0 16px}
.ssh{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.ssh b{font-size:16px;font-weight:600;color:var(--ink)}
.ssh span{font-size:13px;color:var(--muted)}
.ssrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.sssel{height:42px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:0 12px;font:inherit;font-size:14px;min-width:180px}
.ssgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:14px}
.ssit{all:unset;box-sizing:border-box;display:grid!important;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink);cursor:default}
button.ssit{cursor:pointer}button.ssit:hover{border-color:var(--v7line2)}
.ssth{width:72px;height:54px;border-radius:8px;overflow:hidden;background:var(--v7raise)}
.ssth img{width:100%;height:100%;object-fit:cover;display:block}
.sstx b{display:block;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sstx small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.ssmore{margin-top:12px}.ssmore summary{cursor:pointer;font-size:13px;color:var(--muted)}
/* ===================== v101 — papan revisi ===================== */
.rvsheet.r7{width:min(1180px,100%);background:var(--bg)}
.rvsheet.r7 .rvhead{background:var(--bg);border-bottom:1px solid var(--line);padding:14px 22px}
.rvsheet.r7 .rvhead b{font-size:18px}
.rvsheet.r7 .rvtabs{border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.rvsheet.r7 .rvtabs button{border:0!important;border-radius:0!important}
.rvsheet.r7 .rvbody{padding:20px 24px 36px}
.rvsheet.r7 .rvfoot{background:var(--bg);padding:12px 24px}
.rvsheet.r7 .rvfoot .b{border-radius:9px}
.r7stp{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:4px 0 22px}
.r7stp .s{position:relative;padding-right:14px}
.r7stp .ln{position:relative;height:22px}
.r7stp .ln::before{content:'';position:absolute;left:0;right:0;top:10px;border-top:1.5px dashed var(--v7line2)}
.r7stp .s.d .ln::before{border-top:1.5px solid var(--ink)}
.r7stp .s.c .ln::before{border-top:3px solid var(--v7och);top:9px}
.r7stp .ln::after{content:'';position:absolute;left:-1px;top:2px;width:1.5px;height:18px;background:var(--ink);opacity:.7;transform:skewX(-35deg)}
.r7stp .s:last-child .ln{margin-right:-14px}
.r7stp .k{font-family:var(--display,inherit);font-weight:600;font-stretch:125%;font-size:24px;line-height:1;margin-top:6px;color:var(--muted);opacity:.6}
.r7stp .s.d .k{color:var(--ink);opacity:1}.r7stp .s.c .k{color:var(--v7och);opacity:1}
.r7stp .nm{font-weight:600;font-size:14px;margin-top:6px;color:var(--ink)}
.r7stp .ws{font-size:12.5px;color:var(--muted);margin-top:2px}
.r7stp .s.c .ws{color:var(--v7och);font-weight:500}
.r7stp .s.x .k,.r7stp .s.x .nm{text-decoration:line-through;opacity:.4}
.r7wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.r7pn{position:sticky;top:0}
.r7card{padding:20px}
.r7q{font-family:var(--display,inherit);font-weight:600;font-size:21px;line-height:1.2;margin:10px 0 6px;color:var(--ink)}
.r7opt{all:unset;box-sizing:border-box;display:flex;gap:12px;align-items:flex-start;width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:11px;margin-top:10px;cursor:pointer;color:var(--ink)}
.r7opt i{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--v7line2);flex:none;margin-top:2px;position:relative}
.r7opt.on{border-color:var(--v7och);background:var(--v7och-bg)}
.r7opt.on i{border-color:var(--v7och)}.r7opt.on i::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--v7och)}
.r7opt b{display:block;font-size:14.5px}.r7opt small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.r7opt:focus-visible{outline:2px solid var(--v7och);outline-offset:2px}
.r7go{width:100%;min-height:50px!important;font-size:15px!important;margin-top:18px}
.r7alt{width:100%;margin-top:10px}
.r7eye{font-size:12.5px;color:var(--muted);margin-top:12px;line-height:1.45}
.r7ok{font-size:13px;color:var(--v7sage);margin:12px 0 0}
.r7to{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:14px}
.r7to .v7who i{width:34px;height:34px;font-size:13px}
.r7to b{display:block;font-size:14.5px}.r7to small{display:block;font-size:12.5px;color:var(--muted)}
.r7l .ptl,.r7l .rvlock,.r7l .rvgrid,.r7l>.f{border-radius:14px}
.r7l .rvdocwrap{border-radius:14px;overflow:hidden}
@media (max-width:860px){.r7wrap{grid-template-columns:1fr}.r7pn{position:static;order:-1}.r7stp .ws{display:none}.r7stp .k{font-size:20px}}
/* ===================== v101 — ambil dari PDF ===================== */
#pdfov{position:fixed;inset:0;z-index:330;background:rgba(20,16,13,.62);display:flex;align-items:center;justify-content:center;padding:16px}
#pdfov[hidden]{display:none}
.pdsheet{width:min(1040px,100%);max-height:100%;overflow:auto;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.pdh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.pdh b{display:block;font-size:19px;font-weight:600}.pdh span{font-size:13px;color:var(--muted)}
.pdmsg{margin:10px 0 14px}
.pdgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:16px}
.pdp{all:unset;cursor:pointer;display:block;text-align:center}
.pdth{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;background:#fff;border:1.5px solid var(--line);border-radius:6px;overflow:hidden}
.pdth img{width:100%;height:100%;object-fit:contain;display:block}
.pdth i{font-style:normal;color:#9A8F84;font-size:13px}
.pdp:hover .pdth,.pdp:focus-visible .pdth{border-color:var(--v7och);box-shadow:0 0 0 2px var(--v7och-bg)}
.pdp small{display:block;font-size:12.5px;color:var(--muted);margin-top:6px}
.pkpdfs{margin-top:16px;display:flex;flex-direction:column;gap:6px}
.pkpdf{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;font-size:14px}
.pkpdf:hover{border-color:var(--v7line2)}
.pkpdf i{font-style:normal;font-size:10px;font-weight:700;color:var(--muted);width:34px;height:40px;border-radius:5px;background:var(--v7raise);display:flex;align-items:center;justify-content:center;flex:none}
.pkpdfn{display:block;font-size:12.5px;color:var(--muted);margin-top:4px}
.bfpickrow{display:flex;justify-content:center;margin-top:10px}
/* ===================== v101 — material library (rak sampel) ===================== */
.libp{color:var(--ink)}
.libhd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.libh1{font-family:var(--display,inherit);font-weight:600;font-stretch:118%;font-size:44px;line-height:1;text-transform:uppercase;margin:6px 0 8px;letter-spacing:.01em;color:var(--ink)}
.libh1.sm{font-size:32px;margin-top:10px}
.v7back{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);text-decoration:none}
.v7back .ic{width:14px;height:14px}
.v7link{all:unset;cursor:pointer;font-size:13.5px;color:var(--ink);border-bottom:1px solid var(--v7line2);margin-left:auto}
.libg{display:grid;grid-template-columns:180px minmax(0,1fr) 320px;gap:28px;align-items:start;margin-top:24px}
.lidx h4{font-size:12.5px;font-weight:500;color:var(--muted);margin:0 0 6px}
.lidx a{display:flex;justify-content:space-between;gap:8px;padding:7px 0;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.lidx a span{color:var(--muted);font-variant-numeric:tabular-nums}
.lidx a.on{font-weight:600;box-shadow:inset 2px 0 0 var(--v7och);padding-left:10px}
.lidx a.pend{color:var(--v7och)}.lidx a.pend span{color:var(--v7och)}
.lgi{margin-bottom:26px}
.lsearch{display:flex;align-items:center;gap:10px;height:46px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--muted)}
.lsearch .ic{width:17px;height:17px;flex:none}
.lsearch input{all:unset;flex:1;min-width:0;color:var(--ink);font-size:14.5px}
.lser{margin-top:28px}
.lserh{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.lserh b{font-size:17px;font-weight:600}.lserh span{font-size:13px;color:var(--muted)}
.lrack{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:18px 16px}
.lrack.sm{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:14px}
.lchip{all:unset;cursor:pointer;display:block;position:relative;min-width:0}
.lch{display:block;position:relative;aspect-ratio:4/5;border-radius:5px;overflow:hidden;background:var(--v7raise);box-shadow:0 6px 14px rgba(0,0,0,.22),0 1px 2px rgba(0,0,0,.25)}
.lch img{width:100%;height:100%;object-fit:cover;display:block}
.lch .lcol{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:24px;color:rgba(0,0,0,.35)}
.lch::before{content:'';position:absolute;top:9px;left:9px;width:11px;height:11px;border-radius:50%;background:var(--bg);box-shadow:inset 0 1px 2px rgba(0,0,0,.5),0 0 0 1.5px rgba(255,255,255,.35);z-index:2}
.ltag{position:absolute;left:0;right:0;bottom:0;z-index:2;background:#F7F3EC;color:#2A211B;padding:7px 9px 8px}
.ltag b{display:block;font-weight:600;font-size:12.5px;letter-spacing:.02em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ltag span{display:block;font-size:11.5px;color:#5E534A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.luse{position:absolute;top:8px;right:8px;z-index:3;font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:9px;background:rgba(20,15,12,.7);color:#F3EBDF}
.lok{position:absolute;top:8px;right:8px;z-index:3;width:24px;height:24px;border-radius:50%;background:var(--v7och);color:var(--v7ochInk);font-size:13px;display:flex;align-items:center;justify-content:center}
.lchip.on .lch{outline:2.5px solid var(--v7och);outline-offset:3px}
.lchip:focus-visible .lch{outline:2px solid var(--v7och);outline-offset:3px}
.ldrw{position:sticky;top:16px;padding:20px}
.lbig{aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:var(--v7raise);position:relative;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.lbig img{width:100%;height:100%;object-fit:cover;display:block}.lbig .lcol{position:absolute;inset:0}
.ldt{font-family:var(--display,inherit);font-weight:600;font-size:23px;line-height:1.15;margin:16px 0 2px}
.lds{font-size:14px;color:var(--muted)}
.ldl{display:grid;grid-template-columns:auto 1fr;gap:9px 16px;margin:16px 0 4px;font-size:14px}
.ldl dt{color:var(--muted)}.ldl dd{margin:0;text-align:right;font-weight:500}
.lprov{all:unset;cursor:pointer;box-sizing:border-box;display:grid;grid-template-columns:62px 1fr;gap:12px;align-items:center;width:100%;padding:10px;border-radius:10px;background:var(--v7raise);margin-top:12px}
.lprov .lpth{aspect-ratio:3/4;border-radius:3px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.lprov .lpth img{width:100%;height:100%;object-fit:cover}.lprov .lpth i{font-style:normal;font-size:10px;color:#9A8F84}
.lprov small{display:block;font-size:12.5px;color:var(--muted)}.lprov b{font-size:13.5px}
.luses{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.luses a{font-size:12.5px;padding:4px 10px;border-radius:12px;border:1px solid var(--v7line2);color:var(--ink);text-decoration:none}
.lacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ledit{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.ledit label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.ledit input,.ledit select,.lin,.lsel{height:38px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:0 10px;font:inherit;font-size:14px;min-width:0;width:100%;box-sizing:border-box}
.libup{position:relative;height:30px;border-radius:8px;background:var(--v7raise);overflow:hidden;margin:12px 0;max-width:520px}
.libup i{position:absolute;left:0;top:0;bottom:0;background:var(--v7och-bg);border-right:2px solid var(--v7och)}
.libup span{position:relative;font-size:12.5px;line-height:30px;padding-left:12px;color:var(--ink)}
.r7stp.three{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}
.lphd{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;margin-bottom:14px}.lphd b{font-size:16px}
.lpgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:22px 18px}
.lpw{all:unset;cursor:pointer;position:relative;display:block}
.lpw .lpth{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;background:#F6F2EB;border-radius:3px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.22)}
.lpw .lpth img{width:100%;height:100%;object-fit:contain;display:block}.lpw .lpth i{font-style:normal;color:#9A8F84;font-size:13px}
.lpw small{display:block;font-size:12.5px;color:var(--muted);margin-top:8px}
.lpw.on .lpth{outline:2.5px solid var(--v7och);outline-offset:4px}
.lpw.txt .lpth{opacity:.42}
.lpw em{position:absolute;top:-8px;right:-8px;width:26px;height:26px;border-radius:50%;background:var(--v7och);color:var(--v7ochInk);font-style:normal;font-weight:700;font-size:12.5px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.3);z-index:2}
.lpw em.d{background:var(--v7sage);color:#141a10}
.lpgtabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.lpgtabs button{all:unset;cursor:pointer;height:32px;padding:0 12px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.lpgtabs button.on{background:var(--v7btn);color:var(--v7btnInk);border-color:var(--v7btn)}
.lpgtabs small{font-size:11.5px;opacity:.8}
.lrev{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:22px;align-items:start}
.lpage{position:relative;border-radius:3px;overflow:hidden;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.lpage img{width:100%;display:block}
.lbox{position:absolute;border:2px solid var(--v7och);border-radius:3px}
.lbox b{position:absolute;top:-11px;left:-11px;width:22px;height:22px;border-radius:50%;background:var(--v7och);color:var(--v7ochInk);font-size:11.5px;display:flex;align-items:center;justify-content:center}
.lbox.w{border-color:#E38D6E}.lbox.w b{background:#E38D6E;color:#2A140C}
.lbox.x{border-style:dashed;border-color:#9A8F84}.lbox.x b{background:#9A8F84;color:#fff}
.lits{padding:6px 16px}
.lit{display:grid;grid-template-columns:24px 58px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.lit:first-child{border-top:0}
.lnb{width:22px;height:22px;border-radius:50%;background:var(--v7och);color:var(--v7ochInk);font-size:11.5px;font-weight:700;display:flex;align-items:center;justify-content:center}
.lit.w .lnb{background:#E38D6E;color:#2A140C}.lit.x{opacity:.55}.lit.x .lnb{background:#9A8F84;color:#fff}
.lcr{all:unset;cursor:pointer;width:58px;height:58px;border-radius:5px;background-color:var(--v7raise);background-repeat:no-repeat;box-shadow:0 3px 8px rgba(0,0,0,.25)}
.lcr:focus-visible{outline:2px solid var(--v7och);outline-offset:2px}
.lif{display:flex;flex-direction:column;gap:4px;min-width:0}
.lin.cd{font-weight:600}
.lif .lin{height:32px;border-color:transparent;background:transparent;padding:0 6px;margin-left:-6px}
.lif .lin:hover,.lif .lin:focus{border-color:var(--line);background:var(--bg)}
.lmt{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lmt span{font-size:12px;padding:2px 8px;border-radius:10px;background:var(--v7raise);color:var(--ink)}
.lmt span.w{background:var(--v7warn-bg);color:var(--v7warn)}
.lmt .lsel{height:26px;width:auto;font-size:12px;padding:0 6px;border-radius:13px}
.lck{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink)}
.libbusy{font-size:13.5px;color:var(--v7och);margin-top:16px}
.ldl .lin{height:32px}
.mlbox.libpick .mlgrid.lrack{display:grid}
.mlbox.libpick .mlc.lchip{border:0;background:none;padding:0;width:auto;height:auto}
@media (max-width:1100px){.libg{grid-template-columns:160px minmax(0,1fr)}.ldrw{grid-column:1/-1;position:static}}
@media (max-width:640px){.libg{grid-template-columns:1fr}.lidx{display:flex;gap:16px;overflow-x:auto}.lgi{min-width:200px;margin-bottom:0}.libh1{font-size:34px}.lrev{grid-template-columns:1fr}.lrack{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
.lit .lin{height:30px!important;min-height:0!important;margin:0!important;padding:0 6px!important;box-shadow:none!important;font-size:14px!important}
.lit .lin.cd{font-weight:600!important;font-size:15px!important}
.lit .lmt .lsel{height:26px!important;min-height:0!important;margin:0!important;padding:0 8px!important;width:auto!important;font-size:12px!important;border-radius:13px!important}
.lit .lif{gap:2px}
.lck input{margin:0!important;width:auto!important;height:auto!important}
.ldl .lin{height:32px!important;margin:0!important}
.lserh{flex-wrap:wrap}
@media (max-width:640px){.lidx{display:block}.lgi{display:flex;gap:6px;overflow-x:auto;min-width:0;margin-bottom:12px;padding-bottom:4px;-webkit-overflow-scrolling:touch}.lgi h4{display:none}.lidx a{flex:none;border:1px solid var(--line);border-radius:16px;padding:6px 12px;white-space:nowrap;gap:6px}.lidx a.on{box-shadow:none;padding-left:12px;background:var(--v7btn);color:var(--v7btnInk);border-color:var(--v7btn)}.lidx a.on span{color:inherit}.libhd .v7btn{width:100%}.lbig{aspect-ratio:16/9}}
.ldet{font-size:13.5px;color:var(--v7sage);margin:0 0 12px}
.ldet.w{color:var(--v7och)}
.lpage{cursor:pointer;user-select:none}
.lpage.picking{cursor:crosshair;outline:2px dashed var(--v7och);outline-offset:4px}
.lbox.cur{border-color:#fff;box-shadow:0 0 0 2px var(--v7och)}
.lit.cur{background:var(--v7och-bg);border-radius:10px;margin:0 -8px;padding:12px 8px}
.lnb{all:unset;cursor:pointer;width:24px;height:24px;border-radius:50%;background:var(--v7och);color:var(--v7ochInk);font-size:11.5px;font-weight:700;display:flex;align-items:center;justify-content:center}
.lit.cur .lnb{box-shadow:0 0 0 3px var(--v7och-bg),0 0 0 5px var(--v7och)}
.lcr.empty{display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--muted);border:1.5px dashed var(--v7line2);box-shadow:none;background:transparent}
.v7link.sm{font-size:12px;margin-left:4px}
.lbox.g{border-style:dashed}
.lbox.g{border-style:dashed}
.lpz{position:relative}
.lpage.zoom{position:relative}
.lpage.zoom .lpz{position:absolute}
.lpz img{width:100%;display:block}
.lpfull{display:inline-block;margin-top:10px;margin-left:0}
/* ===================== v102 — kartu poin ===================== */
.pcwrap{margin:18px 0 22px;color:var(--ink)}
.pctop{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.pctitle{display:block;font-family:var(--display,inherit);font-weight:600;font-size:22px;color:var(--ink)}
.pcview{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.pcview button{all:unset;cursor:pointer;padding:8px 14px;font-size:13.5px;color:var(--muted)}
.pcview button.on{background:var(--v7raise);color:var(--ink);font-weight:600}
.pcwrap>.pcview{margin:0 0 14px}
.pclist{display:flex;flex-direction:column;gap:14px}
.pclh{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pclh>div{flex:1;min-width:0}
.pclh b{display:block;font-size:16px;font-weight:600;color:var(--ink)}.pclh span{font-size:13px;color:var(--muted)}
.pcard{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.pch{display:flex;align-items:center;gap:12px}
.pcn{width:28px;height:28px;border-radius:50%;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.pch b{flex:1;min-width:0;font-family:var(--display,inherit);font-size:17px;font-weight:600;color:var(--ink)}
.pck{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.pctags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0 40px}
.pctg{font-size:12px;padding:2px 9px;border-radius:10px;background:var(--v7raise);color:var(--ink)}
.pctg.n{background:var(--v7och-bg);color:var(--v7och)}.pctg.r{background:var(--v7warn-bg);color:var(--v7warn)}.pctg.w{background:var(--v7och-bg);color:var(--v7och)}
.pcims{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);gap:10px;align-items:center;margin-top:14px}
.pcims.one{grid-template-columns:minmax(0,1fr)}
.pcims figure{margin:0;min-width:0}
.pcims figcaption{font-size:11.5px;font-weight:600;color:var(--muted);margin-bottom:6px}
.pcfig{border-radius:9px;overflow:hidden;background:#fff}
.pcfig .rd-cb2{background:#F3EEE7}
.pcarr{color:var(--muted);text-align:center;font-size:18px;padding-top:18px}
.pcrefs{display:grid;gap:6px}.pcrefs.n2{grid-template-columns:1fr 1fr}.pcrefs.n3{grid-template-columns:1fr 1fr 1fr}
.pcref{border-radius:9px;overflow:hidden;background:var(--v7raise)}
.pcref img,.pcrimg{display:block;width:100%;height:auto}
.pcd{margin:12px 0 0;font-size:14px;color:var(--ink);white-space:pre-line}
.pccn{margin:10px 0 0;padding:9px 12px;border-radius:9px;background:var(--v7och-bg);color:var(--v7och);font-size:13.5px}
.pckv{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:13px}.pckv span{color:var(--muted)}.pckv b{font-weight:500;color:var(--ink)}
.pcadd{display:flex;flex-wrap:wrap;gap:8px}
.pcempty{border:1.5px dashed var(--v7line2);border-radius:14px;padding:22px;text-align:center}
.pcempty b{display:block;font-size:15px}.pcempty span{display:block;font-size:13.5px;color:var(--muted);margin:4px 0 14px}.pcempty .pcadd{justify-content:center}
.pcmore{margin-top:6px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.pcimgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:8px}
.pcimgs a{display:block;border-radius:8px;overflow:hidden;background:var(--v7raise);text-decoration:none}
.pcimgs img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.pcimgs small{display:block;font-size:11.5px;color:var(--muted);padding:4px 6px}
.pcnote{margin:6px 0 0;font-size:13.5px;color:var(--ink)}.pcnote.w{color:var(--v7och)}.pcnote.j{color:var(--v7warn)}
.pcdel{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.pcdel>div{display:flex;gap:10px;align-items:flex-start;padding:6px 0;font-size:13.5px}
.pcdel i{font-style:normal;width:22px;height:22px;border-radius:50%;background:var(--v7raise);font-size:11.5px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
.pcdel b{color:var(--v7warn);font-weight:600}
.pclast{display:flex;flex-direction:column;gap:6px;margin-top:10px;text-decoration:none;color:var(--ink)}
.pclast img{width:100%;border-radius:9px;display:block}.pclast i{font-style:normal;height:80px;border-radius:9px;background:var(--v7raise);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--muted)}.pclast span{font-size:12.5px;color:var(--muted)}
@media (max-width:640px){.pcims{grid-template-columns:1fr}.pcarr{display:none}.pctags{margin-left:0}}
.pcims{align-items:start}
.pcarr{padding-top:90px}
.pcfig,.pcref{max-height:340px;overflow:hidden}
.pcrefs.n1 .pcref .rd-cb2{max-height:340px}
@media (max-width:640px){.r7stp .nm{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r7stp .s{padding-right:6px}}

.libbtns{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}
.libimp{display:grid;gap:10px;padding:16px 18px;margin:0 0 18px}
.libimp>div:first-child{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}
.libimp b{font-size:15px}.libimp .lin2{color:var(--mut,#7a6f63);font-size:13px}
.libimp .libup{height:6px;border-radius:6px;background:var(--v7raise);overflow:hidden;position:relative;max-width:none;margin:0}
.libimp .libup i{position:absolute;left:0;top:0;bottom:0;background:var(--v7och);border:0;transition:width .3s}
.libimp .v7link{justify-self:start}
@media(max-width:700px){.libbtns{width:100%}.libbtns .v7btn{flex:1;justify-content:center}}

.fz.sy4 .fzh{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.fz.sy4 .sy4src{margin-left:auto;font-size:13px;color:var(--mut,#8a7f73)}
.sy4st{font-style:normal;font-size:12px;font-weight:600;letter-spacing:.02em;padding:2px 8px;border-radius:20px;background:var(--v7raise,#efe8de);color:var(--ink);margin-left:6px;vertical-align:2px}
.sy4 .fzm small{font-size:15px;color:var(--ink);opacity:.86}
.sy4 .fzg.late{color:var(--neg,#b4483a)}
.sy4dn{opacity:.55}.sy4dn .fzn{background:var(--ink);color:var(--bg)}
.sy4ok{font-size:13px;color:var(--mut,#8a7f73);align-self:center}
.sy4empty{padding:18px 30px;margin:0;color:var(--mut,#8a7f73)}
.sy4q{margin:0 30px 6px;padding:16px 18px;border-radius:14px;background:var(--v7och-bg,#f6ecd9);border:1px solid rgba(140,109,72,.25)}
.sy4q p{margin:6px 0 12px;font-size:15.5px;line-height:1.45}
.sy4ql{display:block;font-size:12.5px;font-weight:600;color:var(--mut,#8a7f73)}
.sy4qa{display:flex;gap:8px;flex-wrap:wrap}.sy4qa .b{min-height:40px}
.sy4dt{position:relative;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.sy4dt input{border:0;background:transparent;font:inherit;color:inherit;max-width:130px}
.sy4w{margin:14px 30px 0;padding-top:14px;border-top:1px solid var(--line,rgba(0,0,0,.08))}
.sy4w a{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:9px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--line,rgba(0,0,0,.06))}
.sy4w a:last-child{border-bottom:0}
.sy4w a b{font-size:14.5px}.sy4w a span{font-size:13px;font-weight:600;color:var(--mut,#8a7f73);text-align:right}
.sy4w a small{grid-column:1/-1;font-size:13px;color:var(--mut,#8a7f73)}
.sy4foot{margin:10px 30px 18px;font-size:13px;color:var(--mut,#8a7f73)}
.sy4me{font-weight:700;color:var(--ink)!important}
.v7gs>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:72%}
@media(max-width:700px){.sy4q,.sy4w,.sy4foot{margin-left:16px;margin-right:16px}.sy4 .fza{flex-wrap:wrap}}

.fz.sy4 .fzmore a{color:inherit;font-weight:600}

.pu5{display:flex;align-items:center;gap:14px;margin:14px 30px 0;padding:14px 16px;border-radius:14px;border:1px solid var(--line,rgba(0,0,0,.1));background:var(--bg,#f6f1ea)}
.pu5i{font-size:22px;line-height:1}
.pu5t{flex:1;min-width:0}.pu5t b{display:block;font-size:14.5px}.pu5t small{display:block;font-size:13px;color:var(--mut,#8a7f73);margin-top:2px;line-height:1.45}
.pu5a{display:flex;gap:8px;flex-wrap:wrap}
.pu5m{margin:8px 30px 0;font-size:13px;color:var(--mut,#8a7f73)}
.pu5sh{display:inline-block;padding:0 4px;border:1px solid currentColor;border-radius:4px;font-size:11px}
.tl5{margin:14px 30px 0}
.tl5l{display:block;font-size:12.5px;font-weight:600;color:var(--mut,#8a7f73);margin-bottom:6px}
.tl5r{display:flex;gap:8px;align-items:stretch}
.tl5r textarea{flex:1;min-height:52px;resize:vertical;font:inherit;font-size:15px;padding:10px 12px;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12));background:var(--card,#fff);color:var(--ink)}
.tl5r .b{align-self:stretch;min-width:84px}
.tl5c{margin-top:10px;padding:12px 14px;border-radius:12px;background:var(--v7raise,#efe8de);font-size:14.5px}
.tl5c p{margin:0 0 6px}.tl5c ul{margin:4px 0 10px;padding-left:18px}.tl5c li{margin:3px 0;line-height:1.45}
.tl5q{font-weight:600}.tl5a{display:flex;gap:8px}
.sy4min{padding-bottom:18px}
.fz.sy4 .pu5:last-child,.fz.sy4 .pu5m:last-child{margin-bottom:18px}
@media(max-width:700px){.pu5,.pu5m,.tl5{margin-left:16px;margin-right:16px}.pu5{flex-wrap:wrap}.tl5r{flex-direction:column}.tl5r .b{min-height:44px}}

.r7l,.rvbody{min-width:0}
.rvdocwrap{overflow-x:hidden}
#rvpdf .rd,#rbpdf .rd{white-space:normal}

.o8f{display:grid;gap:12px}
.o8l{font-size:12.5px;font-weight:600;color:var(--mut,#8a7f73)}
.o8who{display:grid;gap:8px}
.o8p{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12));background:var(--card,#fff);color:var(--ink);font:inherit;cursor:pointer}
.o8p i{flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:600;background:var(--v7raise,#efe8de)}
.o8p b{display:block;font-size:14.5px}.o8p small{display:block;font-size:12.5px;color:var(--mut,#8a7f73)}
.o8p.on{border-color:var(--v7och,#8C6D48);box-shadow:0 0 0 1px var(--v7och,#8C6D48) inset}.o8p.on i{background:var(--v7och,#8C6D48);color:#fff}
.o8g{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.o8g label,.o8fee{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--mut,#8a7f73)}
.o8g select,.o8g input,.o8fee input{font:inherit;font-size:15px;font-weight:400;color:var(--ink);padding:10px 12px;border-radius:10px;border:1px solid var(--line,rgba(0,0,0,.12));background:var(--card,#fff);min-height:44px;width:100%;box-sizing:border-box}
.o8fee small{font-weight:400}
.o8new{margin-top:14px;padding-top:14px;border-top:1px solid var(--line,rgba(0,0,0,.1))}
.o8ch{position:fixed;inset:0;z-index:9000;background:rgba(30,24,20,.45);display:grid;place-items:center;padding:16px}
.o8cb{background:var(--card,#fff);border-radius:18px;padding:20px;width:min(420px,100%);display:grid;gap:8px;max-height:80vh;overflow:auto}
.o8cb b{font-size:17px;margin-bottom:6px}
.o8cb button{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12));background:transparent;color:var(--ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}
.o8cb button i{width:10px;height:10px;border-radius:50%}
.o8cb .o8x{justify-content:center;border:0;color:var(--mut,#8a7f73)}
@media(max-width:900px){.rvsheet.o8 .r7l{order:1}.rvsheet.o8 .r7pn{order:2}}


/* ===== v109: offline pill ===== */
#offpill{position:fixed;left:50%;transform:translateX(-50%);top:calc(8px + env(safe-area-inset-top,0px));z-index:1900;display:flex;align-items:center;gap:8px;max-width:min(94vw,560px);padding:7px 8px 7px 12px;border-radius:999px;background:var(--deep,#2A211B);color:#F3ECE2;font-size:12.5px;line-height:1.3;box-shadow:0 6px 18px rgba(0,0,0,.18)}
#offpill[hidden]{display:none}
#offpill .offdot{flex:0 0 8px;height:8px;border-radius:50%;background:#C9B79F}
#offpill.off .offdot{background:#E0A43B}
#offpill.warn .offdot{background:#E36A55}
#offpill.busy .offdot{background:#8FB27A;animation:offp 1s ease-in-out infinite}
#offpill span{padding-right:4px}
#offpill button{font:inherit;font-size:12.5px;font-weight:600;border:0;border-radius:999px;padding:5px 11px;background:#F3ECE2;color:#2A211B;cursor:pointer;white-space:nowrap}
@keyframes offp{50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){#offpill.busy .offdot{animation:none}}

/* ===== v109: Kotak masuk ===== */
.v9tc{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border-radius:14px;background:var(--card,#fff);border:1px solid var(--v7och,#8C6D48);color:var(--ink);text-decoration:none}
.v9tc .ic{flex:0 0 22px;width:22px;height:22px;color:var(--v7och,#8C6D48)}
.v9tc span{flex:1;min-width:0}.v9tc b{display:block;font-size:14.5px}.v9tc small{display:block;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v9tc em{font-style:normal;font-size:13px;font-weight:600;color:var(--v7och,#8C6D48)}
.v9pick{position:relative;cursor:pointer}
.v9in{display:grid;gap:10px;max-width:880px}
.v9h{font-size:13px;font-weight:600;color:var(--muted);margin:10px 0 0;display:flex;gap:8px;align-items:center}
.v9h span{font-size:11px;background:var(--warn);color:#fff;border-radius:999px;padding:1px 7px}
.v9note{padding:10px 12px;border-radius:12px;background:var(--v7raise,#efe8de);font-size:13.5px}
.v9note.err{background:var(--redbg,#FBEDE9);color:var(--red,#C23B2A)}
.v9empty{padding:22px 18px;border-radius:14px;border:1px dashed var(--line,rgba(0,0,0,.18));text-align:left}
.v9empty b{font-size:15px}.v9empty p{margin:6px 0 0;font-size:13.5px;color:var(--muted);max-width:60ch}
.v9it{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px 12px;padding:12px;border-radius:14px;background:var(--card,#fff);border:1px solid var(--line,rgba(0,0,0,.1))}
.v9it.sel{border-color:var(--v7och,#8C6D48)}
.v9th{grid-row:1/3;width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--v7raise,#efe8de);display:grid;place-items:center;text-decoration:none}
.v9th img{width:100%;height:100%;object-fit:cover}
.v9ft{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--red,#C23B2A)}
.v9mt{min-width:0;display:grid;gap:2px;align-content:start}
.v9mt b{font-size:14.5px;overflow-wrap:anywhere}
.v9mt small{font-size:12.5px;color:var(--muted)}
.v9chip{justify-self:start;font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--v7raise,#efe8de);color:var(--ink);margin-top:2px}
.v9chip.new{background:var(--warn);color:#fff}
.v9ac{display:flex;flex-wrap:wrap;gap:6px;grid-column:2}
.v9ac .b.on{outline:2px solid var(--v7och,#8C6D48);outline-offset:-2px}
.v9pk{grid-column:1/-1;display:grid;gap:6px;padding-top:10px;border-top:1px solid var(--line,rgba(0,0,0,.08))}
.v9pkh{font-size:12.5px;font-weight:600;color:var(--muted)}
.v9opt{display:grid;gap:1px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12));background:transparent;color:var(--ink);font:inherit;cursor:pointer;min-height:44px}
.v9opt b{font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px}.v9opt small{font-size:12.5px;color:var(--muted)}
.v9opt em{font-style:normal;font-size:11.5px;color:var(--v7och,#8C6D48);font-weight:600}
.v9opt.best{border-color:var(--v7och,#8C6D48)}
.v9sc{margin-top:14px}
.v9sc summary{cursor:pointer;display:grid;gap:2px;list-style:none}
.v9sc summary::-webkit-details-marker{display:none}
.v9sc summary b{font-size:15px}.v9sc summary b::after{content:" ›";color:var(--muted)}
.v9sc[open] summary b::after{content:" ⌄"}
.v9url{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px}
.v9url input{flex:1 1 260px;min-width:0;font:inherit;font-size:12.5px;padding:9px 10px;border-radius:10px;border:1px solid var(--line,rgba(0,0,0,.14));background:var(--field,#fff);color:var(--ink)}
.v9warn{font-size:12.5px;color:var(--warn);margin:8px 0 4px}
.v9steps{margin:8px 0;padding-left:20px;display:grid;gap:8px;font-size:14px;line-height:1.5;max-width:68ch}
.v9pvr{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;font-size:12.5px;color:var(--muted)}
@media(max-width:600px){.v9it{grid-template-columns:52px minmax(0,1fr)}.v9th{width:52px;height:52px}.v9ac{grid-column:1/-1}}

/* ===== v110: Periksa PDF (editor coretan meeting per halaman) ===== */
html.pv-lock,html.pv-lock body{overflow:hidden}
#pvov{position:fixed;inset:0;z-index:380;background:#3B3733;color:#F3ECE2;display:flex;flex-direction:column;font-size:14px}
#pvov[hidden]{display:none}
#mkov{z-index:420}
.pvtop{display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;background:#2A2622}
.pvx{display:flex;align-items:center;gap:4px;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:8px 6px;min-height:40px}
.pvx .ic{width:18px;height:18px}
.pvttl{flex:1;min-width:0}.pvttl b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pvttl small{font-size:12px;color:#C9BBA9}
.pvbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:#2A2622;border-top:1px solid rgba(255,255,255,.06)}
.pvhint{font-size:12.5px;color:#D9CDBE;line-height:1.35}
.pvnb{flex:none;border:0;background:rgba(255,255,255,.1);color:inherit;font:inherit;font-size:12.5px;border-radius:999px;padding:7px 12px;cursor:pointer}
.pvnb em{font-style:normal;font-weight:700;margin-left:2px}
.pvmain{flex:1;min-height:0;display:flex;position:relative}
.pvscroll{flex:1;min-width:0;overflow:auto;-webkit-overflow-scrolling:touch;padding:14px 12px calc(40px + env(safe-area-inset-bottom,0px))}
.pvcol{margin:0 auto;display:grid;gap:16px;max-width:920px}
@media(min-width:760px){.pvcol{grid-template-columns:1fr 1fr}}
.pvpg{position:relative;display:block;width:100%;padding:0;border:0;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.35);cursor:pointer;font:inherit;overflow:hidden}
.pvpg:focus-visible{outline:3px solid #E4B23A;outline-offset:2px}
.pvpg.has{box-shadow:0 0 0 3px #C23B2A,0 2px 10px rgba(0,0,0,.35)}
.pvpg img{position:absolute;inset:0;width:100%;height:100%;display:block;user-select:none;-webkit-user-drag:none}
.pvov2{position:absolute;inset:0;pointer-events:none}
.pvsv{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pvpin{position:absolute;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:50%;background:#C23B2A;color:#fff;font-style:normal;font-size:11px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px #fff}
.pvpn{position:absolute;left:6px;bottom:6px;font-size:11px;background:rgba(0,0,0,.6);color:#fff;border-radius:6px;padding:2px 7px;pointer-events:none}
.pvgo{position:absolute;right:6px;bottom:6px;font-size:12px;font-weight:600;background:#2A2622;color:#F3ECE2;border-radius:999px;padding:4px 11px;pointer-events:none}
.pvside{display:none;width:320px;flex:0 0 320px;background:#F7F2EA;color:#2A211B;overflow:auto;padding:12px;border-left:1px solid rgba(0,0,0,.1)}
#pvov.pv-notes .pvside{display:block}
.pvsh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.pvsx{border:0;background:none;font-size:22px;line-height:1;cursor:pointer;color:inherit;width:36px;height:36px}
.pvn{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;width:100%;text-align:left;padding:10px 4px;border:0;border-top:1px solid rgba(0,0,0,.08);background:none;color:inherit;font:inherit;font-size:14px;cursor:pointer}
.pvnn{width:26px;height:26px;border-radius:50%;color:#fff;font-weight:700;font-size:12.5px;display:grid;place-items:center}
.pvn small{display:block;font-size:11.5px;color:#7a6e62}
.pvne{font-size:13px;color:#6b5f54;line-height:1.5}
.pvmsg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(20,16,13,.88);padding:12px 18px;border-radius:12px;font-size:14px;max-width:80vw;text-align:center;z-index:3}
.pvmsg[hidden]{display:none}
.pvask{position:fixed;inset:0;z-index:440;background:rgba(0,0,0,.45);display:flex;align-items:flex-end;justify-content:center;padding:12px}
.pvaskb{width:min(480px,100%);background:#FBF8F3;color:#2A211B;border-radius:18px;padding:16px;display:grid;gap:10px;margin-bottom:env(safe-area-inset-bottom,0px);max-height:85vh;overflow:auto}
.pvdh{display:flex;justify-content:space-between;align-items:center}.pvdh b{font-size:17px}
.pvdone .sub{margin:0;color:#6b5f54}
.pvseg{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#EEE6DA;border-radius:12px;padding:3px}
.pvseg button{border:0;border-radius:10px;background:none;font:inherit;font-size:13px;padding:9px 6px;cursor:pointer;color:inherit}
.pvseg button.on{background:#fff;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.pvseg button:disabled{opacity:.4}
.v9w{width:100%;justify-content:center;min-height:46px}
.pvok{font-size:13.5px;color:#4F6B3A;font-weight:600}
.pvdone select{font:inherit;font-size:15px;padding:10px;border-radius:10px;border:1px solid rgba(0,0,0,.16);background:#fff;width:100%}
.pvnav{display:flex;align-items:center;gap:2px;margin-right:6px;background:rgba(255,255,255,.1);border-radius:999px;padding:2px}
.pvnav button{width:34px;height:34px;border:0;border-radius:50%;background:none;color:inherit;font-size:20px;line-height:1;cursor:pointer}
.pvnav button:disabled{opacity:.3}
.pvnav b{font-size:12.5px;font-weight:600;padding:0 4px;white-space:nowrap}
.mkpic .pvhd{position:absolute;display:block;pointer-events:none;-webkit-user-drag:none}
@media(min-width:900px){.pvask{align-items:center}}
@media(max-width:979px){.pvside{position:absolute;left:0;right:0;bottom:0;width:auto;max-height:55%;border-left:0;border-top:1px solid rgba(0,0,0,.1);border-radius:16px 16px 0 0;box-shadow:0 -8px 24px rgba(0,0,0,.3);z-index:2}}
.pvcutb{flex:none;border:0;border-radius:999px;background:#E4B23A;color:#2A211B;font:inherit;font-size:12.5px;font-weight:600;padding:7px 12px;margin-right:6px;cursor:pointer;white-space:nowrap}
#crov .crmk{position:relative;width:100%;height:100%}
#crov .crmk .pvsv{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#crov .crmk .pvpin{position:absolute}
#pvcut{position:fixed;inset:0;z-index:9600;background:rgba(0,0,0,.5);display:flex;align-items:flex-end;justify-content:center;padding:12px}
.pvcb{width:min(520px,100%);max-height:90vh;overflow:auto;background:#FBF8F3;color:#2A211B;border-radius:18px;padding:16px;display:grid;gap:12px;margin-bottom:env(safe-area-inset-bottom,0px)}
.pvcimg{background:#EEE6DA;border-radius:12px;padding:8px;display:grid;place-items:center}
.pvcimg img{max-width:100%;max-height:34vh;display:block;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.pvcb .f{display:grid;gap:6px;font-size:12.5px;font-weight:600;color:#6b5f54}
.pvcb textarea,.pvcb select{font:inherit;font-size:16px;font-weight:400;color:#2A211B;border:1px solid rgba(0,0,0,.16);border-radius:10px;padding:10px;background:#fff;width:100%;box-sizing:border-box}
.pvkk{display:flex;flex-wrap:wrap;gap:6px}
.pvkk button{border:1px solid rgba(0,0,0,.15);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer;color:#2A211B}
.pvkk button.on{background:var(--c);border-color:var(--c);color:#fff}
.pvcg{display:grid;gap:6px}
.pvcgh{font-size:12.5px;font-weight:600;color:#6b5f54}
.pvct{display:grid;gap:1px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.14);background:#fff;color:#2A211B;font:inherit;cursor:pointer;min-height:44px}
.pvct b{font-size:14px}.pvct small{font-size:12.5px;color:#7a6e62}
.pvct:disabled{opacity:.5}
.pvcb .row{display:flex;gap:8px;justify-content:flex-end;margin:0}
@media(min-width:900px){#pvcut{align-items:center}}

@media(max-width:600px){.pvcutb span{display:none}.pvcutb{padding:7px 10px}.pvnav b{font-size:11.5px;padding:0 2px}.pvnav button{width:30px}#mkov .mkbar{overflow-x:auto;scrollbar-width:none}#mkov .mkbar>*{flex:none}}
#mkov .mkbar .pvcutb{background:#E4B23A;color:#2A211B;border-radius:999px}
@media(max-width:600px){#mkov .mkbar .mkhint{display:none}}

#mkov .mkref{overflow:visible}
#mkov .mkref>img,#mkov .mkref .cbox{width:100%;height:100%;object-fit:cover;display:block;overflow:hidden}
#mkov .mkref .mkrcr{position:absolute;left:2px;bottom:2px;right:auto;top:auto;width:auto;height:auto;border-radius:6px;border:0!important;background:rgba(43,33,27,.82)!important;color:#fff!important;font-size:10px;font-weight:600;padding:2px 6px!important;line-height:1.3}
#mkov .mkref .mkrw{position:absolute;inset:0;overflow:hidden;display:flex;align-items:center}
#mkov .mkref .rd-cb2{position:relative;overflow:hidden;width:100%;height:0}
#mkov .mkref .rd-cb2 img{display:block;width:100%;height:auto}

.v9stg{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.v9sg{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;align-items:center;text-align:left;padding:9px 11px;border-radius:12px;border:1px solid var(--line,rgba(0,0,0,.12));background:transparent;color:var(--ink);font:inherit;cursor:pointer;min-height:48px}
.v9sg b{font-size:16px;grid-row:1/3}
.v9sg span{font-size:13.5px}
.v9sg em{font-style:normal;font-size:11px;color:var(--v7och,#8C6D48);font-weight:600}
.v9sg.best{border-color:var(--v7och,#8C6D48);box-shadow:0 0 0 1px var(--v7och,#8C6D48) inset}
.v9sg:disabled{opacity:.5}
.v9lnk{border:0;background:none;padding:0 0 0 8px;font:inherit;font-size:12.5px;color:var(--ink);text-decoration:underline;cursor:pointer}

/* ===== v116 ===== */
.v16set{display:flex;align-items:center;gap:10px;padding:9px 10px;margin-top:auto;color:#CFC2B3;text-decoration:none;font-size:13.5px}
.v16set:hover{background:rgba(237,228,214,.07);color:#fff}
.v16set.on{background:rgba(237,228,214,.1);color:#fff;box-shadow:inset 2px 0 0 #EDE4D6}
.v2side .v2foot{margin-top:0}
.v16gear,.v16plus{display:none}
@media (max-width:1099px){.v16gear{display:grid}}
@media (max-width:759px){.v16plus{display:grid}.v2add{display:none!important}.v2top .v2search{min-width:0;flex:1 1 auto}.v2top{gap:8px}}
.v2bnav .v56plus{display:none!important}
.v2bnav a{position:relative}
.v2bnav a .v9bd{position:absolute;top:0;left:calc(50% + 6px);margin:0;min-width:17px;height:17px;line-height:17px;font-size:10.5px;padding:0 4px}
/* sub-tab Lainnya */
.v2sub .v16sl{flex:none;align-self:center;font-size:11.5px;color:var(--muted);padding:0 4px 0 14px;margin-left:6px;border-left:1px solid var(--line)}
.v2sub .v16sl:first-child{border-left:0;margin-left:0;padding-left:0}
/* jalur: tahap terpilih */
.v7st{cursor:pointer}
.v7st.v16on{background:rgba(147,100,31,.08)!important;box-shadow:inset 0 -3px 0 #93641F!important;border-radius:6px 6px 0 0}
.v7st.v16on .v7nm{text-decoration:underline;text-underline-offset:3px}
.v16fc{display:block;font-size:11.5px;color:var(--muted);margin-top:4px}
.v16t8{display:flex;justify-content:flex-end;padding:6px 0 0}
.v16stage{margin-top:14px;padding:0;overflow:hidden}
.v16sh{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:16px 20px;border-bottom:1px solid var(--line)}
.v16k{font-family:var(--v7d,inherit);font-size:30px;line-height:1;font-weight:600;min-width:24px}
.v16st b{display:block;font-size:18px;font-weight:600}
.v16st small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.v16sp{flex:1}
.v16g{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.v16l{border-right:1px solid var(--line);min-width:0}
.v16r{padding:16px 18px;min-width:0}
.v16r .v9grid{grid-template-columns:1fr}
.v16r .v9app{margin:0}
.v16lh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:14px 18px 8px}
.v16lh b{font-size:15px;font-weight:600}
.v16fl .v7fl:first-child{border-top:0}
.v16fl .v7fl{flex-wrap:wrap}
.v16fa{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.v16tag{font-style:normal;font-size:10.5px;font-weight:600;color:var(--v7och,#93641F);border:1px solid currentColor;border-radius:4px;padding:0 4px;margin-right:6px;vertical-align:1px;float:left;margin-top:2px}
.v16ff{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 18px 16px;border-top:1px solid var(--line)}
.v16ff .v7note{flex-basis:100%;overflow-wrap:anywhere}
.v16emp{padding:14px 18px}
.v16emp b{display:block;font-size:14px;font-weight:600}
.v16emp p{margin:4px 0 10px;font-size:13px;color:var(--muted)}
.v16inb{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:14px;border:1px solid var(--v7och,#93641F);border-radius:10px;text-decoration:none;color:inherit;background:var(--v7och-bg,rgba(147,100,31,.07))}
.v16inb .ic{width:22px;height:22px;flex:none}
.v16inb span:not(.v16go){flex:1;min-width:0}
.v16inb b{display:block;font-size:14px}
.v16inb small{display:block;font-size:12px;color:var(--muted)}
.v16go{font-size:13px;font-weight:600}
@media (max-width:899px){.v16g{grid-template-columns:1fr}.v16l{border-right:0;border-bottom:1px solid var(--line)}.v16fa{margin-left:58px;width:100%}}
/* kotak masuk 2 kolom */
.v16in{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.v16il{min-width:0}
.v16ia{display:flex;flex-direction:column;gap:14px;position:sticky;top:90px}
.v16ib{background:var(--paper);border:1px solid var(--line);padding:16px 18px}
.v16ib>b{display:block;font-size:15px;font-weight:600}
.v16ib ol{margin:8px 0 6px;padding-left:18px;font-size:13.5px;line-height:1.7}
.v16rw{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:13px}
.v16rw:first-of-type{border-top:0;margin-top:6px}
.v16rw em{font-style:normal;color:var(--muted);text-align:right}
.v16ia .v9set,.v16ia>*:last-child{margin:0}
@media (max-width:1099px){.v16in{grid-template-columns:1fr}.v16ia{position:static}.v16ia .v16ib{display:none}}
/* pengaturan */
.v16nc .pu5{margin:0 0 6px}
.v16on{color:var(--v7sage,#4F6145);font-weight:600}
.v16off{color:var(--muted);font-weight:500}
.v16old{margin:10px 0 0}
.v16old>summary{cursor:pointer;font-size:13px;color:var(--muted);padding:8px 0}
.v16inb .v9bd{display:none}
.v9in.v16in{max-width:1180px}
.v16st{flex:1 1 200px;min-width:0}
