.sidebar{overflow-y:auto}.sidebar nav{margin-bottom:1rem}.sidebar-foot{flex-shrink:0}.sidebar .nav-item{padding:.59rem .75rem;font-size:.875rem}.sidebar .nav-label{margin-top:1.3rem}.sidebar .brand-logo{flex-shrink:0}.tabs{overflow-x:auto;white-space:nowrap}.panel+.panel{margin-top:1.2rem}.order-tools{margin:-.8rem 0 1.3rem}.invoice-adjustments{margin-top:1rem;border-top:1px solid var(--line);padding-top:.8rem}.stats:has(>.stat:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.count-edit-row,.quote-edit-row{display:grid;grid-template-columns:1fr .6fr 1.4fr 1fr 1fr auto;gap:.6rem;align-items:end;padding:1rem;background:#f1f6fa;border-radius:8px;margin-bottom:.8rem}.quote-edit-row{grid-template-columns:1fr 1.5fr 1fr 1fr auto}.count-edit-row button,.quote-edit-row button{margin-bottom:4px}.count-edit-row input,.count-edit-row select,.quote-edit-row input{padding:.55rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);margin-top:1rem;border-radius:8px;overflow:hidden}.calendar-weekday{background:#edf3f9;padding:.7rem;text-align:center;font-size:.8rem;font-weight:700}.calendar-day{min-height:110px;border-top:1px solid var(--line);border-right:1px solid var(--line);padding:.5rem;min-width:0}.calendar-day.outside{background:#f8fafc}.calendar-day.current-day{background:#edf8f5}.calendar-number{font-size:.875rem;font-weight:700;display:block;margin-bottom:.3rem}.calendar-event{display:block;background:#edf3fa;border-left:3px solid #326fb3;border-radius:4px;padding:.35rem;font-size:.75rem;margin-top:.4rem;overflow-wrap:anywhere;line-height:1.4}.calendar-event.done{opacity:.65;text-decoration:line-through}.calendar-event small{display:block;font-size:.7rem;color:var(--muted);margin-top:.2rem}.calendar-agenda{margin-top:1rem}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.asset-card{padding:1rem;border:1px solid var(--line);border-radius:9px;overflow-wrap:anywhere}.asset-card img,.asset-placeholder{width:100%;height:160px;object-fit:contain;border-radius:5px;background:#edf1f6;margin-bottom:.8rem}.asset-placeholder{display:grid;place-items:center}.asset-placeholder .icon{width:45px;height:45px}.code-example{white-space:pre-wrap;overflow-wrap:anywhere;background:#102c50;color:#e8f1ff;padding:1.2rem;border-radius:8px;font-size:.8rem;line-height:1.6;max-height:450px;overflow:auto}.campaign-link-grid{display:grid;grid-template-columns:1fr 190px;gap:1.5rem}.campaign-link-grid .row{margin-top:1rem}#campaign-qr svg{width:100%;height:auto;max-width:210px}.proof-dialog{width:min(1480px,calc(100vw - 24px));max-height:94vh}.proof-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:1.3rem}.proof-workspace.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-pane{min-width:0}.proof-toolbar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.7rem;background:#eef3f8;border-radius:7px}.proof-toolbar label{font-size:.75rem}.proof-toolbar input{width:70px;min-height:34px;padding:.35rem}.proof-toolbar select{width:90px;min-height:34px;padding:.35rem}.proof-scroll{max-height:64vh;overflow:auto;background:#dbe3ec;padding:10px;margin:1rem 0;border-radius:8px}.proof-page{position:relative;width:100%;margin:0 auto;background:white;cursor:crosshair;max-width:none;line-height:0}.proof-page canvas{display:block}.proof-image{display:block;width:100%;height:auto}.proof-pins{position:absolute;inset:0;pointer-events:none}.proof-pin{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);border:2px solid white;border-radius:50%;width:28px;height:28px;min-height:28px;padding:0;background:#bc2e45;box-shadow:0 2px 6px #20344c60;font-size:10px}.proof-pin.resolved{background:#27876e}.proof-comment{padding:1rem;margin:.7rem 0;border:1px solid #dbdfe6;border-left:3px solid #bc2e45;border-radius:6px;font-size:.875rem}.proof-comment.resolved{border-left-color:#27876e}.proof-comment-form{padding:1rem;background:#f3f7fb;border-radius:8px;margin:1rem 0}.proof-comment-form h4{margin:0}.proof-comment-form p{margin:0}.campaign-public{background:#eaf0f6;padding:40px 18px;min-height:100vh}.campaign-card{max-width:720px;margin:0 auto;background:white;border-radius:16px;overflow:hidden;box-shadow:0 15px 60px #16375416}.campaign-brand{background:#102c50;color:white;padding:24px 32px;font-size:1.25rem;font-weight:700}.campaign-body{padding:32px}.campaign-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}
@media(max-width:900px){.count-edit-row,.quote-edit-row{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-workspace.compare{grid-template-columns:1fr}.calendar-grid{overflow-x:auto}.calendar-day{min-height:90px;padding:.3rem}.calendar-event{font-size:.7rem}.calendar-weekday{padding:.5rem .2rem}.campaign-link-grid{grid-template-columns:1fr 150px}}
@media(max-width:560px){.asset-grid{grid-template-columns:1fr}.calendar-grid{display:none}.calendar-agenda{border-top:1px solid var(--line);padding-top:1rem}.calendar-agenda>summary{font-size:1rem}.campaign-link-grid{grid-template-columns:1fr}.campaign-link-grid #campaign-qr{max-width:200px}.campaign-body{padding:24px}.campaign-brand{padding:20px 24px}.campaign-public{padding:16px 10px}.stats:has(>.stat:nth-child(3):last-child){grid-template-columns:1fr}.proof-scroll{max-height:50vh}}

/* Editable pasted counts use bounded pages to keep large tables responsive. */
#modal.counts-dialog{width:min(1200px,96vw);max-width:1200px}
.counts-grid-wrap{overflow:auto;max-height:52vh;border:1px solid var(--line,#d7e0e8);border-radius:8px}
.counts-grid{width:100%;border-collapse:collapse}
.counts-grid th,.counts-grid td{padding:5px;border:1px solid var(--line,#d7e0e8);vertical-align:middle}
.counts-grid thead{position:sticky;top:0;z-index:1;background:var(--surface,#fff)}
.counts-grid input{min-width:120px;width:100%;border:1px solid transparent;border-radius:4px;padding:7px}
.counts-grid input:focus{border-color:#247dbe;outline:2px solid #c7e7ff}
#counts-paste-total{padding:12px;background:#f1f7fc;border-radius:8px}
#counts-paste-source{white-space:pre;font-family:ui-monospace,monospace}
