
.adm-root{
--bg:#F1F1F1;--card:#FFFFFF;--ink:#15120E;--cream:#F7F7F7;
--line:#E6E6E6;--line2:#D9D9D9;--fill:#EFEFEF;--fill2:#F7F7F7;
--t2:#666666;--t3:#9A9A9A;--pos:#0a8f27;--warn:#8a6d09;
--green:#14EB2E;--orange:#FF5113;--pink:#FD3D85;--purple:#cd3fff;--blue:#33aeff;--red:#F5271C;--yellow:#FFCE00;
--hel:"helvetica-neue-lt-pro",Arimo,Helvetica,Arial,sans-serif;
--cond:"helvetica-neue-lt-pro-cond","helvetica-neue-lt-pro",Arimo,Helvetica,Arial,sans-serif;
--sh:0 1px 2px rgba(21,18,14,.04),0 12px 28px -18px rgba(21,18,14,.16);
--sh-sm:none;
}
.adm-root *{box-sizing:border-box;margin:0;}
.adm-root{height:100vh;overflow:hidden;}
.adm-root{background:var(--bg);font-family:var(--hel);color:var(--ink);-webkit-font-smoothing:antialiased;}
.num{font-variant-numeric:tabular-nums;letter-spacing:-.01em;}
.adm-root ::-webkit-scrollbar{width:9px;height:9px;}
.adm-root ::-webkit-scrollbar-track{background:transparent;}
.adm-root ::-webkit-scrollbar-thumb{background:#D0D0D0;border-radius:99px;border:2px solid var(--bg);}
.adm-root ::-webkit-scrollbar-thumb:hover{background:#B8B8B8;}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.fade{animation:fadeUp .18s cubic-bezier(.4,0,.2,1);}
.adm-root input,.adm-root textarea,.adm-root button{font-family:inherit;}
.adm-root input:focus,.adm-root textarea:focus,.adm-root button:focus{outline:none;}
/* labels */
.lab{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3);}
.stamp{font-family:var(--cond);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;border:1.5px solid var(--ink);border-radius:0;padding:5px 9px;display:inline-block;line-height:1;}
/* badges */
.chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:5px 12px;border-radius:999px;white-space:nowrap;}
.chip .dot{width:7px;height:7px;min-width:7px;min-height:7px;border-radius:50%;background:currentColor;flex:none;align-self:center;aspect-ratio:1;box-sizing:border-box;}
.b-neu{background:#EAEAEA;color:#666;}
.b-blue{background:#E8EEFF;color:#2775d6;}
.b-grn{background:#DDF7D6;color:var(--pos);}
.b-red{background:#FFE7E4;color:#e02418;}
.b-yel{background:#FFF3C4;color:var(--warn);}
.b-pur{background:#F3E8FF;color:#a020e0;}
.b-or{background:#FFE7DA;color:#c53f0c;}
.sgn{border:none;cursor:pointer;font-family:var(--hel);font-weight:700;font-size:15px;padding:6px 13px;border-radius:8px;background:transparent;color:var(--t2);}
.sgn.on{background:var(--ink);color:#fff;}
.mm:hover{background:var(--fill)!important;}
.frozen input,.frozen textarea,.frozen select,.frozen .cin,.frozen .pnum,.frozen .stab{pointer-events:none;opacity:.6;}
.frozen .addlnk,.frozen .row-del{pointer-events:none;opacity:.4;}
.frozen .actions,.frozen .actions *{pointer-events:auto;opacity:1;}
/* buttons */
.btn{font-family:var(--hel);font-weight:700;font-size:14px;border-radius:999px;padding:11px 20px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.14s;line-height:1;white-space:nowrap;}
.btn:active{transform:translateY(1px);}
.pri{background:var(--ink);color:var(--cream);}
.pri:hover{background:#2b2b2b;}
.hi{background:var(--orange);color:#fff;}
.hi:hover{filter:brightness(.95);}
.btn.apr{background:#DDF7D6;color:var(--pos);border-color:#bfe6ba;}
.btn.apr:hover{background:#cdf2c4;}
.btn.rej{background:#FFE7DA;color:#c53f0c;border-color:#f6cdb6;}
.btn.rej:hover{background:#ffdcc9;}
.sec{background:var(--card);color:var(--ink);border-color:var(--line2);}
.sec:hover{background:var(--fill);}
.ghost{background:transparent;color:var(--t2);}
.ghost:hover{background:var(--fill);color:var(--ink);}
.sm{padding:8px 14px;font-size:13px;}
.btn-org{background:var(--orange);color:#fff;border:none;height:42px;padding:0 18px;border-radius:999px;font-family:var(--hel);font-weight:600;font-size:14px;cursor:pointer;transition:.13s;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;}
.btn-org:hover{filter:brightness(.95);}
.xs{padding:6px 11px;font-size:12.5px;}
.acard{background:var(--fill2);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.acard-hd{display:flex;align-items:flex-start;gap:11px;padding:13px 14px;}
.acard-ic{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.acard-ic.grn{background:#DDF7D6;color:var(--pos);}
.acard-ic.blue{background:#E8EEFF;color:#2775d6;}
.acard-ic.red{background:#FFE7E4;color:#e02418;}
.acard-t{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.25;}
.acard-s{font-size:12px;color:var(--t2);margin-top:2px;line-height:1.3;}
.acard-bd{border-top:1px solid var(--line);padding:11px 14px;display:flex;flex-direction:column;gap:10px;}
.arow{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;}
.arow-k{color:var(--t2);}
.arow-v{color:var(--ink);font-weight:700;}
.chip.tiny{font-size:10px;padding:3px 8px;}
.btn-dgr{background:transparent;color:var(--red);border:none;font-family:var(--hel);font-weight:600;font-size:13px;padding:9px;cursor:pointer;border-radius:999px;transition:.13s;width:100%;}
.btn-dgr:hover{background:#FFE7E4;}
.btn-rej{background:#FFE7DA;color:#c53f0c;border:1px solid #f6cdb6;font-family:var(--hel);font-weight:600;font-size:13px;padding:10px;cursor:pointer;border-radius:999px;transition:.13s;width:100%;}
.btn-rej:hover{background:#ffdcc9;}
.addsc{font-size:13px;font-weight:600;background:var(--orange);color:#fff;border:none;cursor:pointer;padding:8px 15px;border-radius:999px;transition:.13s;}
.addsc:hover{opacity:.85;}
/* card */
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh-sm);}
/* nav */
.navlist{display:flex;flex-direction:column;gap:3px;}
.nav{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;font-weight:600;font-size:14px;color:var(--t2);cursor:pointer;border:none;background:transparent;width:100%;text-align:left;transition:.13s;}
.nav.on{background:var(--ink);color:var(--cream);}
.nav:hover:not(.on){background:var(--fill);color:var(--ink);}
/* pill tabs */
.ptabs{position:relative;display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px;gap:2px;box-shadow:var(--sh-sm);}
.ptab{position:relative;z-index:1;padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;color:var(--t2);cursor:pointer;border:none;background:transparent;transition:.12s;white-space:nowrap;}
.ptab.on{background:var(--ink);color:#fff;}
.ptab:hover:not(.on){color:var(--ink);}
/* generic sliding pill — used by sidebar nav, scenario tabs, filter & pg tabs */
[data-pillbar]{position:relative;}
.pill-ind{position:absolute;left:0;top:0;z-index:0;pointer-events:none;opacity:0;background:var(--ink);border-radius:12px;}
[data-pillbar] .pill-ind{transition:transform .42s cubic-bezier(.34,1.32,.5,1),width .4s cubic-bezier(.34,1.32,.5,1),height .4s cubic-bezier(.34,1.32,.5,1),opacity .18s ease;box-shadow:0 4px 12px -6px rgba(21,18,14,.25);}
[data-pillbar] .nav,[data-pillbar] .stab{position:relative;z-index:1;}
[data-pillbar] .nav.on,[data-pillbar] .stab.on,[data-pillbar] .ptab.on{background:transparent;}
.prop-embed .sc-host{position:absolute;inset:0;}
/* scenario tabs — navegação discreta */
.stab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;font-weight:600;font-size:13px;color:var(--t2);cursor:pointer;border:1px solid transparent;background:transparent;transition:.14s;}
.stab.on{background:var(--fill);border-color:transparent;color:var(--ink);box-shadow:none;}
.stab:hover:not(.on){color:var(--ink);background:var(--fill2);}
.sc-x{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;color:var(--t3);transition:.12s;}
.sc-x:hover{background:#FFE7E4;color:var(--red);}
/* tables */
.th{display:grid;column-gap:10px;padding:12px 22px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--t3);border-bottom:1px solid var(--line);}
.tr{display:grid;padding:15px 22px;align-items:center;border-bottom:1px solid var(--line);transition:background .12s;cursor:pointer;}
.tr:hover{background:var(--fill2);}
.tr:last-child{border-bottom:none;}
/* fields */
.fl{font-size:13px;font-weight:600;color:var(--t2);margin-bottom:7px;}
.inp{background:var(--card);border:1px solid var(--line2);border-radius:12px;padding:11px 14px;font:inherit;font-size:14px;color:var(--ink);width:100%;transition:.14s;}
.inp::placeholder{color:var(--t3);}
.inp:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(21,18,14,.1);}
.inp[readonly]{background:var(--fill);border-color:var(--line);cursor:default;box-shadow:none;}
.mgm{color:var(--pos);}
.mgm.neg{color:#F5271C;}
.rmenu-btn{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--t3);cursor:pointer;border:none;background:transparent;transition:.12s;}
.rmenu-btn:hover{background:var(--fill);color:var(--ink);}
.rmenu{position:absolute;top:36px;right:0;background:var(--card);border:1px solid var(--line2);border-radius:12px;box-shadow:0 16px 34px -12px rgba(21,18,14,.28);padding:5px;z-index:30;min-width:200px;}
.rmi{display:flex;width:100%;align-items:center;gap:8px;padding:9px 11px;border:none;background:transparent;font-family:var(--hel);font-size:13.5px;font-weight:600;color:var(--ink);border-radius:8px;cursor:pointer;text-align:left;}
.rmi:hover{background:var(--fill);}
.rmi.dgr{color:var(--red);}
.rmi.dgr:hover{background:#FFE7E4;}
.adibtn{font-size:12.5px;font-weight:700;border:1px solid var(--line2);background:var(--card);border-radius:999px;padding:7px 12px;cursor:pointer;font-family:var(--hel);transition:.12s;}
.adibtn:hover{background:var(--fill);}
.adibtn.eq{color:#c53f0c;}
.adibtn.ot{color:#2775d6;}
.adibtn.rp{color:#a020e0;}
.adibtn.ds{color:#F5271C;}
.aditag{flex-shrink:0;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:5px;}
.imp-pos{color:var(--ink);}
.imp-neg{color:#F5271C;}
.cin{background:transparent;border:none;border-radius:8px;padding:6px 8px;font:inherit;font-size:14px;color:var(--ink);width:100%;transition:.13s;}
.cin::placeholder{color:var(--t3);}
.cin:hover{background:var(--fill);}
.cin:focus{background:var(--card);border-color:var(--ink);box-shadow:0 0 0 2px rgba(21,18,14,.12);}
.cin-r{text-align:right;border:1px solid var(--line2);background:var(--card);}
.pnum{width:56px;text-align:center;background:var(--fill);border:1px solid var(--line2);border-radius:9px;padding:6px;font:inherit;font-size:14px;color:var(--ink);}
.pnum:focus{border-color:var(--ink);}
/* summary panel */
.rp{width:296px;flex-shrink:0;height:100%;overflow-y:auto;padding:22px 18px;border-left:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;gap:12px;}
.scard{background:var(--fill2);border:1px solid var(--line);border-radius:16px;padding:16px;}
.sr{display:flex;align-items:center;justify-content:space-between;padding:7px 0;font-size:14px;}
.row-del{opacity:0;appearance:none;border:none;background:transparent;color:#C0C0C0;cursor:pointer;padding:5px;border-radius:8px;transition:.13s;display:flex;align-items:center;justify-content:center;}
.tr-item:hover .row-del,.irow:hover .row-del{opacity:1;}
.row-del:hover{background:#FFE7E4;color:var(--red);}
.addlnk{font-size:13px;font-weight:700;color:var(--t2);background:transparent;border:none;cursor:pointer;padding:7px 12px;border-radius:999px;transition:.13s;display:inline-flex;align-items:center;gap:6px;}
.addlnk:hover{background:var(--fill);color:var(--ink);}
.add-rep{color:var(--ink);}
.add-rep:hover{background:var(--fill);color:var(--ink);}
.add-eq{color:var(--ink);}
.add-eq:hover{background:var(--fill);color:var(--ink);}
.add-ot{color:var(--ink);}
.add-ot:hover{background:var(--fill);color:var(--ink);}
.add-ds{color:var(--red);}
.attach-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:1px dashed var(--line2);background:var(--card);border-radius:11px;font-family:var(--hel);font-size:13px;font-weight:600;color:var(--t2);cursor:pointer;transition:.13s;}
.attach-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--fill2);}
.doc-chip{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--fill2);}
.doc-name{font-size:13px;font-weight:600;color:var(--ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.doc-size{font-size:11.5px;color:var(--t3);flex-shrink:0;}
.doc-x{width:22px;height:22px;border:none;background:transparent;color:var(--t3);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.doc-x:hover{background:#FFE7E4;color:var(--red);}
.doc-badge{font-size:9.5px;font-weight:700;padding:2px 7px;border-radius:6px;flex-shrink:0;letter-spacing:.03em;text-transform:uppercase;}
.doc-badge.pdf{background:#FFE7DA;color:#c53f0c;}
.doc-badge.edit{background:#E4EEFF;color:#2f5fd0;text-transform:none;letter-spacing:0;}
.doc-badge.file{background:var(--fill);color:var(--t3);}
.doc-chip.clickable{cursor:pointer;transition:border-color .12s,background .12s;}
.doc-chip.clickable:hover{border-color:var(--orange);background:var(--fill2);}
.doc-badge.cur{background:#DDF7D6;color:#2f7d32;text-transform:none;letter-spacing:0;}
.doc-chip.current{border-color:#bfe6ba;background:#F4FBF2;}
.doc-chip.current.clickable:hover{border-color:#8fd88a;background:#EEF9EC;}
.arq-sub{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--t2);margin-bottom:8px;}
.attach-btn.attach-ic{width:38px;height:38px;padding:0;justify-content:center;gap:0;flex-shrink:0;}
.iname-ro{font-weight:700;font-size:14.5px;color:var(--ink);padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1;}
.icat-ro{font-size:12px;color:var(--t3);padding:0 8px;margin-top:1px;}
.sc-check{width:18px;height:18px;border-radius:50%;border:1.6px solid var(--line2);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:.12s;flex-shrink:0;}
.sc-check:hover{border-color:#5cbf57;}
.sc-check.on{background:#2f7d32;border-color:#2f7d32;color:#fff;}
.arq-empty{font-size:12.5px;color:var(--t3);padding:9px 10px;border:1px dashed var(--line2);border-radius:10px;text-align:center;}
.scpick{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:var(--card);font-family:var(--hel);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;width:100%;transition:.13s;}
.scpick:hover{background:var(--fill2);}
.scpick.on{border-color:var(--ink);background:var(--fill2);}
.scpick-box{width:20px;height:20px;border-radius:6px;border:1.6px solid var(--line2);display:flex;align-items:center;justify-content:center;color:transparent;flex-shrink:0;transition:.13s;}
.scpick-r .scpick-box{border-radius:50%;}
.scpick.on .scpick-box{background:var(--ink);border-color:var(--ink);color:#fff;}
.ver-pill{font-size:11.5px;font-weight:700;color:var(--t2);background:var(--fill);border-radius:999px;padding:4px 10px;white-space:nowrap;}
.ro-banner{max-width:800px;margin:0 auto 18px;display:flex;align-items:center;gap:12px;background:#FFF4EC;border:1px solid #F3D6BE;border-radius:12px;padding:12px 16px;font-size:13px;color:var(--t2);line-height:1.4;}
.ro-banner strong{color:var(--ink);font-weight:700;}
.ro-banner .btn{margin-left:auto;flex-shrink:0;}
.doc-sheet.ro [contenteditable]{pointer-events:none;}
.doc-sheet.ro [contenteditable]:hover{background:transparent;}
.cli-av-wrap{position:relative;flex-shrink:0;}
.cli-av{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;cursor:pointer;position:relative;overflow:hidden;}
.cli-av-edit{position:absolute;inset:0;background:rgba(10,8,6,.44);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:.13s;}
.cli-av:hover .cli-av-edit{opacity:1;}
.av-backdrop{position:fixed;inset:0;z-index:39;}
.cli-av-pop{position:absolute;top:56px;left:0;z-index:40;background:var(--card);border:1px solid var(--line2);border-radius:14px;box-shadow:0 16px 34px -12px rgba(21,18,14,.28);padding:12px;width:224px;display:flex;flex-direction:column;gap:12px;}
.cli-av-opt{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--ink);padding:9px 11px;border-radius:10px;border:1px solid var(--line2);background:var(--card);cursor:pointer;transition:.12s;font-family:var(--hel);width:100%;}
.cli-av-opt:hover{background:var(--fill);}
.cli-av-opt.dgr{color:var(--red);border-color:transparent;padding-left:11px;}
.cli-av-opt.dgr:hover{background:#FFE7E4;}
.av-colors{display:flex;gap:9px;flex-wrap:wrap;}
.av-sw{width:27px;height:27px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:.12s;padding:0;}
.av-sw:hover{transform:scale(1.08);}
.av-sw.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--card) inset;}
.av-lbl{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--t3);}
.tpl-select{appearance:none;border:1px solid var(--line2);background:var(--fill2);border-radius:999px;height:32px;padding:0 30px 0 13px;font-family:var(--hel);font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;outline:none;}
.tpl-select:hover{background:var(--fill);}
.doc-body{outline:none;}
.sidebar{width:230px;flex-shrink:0;background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:20px 14px 16px;gap:3px;overflow-y:auto;overflow-x:hidden;transition:width .18s ease;}
.sidebar.sb-collapsed{width:64px;padding:20px 10px 16px;overflow:visible;}
.sb-collapsed .nav-txt,.sb-collapsed .mode-txt,.sb-collapsed .mode-chev,.sb-collapsed .nav-badge,.sb-collapsed .user-txt,.sb-collapsed .sb-toggle-txt{display:none;}
.sb-collapsed .nav{justify-content:center;padding:10px 0;position:relative;transition:none;}
.sb-collapsed .mm{justify-content:center;}
.sb-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px;}
.user-card{display:flex;align-items:center;gap:11px;padding:10px;border-radius:14px;border:1px solid var(--line);}
.sb-collapsed .user-card{justify-content:center;padding:10px 4px;}
.sb-toggle{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;padding:9px 10px;border-radius:10px;cursor:pointer;font-family:var(--hel);font-size:13px;font-weight:600;color:var(--t2);transition:.13s;}
.sb-toggle:hover{background:var(--fill);color:var(--ink);}
.sb-toggle svg{flex-shrink:0;transition:transform .2s;}
.sb-collapsed .sb-toggle{justify-content:center;padding:9px 0;}
.sb-collapsed .sb-collapse-btn svg{transform:rotate(180deg);}
.sb-collapsed .nav:hover{background:var(--ink);color:#fff;border-radius:12px 0 0 12px;z-index:60;transition:none;}
.sb-collapsed .nav:hover .nav-txt{display:flex;align-items:center;position:absolute;left:100%;top:0;bottom:0;background:var(--ink);color:#fff;padding:0 16px 0 2px;border-radius:0 12px 12px 0;font-size:14px;font-weight:600;white-space:nowrap;z-index:60;box-shadow:8px 0 20px -8px rgba(21,18,14,.35);}
.ctx-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--t3);cursor:pointer;transition:.12s;width:fit-content;}
.ctx-back:hover{color:var(--ink);}
.ctx-lab{font-size:11px;font-weight:600;color:var(--t3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;}
.ro-inp{background:transparent;border:1px solid transparent;border-radius:8px;padding:3px 6px;margin-left:-6px;font-family:var(--hel);font-size:14px;color:var(--ink);width:100%;transition:.12s;cursor:text;}
.ro-inp:hover{background:var(--fill2);}
.ro-inp:focus{background:var(--card);border-color:var(--line2);outline:none;box-shadow:0 0 0 3px rgba(21,18,14,.06);}
select.ro-inp{cursor:pointer;}
.ctx-brief{font-size:13px;color:var(--t2);line-height:1.45;}
.ctx-brief.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ctx-link{font-size:12.5px;font-weight:600;color:var(--orange);cursor:pointer;display:inline-block;margin-top:5px;}
.ctx-link:hover{text-decoration:underline;}
.inp-sel{background:var(--fill2);border-color:var(--line);cursor:pointer;}
.doc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;border-bottom:1px solid var(--line);background:var(--card);flex-shrink:0;}
.doc-wrap{flex:1;overflow-y:auto;background:var(--bg);padding:32px 24px 60px;}
.doc-sheet{max-width:800px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 30px -12px rgba(21,18,14,.18);padding:64px 72px;}
.doc-sheet [contenteditable]{outline:none;border-radius:4px;transition:background .12s,box-shadow .12s;}
.doc-sheet [contenteditable]:hover{background:#FAFAF8;}
.doc-sheet [contenteditable]:focus{background:#fff;box-shadow:0 0 0 2px var(--orange);}
.doc-brand{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--ink);text-transform:uppercase;}
.doc-meta{font-size:13.5px;color:var(--t2);line-height:1.7;}
.doc-h1{font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.2;}
.doc-sec{font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--orange);margin-bottom:10px;}
.doc-p{font-size:14.5px;line-height:1.65;color:#2A2620;}
.doc-li{font-size:14.5px;line-height:1.5;color:#2A2620;padding:5px 0 5px 22px;position:relative;}
.doc-li::before{content:"";position:absolute;left:4px;top:13px;width:5px;height:5px;border-radius:50%;background:var(--orange);}
.doc-total{font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.01em;}
.doc-divider{height:1px;background:var(--line);margin:34px 0;}
@media print{body *{visibility:hidden;}.doc-sheet,.doc-sheet *{visibility:visible;}.doc-sheet{position:absolute;left:0;top:0;width:100%;max-width:none;border:none;box-shadow:none;border-radius:0;padding:40px 48px;}.doc-toolbar{display:none;}}
.add-ds:hover{background:#FFE7E4;color:var(--red);}
.irow{display:grid;column-gap:10px;padding:8px 22px;align-items:center;border-bottom:1px solid var(--line);transition:background .12s;}
.icat-inline{font-size:12px;color:var(--t3);flex-shrink:0;white-space:nowrap;}
.irow:hover{background:var(--fill2);}
.cin-name{font-weight:700;font-size:14.5px;color:var(--ink);border:1px solid var(--line2);background:var(--card);}
.cin-cat{font-size:12px;color:var(--t3);margin-top:1px;}
.savedef{font-size:11px;color:var(--ink);text-decoration:underline;cursor:pointer;margin-top:3px;display:inline-block;}
.savedef:hover{color:var(--orange);}
.picker{position:absolute;left:22px;bottom:52px;width:340px;background:var(--card);border:1px solid var(--line2);border-radius:14px;box-shadow:0 20px 44px -14px rgba(21,18,14,.32);padding:8px;z-index:40;}
.picker-search{width:100%;border:1px solid var(--line2);border-radius:10px;padding:9px 12px;font:inherit;font-size:13.5px;color:var(--ink);margin-bottom:6px;}
.picker-list{display:flex;flex-direction:column;gap:2px;max-height:150px;overflow-y:auto;}
.picker-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:none;background:transparent;border-radius:9px;cursor:pointer;text-align:left;font-family:var(--hel);}
.picker-item:hover{background:var(--fill);}
.picker-name{font-size:13.5px;font-weight:600;color:var(--ink);}
.picker-cat{font-size:12px;color:var(--t3);}
.picker-val{font-size:13px;font-weight:700;color:var(--ink);flex-shrink:0;}
.picker-new{display:flex;width:100%;align-items:center;justify-content:center;gap:6px;padding:12px;border:none;background:var(--orange);color:#fff;border-radius:11px;cursor:pointer;font-family:var(--hel);font-size:13.5px;font-weight:700;margin-top:6px;transition:.12s;}
.picker-new:hover{filter:brightness(.95);}
.picker-new{margin-bottom:6px;}
.picker-add{width:38px;flex-shrink:0;border:none;background:var(--orange);color:#fff;border-radius:10px;cursor:pointer;font-size:22px;font-weight:400;line-height:1;display:flex;align-items:center;justify-content:center;}
.picker-add:hover{filter:brightness(.95);}
.picker-backdrop{position:fixed;inset:0;z-index:35;}
.adipanel{border:1px solid var(--line2);border-radius:12px;background:var(--fill2);padding:8px;margin-top:4px;}
.adi-cost{display:flex;align-items:center;gap:8px;}
/* ===== MOTION LAYER · microinterações (Linear / Superhuman grade) ===== */
@keyframes popIn{from{opacity:0;transform:translateY(-5px) scale(.975);}to{opacity:1;transform:none;}}
@keyframes ovFade{from{opacity:0;}to{opacity:1;}}
@keyframes mdlIn{from{opacity:0;transform:translateY(10px) scale(.965);}to{opacity:1;transform:none;}}
@keyframes shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
@keyframes toastIn{from{opacity:0;transform:translateY(14px) scale(.96);}to{opacity:1;transform:none;}}
@keyframes cuTick{0%{transform:translateY(0);}40%{transform:translateY(-1px);}100%{transform:translateY(0);}}
/* floating menus & popovers — quick vertical unfold */
.rmenu,.picker,.cli-av-pop,.av-pop{animation:popIn .17s cubic-bezier(.16,1,.3,1);}
.rmenu{transform-origin:top right;}
.picker,.cli-av-pop{transform-origin:top left;}
/* modals — backdrop fade + discreet scale */
.mdl-ov{animation:ovFade .18s ease;}
.mdl-ov>.card,.mdl-ov>div{animation:mdlIn .24s cubic-bezier(.16,1,.3,1);}
/* buttons — every variant: hover lift + precise press */
.btn,.btn-org,.addsc,.addlnk,.rmenu-btn,.sb-toggle,.ctx-back{transition:background .16s cubic-bezier(.4,0,.2,1),color .15s,filter .16s,box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .16s,transform .13s cubic-bezier(.16,1,.3,1);}
.btn-org:hover{transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(255,81,19,.55);}
.pri:hover,.hi:hover{transform:translateY(-1px);box-shadow:0 8px 18px -10px rgba(21,18,14,.5);}
.sec:hover,.ghost:hover,.addsc:hover{transform:translateY(-1px);}
.apr:hover{box-shadow:0 7px 16px -10px rgba(10,143,39,.5);}
.rej:hover,.btn-dgr:hover{box-shadow:0 7px 16px -10px rgba(197,63,12,.4);}
.btn:active,.btn-org:active,.addsc:active{transform:translateY(1px) scale(.99);}
.addlnk:hover{transform:translateY(-1px);}
/* clickable cards / version chips / stat cards — faint elevation */
.doc-chip.clickable{transition:border-color .16s,background .16s,transform .16s cubic-bezier(.16,1,.3,1),box-shadow .2s;}
.doc-chip.clickable:hover{transform:translateY(-1px);box-shadow:0 7px 16px -12px rgba(21,18,14,.28);}
.stat-c{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .22s,border-color .16s;}
.stat-c:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(21,18,14,.28);}
/* sidebar nav — hover slide + icon response + press */
.nav{transition:background .16s cubic-bezier(.4,0,.2,1),color .16s,transform .15s cubic-bezier(.16,1,.3,1);}
.nav svg{transition:transform .2s cubic-bezier(.16,1,.3,1);}
.nav:hover:not(.on) svg{transform:scale(1.1);}
.nav:active{transform:scale(.985);}
.sb-collapsed .nav:hover svg{transform:none;}
/* menu rows — slide-in on hover */
.rmi,.cli-av-opt,.scpick{transition:background .15s,color .14s,border-color .14s,transform .13s cubic-bezier(.16,1,.3,1);}
.rmi:hover{transform:translateX(2px);}
.rmi:active,.cli-av-opt:active{transform:translateX(2px) scale(.99);}
.scpick:active{transform:scale(.99);}
/* tabs — smoother active swap + press-in */
.ptab,.stab{transition:background .2s cubic-bezier(.16,1,.3,1),color .16s,border-color .16s,transform .13s cubic-bezier(.16,1,.3,1);}
.ptab:active,.stab:active{transform:scale(.96);}
/* chips glide between states */
.chip{transition:background .18s,color .16s,box-shadow .16s;}
/* table rows */
.tr,.irow,.tbl-row{transition:background .16s cubic-bezier(.4,0,.2,1),box-shadow .16s;}
/* fields — smoother focus ring */
.inp,.cin,.ro-inp,.pnum,.tpl-select,textarea.inp{transition:border-color .16s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.16,1,.3,1),background .16s;}
/* small toggles / icon buttons */
.sc-check,.sc-x,.rmenu-btn,.row-del,.doc-x,.attach-btn,.av-sw,.scpick-box{transition:background .14s,color .14s,border-color .14s,box-shadow .14s,transform .16s cubic-bezier(.16,1,.3,1);}
/* animated count-up values */
[data-count]{display:inline-block;font-variant-numeric:tabular-nums;}
[data-count].cu-run{animation:cuTick .42s cubic-bezier(.16,1,.3,1);}
/* skeleton shimmer + toast helpers */
.skeleton{background:linear-gradient(90deg,var(--fill) 25%,var(--fill2) 37%,var(--fill) 63%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:8px;}
.toast{animation:toastIn .26s cubic-bezier(.16,1,.3,1);}
/* ===== DARK THEME · tokens (surfaces, borders, text, shadows) ===== */
.adm-root.dark{
--bg:#0F0F0F;--card:#1A1A1A;--ink:#F3F3F2;--cream:#151515;
--line:#2A2A2A;--line2:#383838;--fill:#242424;--fill2:#1E1E1E;
--t2:#9C9C9C;--t3:#6C6C6C;--pos:#46d15f;--warn:#d9b24a;
--sh:0 1px 2px rgba(0,0,0,.5),0 14px 30px -18px rgba(0,0,0,.75);
}
/* the proposal sheet stays white paper (it is the printed PDF) — re-assert light tokens inside it */
.adm-root.dark .doc-sheet{--card:#FFFFFF;--ink:#15120E;--cream:#F7F7F7;--line:#E6E6E6;--line2:#D9D9D9;--fill:#EFEFEF;--fill2:#F7F7F7;--t2:#666666;--t3:#9A9A9A;--pos:#0a8f27;--warn:#8a6d09;color:#15120E;}
/* smooth token crossfade on theme switch (Linear/Arc feel) */
.app-root,.app-root *{transition:background-color .28s ease,border-color .28s ease,color .2s ease;}
/* status badges / pastel chips → dark translucent surfaces + brighter accent text */
.adm-root.dark .b-grn{background:rgba(70,209,95,.15);color:#5ed873;}
.adm-root.dark .b-blue{background:rgba(51,174,255,.16);color:#79c4ff;}
.adm-root.dark .b-red{background:rgba(245,39,28,.16);color:#ff8078;}
.adm-root.dark .b-yel{background:rgba(255,206,0,.15);color:#e6c04d;}
.adm-root.dark .b-pur{background:rgba(205,63,255,.17);color:#dd93ff;}
.adm-root.dark .b-or{background:rgba(255,81,19,.16);color:#ff9468;}
.adm-root.dark .btn.apr{background:rgba(70,209,95,.15);color:#5ed873;border-color:rgba(70,209,95,.28);}
.adm-root.dark .btn.apr:hover{background:rgba(70,209,95,.22);}
.adm-root.dark .btn.rej,.adm-root.dark .btn-rej{background:rgba(255,81,19,.15);color:#ff9468;border-color:rgba(255,81,19,.3);}
.adm-root.dark .btn.rej:hover,.adm-root.dark .btn-rej:hover{background:rgba(255,81,19,.22);}
.adm-root.dark .acard-ic.grn{background:rgba(70,209,95,.15);color:#5ed873;}
.adm-root.dark .acard-ic.blue{background:rgba(51,174,255,.16);color:#79c4ff;}
.adm-root.dark .acard-ic.red{background:rgba(245,39,28,.16);color:#ff8078;}
.adm-root.dark .doc-badge.pdf{background:rgba(255,81,19,.16);color:#ff9468;}
.adm-root.dark .doc-badge.edit{background:rgba(51,110,255,.2);color:#87a9ff;}
.adm-root.dark .doc-badge.cur{background:rgba(70,209,95,.16);color:#5ed873;}
.adm-root.dark .doc-chip.current{border-color:rgba(70,209,95,.35);background:rgba(70,209,95,.08);}
.adm-root.dark .doc-chip.current.clickable:hover{border-color:rgba(70,209,95,.5);background:rgba(70,209,95,.12);}
.adm-root.dark .ro-banner{background:rgba(255,145,60,.1);border-color:rgba(255,145,60,.28);}
/* red destructive hover surfaces */
.adm-root.dark .rmi.dgr:hover,.adm-root.dark .row-del:hover,.adm-root.dark .doc-x:hover,.adm-root.dark .btn-dgr:hover,.adm-root.dark .sc-x:hover,.adm-root.dark .add-ds:hover,.adm-root.dark .cli-av-opt.dgr:hover{background:rgba(245,39,28,.16);}
/* inverted-surface controls: dark glyph on the now-light accent */
.adm-root.dark .sgn.on{color:var(--bg);}
.adm-root.dark .scpick.on .scpick-box{color:var(--bg);}
.adm-root.dark .pri:hover{background:#e6e6e6;}
/* focus rings tuned for dark */
.adm-root.dark .inp:focus{box-shadow:0 0 0 3px rgba(244,244,242,.12);}
.adm-root.dark .cin:focus{box-shadow:0 0 0 2px rgba(244,244,242,.14);}
.adm-root.dark .ro-inp:focus{box-shadow:0 0 0 3px rgba(244,244,242,.09);}
/* theme toggle — sun in dark, moon in light */
.sb-tools{display:flex;gap:6px;align-items:stretch;}
.sb-icon{flex:1;justify-content:center;padding:10px;background:transparent;border:1px solid var(--line);border-radius:14px;color:var(--t2);}
.sb-icon:hover{background:var(--fill);border-color:var(--line2);color:var(--ink);}
.sb-icon:active{transform:scale(.97);}
.sb-collapsed .sb-tools{flex-direction:column;gap:6px;}
.theme-btn .ic-sun{display:none;}
.theme-btn .ic-moon{display:inline-flex;}
.adm-root.dark .theme-btn .ic-sun{display:inline-flex;}
.adm-root.dark .theme-btn .ic-moon{display:none;}
/* respect reduced-motion */
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;}}
