:root{--ink:#15211d;--muted:#68746f;--line:#dce3df;--paper:#fff;--bg:#f1f4f2;--green:#123c2f;--green2:#1f684f;--lime:#b7d62d;--amber:#f2b84b;--red:#b94a48;--nav:#10251e;--radius:8px;--shadow:0 4px 18px rgba(20,45,36,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;letter-spacing:0}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:var(--nav);color:#fff;padding:20px 14px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:10px;align-items:center;padding:4px 6px 24px;border-bottom:1px solid #ffffff18}.brand img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:6px}.brand div{min-width:0}.brand strong,.brand span{display:block}.brand strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand span{font-size:12px;color:#a7bdb4;margin-top:2px}.sidebar nav{display:grid;gap:5px;margin-top:18px}.nav-item{border:0;background:transparent;color:#bed0c9;text-align:left;padding:12px;border-radius:6px;font-size:14px;cursor:pointer;display:flex;gap:11px;align-items:center}.nav-item span{font-size:18px;width:20px;text-align:center}.nav-item:hover,.nav-item.active{background:#ffffff12;color:#fff}.sidebar-foot{margin-top:auto;color:#a7bdb4;font-size:11px;padding:10px}.status-dot{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:6px}main{margin-left:238px;min-height:100vh}.topbar{height:80px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:14px;position:sticky;top:0;z-index:8}.topbar>div{flex:1}.topbar h1{font-size:22px;margin:1px 0}.eyebrow{margin:0;color:var(--green2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.menu-btn{display:none}.view{display:none;padding:26px;max-width:1440px;margin:auto}.view.active{display:block}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}button,.secondary{font:inherit}.primary,.secondary,.text-btn,.danger-link,.icon-btn{border:0;cursor:pointer}.primary{background:var(--green);color:#fff;padding:11px 16px;border-radius:6px;font-weight:700}.primary:hover{background:var(--green2)}.secondary{background:#fff;border:1px solid #bfcac5;color:var(--ink);padding:10px 14px;border-radius:6px;font-weight:650;cursor:pointer}.secondary:hover{background:#f4f7f5}.text-btn,.danger-link{background:transparent;padding:7px;color:var(--green2);font-weight:700}.danger-link{color:var(--red)}.icon-btn{background:transparent;font-size:22px}.full{width:100%}.center{text-align:center}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stats article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;border-left:4px solid var(--green2);box-shadow:var(--shadow)}.stats span,.stats small{display:block;color:var(--muted);font-size:12px}.stats strong{display:block;font-size:28px;margin:8px 0 3px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:17px;margin:3px 0}.order-list{min-height:120px}.order-row{display:grid;grid-template-columns:minmax(190px,1.3fr) 1fr 1fr auto;gap:14px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line);cursor:pointer}.order-row:last-child{border-bottom:0}.order-row:hover{background:#f7faf8}.order-row strong,.order-row span{display:block}.order-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.badge{display:inline-flex!important;width:max-content;padding:5px 8px;border-radius:20px;background:#e8efe9;color:var(--green);font-size:11px;font-weight:750}.badge.waiting{background:#fff2d8;color:#825e12}.badge.ready{background:#e1f4ec;color:#176b4c}.badge.done{background:#edf0ef;color:#66716c}.empty{text-align:center;padding:45px;color:var(--muted)}.toolbar{display:flex;gap:10px;padding:12px;margin-bottom:16px}.search{flex:1;display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;padding:0 10px;background:#fff}.search input{border:0!important;box-shadow:none!important}.toolbar select{width:210px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:18px}.editor-main{display:grid;gap:16px}.form-section{padding:22px}.section-title{display:flex;gap:12px;align-items:center;margin-bottom:20px}.section-title>span{display:grid;place-items:center;width:36px;height:36px;background:#e7f0eb;color:var(--green);border-radius:6px;font-weight:800}.section-title h2{font-size:17px;margin:0}.section-title p{font-size:12px;color:var(--muted);margin:3px 0 0}.fields{display:grid;gap:14px}.fields.two{grid-template-columns:repeat(2,1fr)}.fields.three{grid-template-columns:repeat(3,1fr)}label,legend{font-size:12px;font-weight:700;color:#34443d}input,select,textarea{width:100%;border:1px solid #cdd7d2;background:#fff;border-radius:5px;padding:10px;margin-top:5px;color:var(--ink);font:inherit;font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid #8fbba9;border-color:var(--green2)}textarea{resize:vertical}.span-2{grid-column:span 2}fieldset{border:0;padding:0;margin:20px 0 0}.check-grid{display:flex;flex-wrap:wrap;gap:7px;margin:9px 0}.check-chip{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:5px;padding:7px 9px;background:#fafcfb;font-size:12px;font-weight:600}.check-chip input{width:auto;margin:0}.consents{display:grid;gap:10px;margin-top:18px}.consents label{display:flex;align-items:flex-start;gap:8px;font-weight:500}.consents input{width:auto;margin:2px 0}#signaturePad{width:100%;height:170px;border:1px dashed #9eaaa5;background:#fbfcfb;touch-action:none}.signature-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px;color:var(--muted);font-size:11px}.sticky{position:sticky;top:98px}.actions{padding:18px;display:grid;gap:9px}.actions strong{font-size:14px;margin:2px 0 12px}.settings-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.logo-upload{display:flex;align-items:center;gap:10px;margin-bottom:20px}.logo-upload img{width:130px;height:76px;object-fit:contain;border:1px solid var(--line);border-radius:5px}.stack{display:grid;gap:9px;margin-top:20px}.muted{color:var(--muted);font-size:13px}dialog{width:min(900px,96vw);max-height:94vh;border:0;border-radius:8px;padding:0;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#0b1813b8}.dialog-actions{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 18px;display:flex;justify-content:flex-end;gap:8px;z-index:2}#protocol{padding:35px 44px;background:#fff}.protocol-head{display:flex;justify-content:space-between;gap:30px;border-bottom:3px solid var(--green);padding-bottom:18px}.protocol-head img{width:175px;height:100px;object-fit:contain}.protocol-head address{font-style:normal;text-align:right;font-size:11px;color:#44534d}.protocol-title{display:flex;justify-content:space-between;align-items:end;margin:25px 0 18px}.protocol-title h2{margin:0;font-size:24px}.protocol-title strong{font-size:16px;color:var(--green)}.protocol-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #bcc9c3;margin-bottom:16px}.protocol-box{padding:12px;border-right:1px solid #bcc9c3}.protocol-box:last-child{border-right:0}.protocol-box h3{font-size:10px;text-transform:uppercase;color:var(--green2);margin:0 0 7px}.protocol-box p{white-space:pre-line;margin:0;font-size:12px}.protocol-table{width:100%;border-collapse:collapse;font-size:12px;margin:12px 0}.protocol-table th,.protocol-table td{border:1px solid #bcc9c3;padding:8px;text-align:left;vertical-align:top}.protocol-table th{width:28%;background:#f0f5f2}.protocol-legal{font-size:9px;color:#59655f;margin-top:18px}.protocol-sign{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:40px}.protocol-sign div{border-top:1px solid #555;padding-top:5px;font-size:9px}.protocol-sign img{display:block;max-width:180px;max-height:70px;margin-top:-74px;margin-bottom:4px}#toast{position:fixed;right:20px;bottom:20px;background:#132820;color:#fff;padding:12px 16px;border-radius:6px;opacity:0;transform:translateY(10px);transition:.25s;pointer-events:none;z-index:50;font-size:13px}#toast.show{opacity:1;transform:none}
@media(max-width:1000px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.menu-btn{display:block}main{margin-left:0}.stats{grid-template-columns:repeat(2,1fr)}.editor-grid,.settings-grid{grid-template-columns:1fr}.sticky{position:static}.editor-side{order:-1}.actions{grid-template-columns:repeat(2,1fr)}.actions p,.actions strong{grid-column:1/-1}.fields.three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{height:68px;padding:0 14px}.topbar .primary{padding:9px 11px}.view{padding:12px}.stats{grid-template-columns:1fr 1fr;gap:8px}.stats article{padding:12px}.stats strong{font-size:22px}.order-row{grid-template-columns:1fr auto;padding:13px}.order-row>div:nth-child(2),.order-row>div:nth-child(3){grid-column:1/-1}.toolbar{flex-wrap:wrap}.search{flex-basis:100%}.toolbar select{flex:1;width:auto}.fields.two,.fields.three{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section{padding:16px}.actions{grid-template-columns:1fr 1fr}#protocol{padding:22px}.protocol-head{display:block}.protocol-head address{text-align:left;margin-top:10px}.protocol-grid{grid-template-columns:1fr}.protocol-box{border-right:0;border-bottom:1px solid #bcc9c3}.protocol-box:last-child{border-bottom:0}.protocol-sign{gap:20px}}
@media print{body{background:#fff}.sidebar,main,.no-print,#toast{display:none!important}dialog{display:block!important;position:static;width:100%;max-height:none;box-shadow:none}#protocol{padding:0}.protocol-head img{width:150px}@page{size:A4;margin:14mm}}
.signature-wrap{position:relative;background:#fff;border:2px solid #71837a;border-radius:6px;overflow:hidden}.signature-wrap>span{position:absolute;inset:12px auto auto 14px;color:#9aa69f;font-size:12px;pointer-events:none}.signature-wrap:after{content:"";position:absolute;left:7%;right:7%;bottom:35px;border-bottom:1px solid #b9c3be;pointer-events:none}#signaturePad{display:block;width:100%;height:190px;border:0;background:#fff;touch-action:none;cursor:crosshair}
