
:root{font-family:Segoe UI,Arial,sans-serif;color:#162a3a;background:#edf2f5;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #c3cfd8;border-radius:7px;padding:9px 13px;background:white;color:#173248}button:hover{background:#e8f1f7}button.primary{background:#123e59;color:white;border-color:#123e59}button.danger{color:#a22e2e}button:disabled{opacity:.4;cursor:default}input,select{padding:9px;border:1px solid #bccbd5;border-radius:6px;background:white;min-width:0;width:100%;color:#162a3a}input:focus,select:focus{outline:2px solid #569bbb}label{display:grid;gap:5px;font-size:12px;color:#415b6c}header{padding:22px 30px;background:#123e59;color:white;display:flex;justify-content:space-between;align-items:center}h1{font-size:23px;margin:0 0 5px}header p{margin:0;color:#c3dbe7;font-size:13px}.workspace{display:grid;grid-template-columns:280px minmax(470px,1fr);gap:22px;padding:22px;max-width:1450px;margin:auto}aside,.panel{background:white;border:1px solid #d8e2e8;border-radius:12px;padding:20px}aside{align-self:start;position:sticky;top:15px}h2{font-size:17px;margin:0 0 15px}h3{font-size:14px;margin:24px 0 10px}.stack{display:grid;gap:10px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{grid-column:1/-1}.muted{font-size:12px;color:#607583;line-height:1.6}.saved{margin-top:12px;display:grid;gap:7px;max-height:340px;overflow:auto}.saved button{text-align:left}.saved button strong{display:block}.saved button small{display:block;margin-top:4px;color:#597080}.status{min-height:20px;font-size:12px;margin-top:12px;color:#27664b}.error{color:#a22e2e}.section-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:24px 0 12px}.section-top h2{margin:0}.cable-editor{border:1px solid #d4e0e7;border-radius:9px;margin-bottom:12px;overflow:hidden}.cable-controls{background:#f6f9fb;padding:12px;display:grid;grid-template-columns:32px 1fr 1fr 1fr;gap:10px;align-items:end}.index{font-size:18px;align-self:center}.row-tools{display:flex;gap:5px;padding:0 12px 10px;background:#f6f9fb;justify-content:flex-end}.row-tools button{padding:4px 9px;font-size:12px}.diagram{padding:5px 14px}.diagram svg{width:100%;height:auto;display:block}.preview{margin-top:22px}.sheet{background:white;box-shadow:0 3px 20px #19324518;width:210mm;max-width:100%;margin:18px auto;padding:12mm;min-height:297mm;color:#111}.sheet-head{display:flex;justify-content:space-between;gap:10mm;min-height:37mm;border-bottom:2px solid #163e58;padding-bottom:5mm;margin-bottom:5mm}.sheet-info{flex:1}.sheet-title{font-size:16px;font-weight:700;letter-spacing:1px;margin-bottom:4mm}.sheet-meta{font-size:11px;display:grid;gap:2mm}.logo{width:33mm;height:28mm;object-fit:contain}.logo-placeholder{width:33mm;align-self:center;font-weight:700;color:#456577;font-size:13px;text-align:center;line-height:1.7}.print-card{border:1px solid #777;border-radius:3mm;padding:2mm 3mm;margin-bottom:3mm;height:var(--card-height);break-inside:avoid;display:flex;flex-direction:column}.card-title{font-size:10px;display:flex;justify-content:space-between;gap:5px}.print-card svg{width:100%;flex:1;min-height:0}.measure-fields{display:flex;gap:4mm;font-size:9px;justify-content:space-between;white-space:nowrap}.sheet-foot{font-size:8px;display:flex;justify-content:space-between;border-top:1px solid #bbb;padding-top:2mm;margin-top:2mm}.hidden{display:none!important}#printArea{display:none}.notice{background:#eaf2f7;padding:12px;border-radius:7px;font-size:12px;line-height:1.6;margin-top:14px}.logo-mini{max-width:100px;max-height:60px;display:block;margin:12px 0}dialog{border:1px solid #aabdc9;border-radius:12px;padding:24px;max-width:400px}dialog::backdrop{background:#123e5960}@media(max-width:900px){.workspace{grid-template-columns:1fr;padding:12px}aside{position:static}.saved{max-height:150px}.cable-controls{grid-template-columns:25px 1fr}.fields{grid-template-columns:1fr}header{padding:18px}.sheet{padding:8mm}.card-title{font-size:9px}}
@page{size:A4 portrait;margin:0}@media print{html,body{background:white;margin:0;padding:0}body>header,.workspace,dialog{display:none!important}#printArea{display:block}.sheet{width:210mm;max-width:none;height:297mm;min-height:0;padding:12mm;box-shadow:none;margin:0;break-after:page;overflow:hidden}.sheet:last-child{break-after:auto}.print-card{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

[hidden]{display:none!important}.auth-card{max-width:440px;margin:6vh auto;background:white;border:1px solid #d8e2e8;border-radius:16px;padding:32px}.auth-card>img{width:95px;height:95px;object-fit:contain;display:block;margin:0 auto 20px}.auth-card>h1,.auth-card>p{text-align:center}.auth-card>p{line-height:1.6}.accountbar{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:10px 30px;background:white;border-bottom:1px solid #d8e2e8}#adminDialog{max-width:760px;width:95%}#usersList{max-height:45vh;overflow:auto;margin:18px 0}.user-row{padding:12px;border:1px solid #d8e2e8;border-radius:7px}.user-row .toolbar{margin-top:8px}.user-row button{padding:5px 9px;font-size:12px}#invitationUrl{font-size:12px}#authMessage,#passwordMessage,#adminMessage{color:#9d3434;font-size:13px;line-height:1.5}@media print{.accountbar,#appRoot>header,#authPanel,#adminDialog,#passwordDialog{display:none!important}}@media(max-width:700px){.accountbar{flex-direction:column;align-items:stretch;padding:12px}.accountbar button{padding:7px;font-size:12px}.auth-card{margin:20px 12px}}

.cable-measures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 14px 16px;border-top:1px solid #e3ebef;background:#fafcfd}.measure-heading{grid-column:1/-1;font-weight:600;font-size:12px}.measure-heading span{font-weight:400;color:#607583;margin-left:8px}.cable-measures input:invalid{border-color:#b43d38;background:#fff6f5}.cable-measures label{font-size:12px}.measure-fields b{font-weight:700}@media(max-width:700px){.cable-measures{grid-template-columns:1fr 1fr}.measure-heading span{display:block;margin:4px 0 0}}

.observations-editor{margin-top:24px;padding-top:20px;border-top:1px solid #d8e2e8}.observations-editor h2{margin-bottom:10px}.observations-editor label{margin-bottom:7px}.observations-editor textarea{font:inherit;width:100%;padding:12px;border:1px solid #bccbd5;border-radius:7px;resize:vertical;color:#162a3a;min-height:100px}.observations-editor textarea:focus{outline:2px solid #569bbb}.observations-editor textarea:disabled{background:#edf2f5}.print-observations{border:1px solid #777;border-radius:3mm;padding:3mm 4mm;margin:2mm 0 3mm;min-height:30mm;break-inside:avoid;color:#111}.print-observations h3{margin:0 0 3mm;font-size:11px}.observation-line{font:12px/4.5mm "Courier New",monospace;white-space:pre-wrap;overflow-wrap:anywhere;min-height:4.5mm}.observations-empty>div{border-bottom:1px solid #c4c4c4;height:5mm}
