*{box-sizing:border-box;margin:0;padding:0}
:root{--p:#7457d9;--pd:#493783;--pink:#f28bab;--mint:#69bbaa;--text:#3e4050;--muted:#747686;--bg:#f8f7fc;--line:#ece8f4;--white:#fff;--shadow:0 18px 45px rgba(67,49,126,.09)}
body{font-family:Poppins,sans-serif;background:var(--bg);color:var(--text)}
a{text-decoration:none;color:inherit}button,input,select{font:inherit}button{cursor:pointer}
.page{max-width:1500px;margin:auto;padding:24px 30px 45px}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 20px}.brand strong{color:var(--pd)}.back{font-size:.7rem;color:var(--muted)}
.hero{padding:31px 34px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;border-radius:29px;background:linear-gradient(130deg,#eee8ff,#fff0f5 55%,#e9f8f3);box-shadow:var(--shadow)}
.hero span{color:var(--p);font-size:.66rem;font-weight:700;letter-spacing:.08em}.hero h1{margin-top:7px;color:var(--pd);font-size:2rem}.hero p{margin-top:9px;color:var(--muted);line-height:1.6}
.hero-status{min-width:180px;padding:22px;text-align:center;border-radius:20px;background:rgba(255,255,255,.76)}.hero-status strong{display:block;color:var(--p);font-size:1.05rem}.hero-status small{color:var(--muted)}
.toolbar{margin-top:20px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.toolbar p{margin-top:3px;color:var(--muted);font-size:.65rem}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.toolbar-actions button,.file-button{padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:.68rem;font-weight:600}.toolbar-actions .primary{border-color:var(--p);background:var(--p);color:#fff}
.layout{margin-top:20px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px}
.panel{padding:22px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(67,49,126,.05)}
.settings{height:fit-content;position:sticky;top:15px}.settings h2{font-size:1rem}.settings>label{display:block;margin:14px 0 6px;font-size:.68rem;font-weight:600}.settings input,.settings select{width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:#faf9fd;outline:0}
.quality-box{margin-top:18px;padding:14px;border-radius:13px;background:#fff6dc}.quality-box strong{display:block;margin-bottom:8px;font-size:.72rem}.quality-box label{display:block;margin-top:7px;font-size:.62rem;line-height:1.4}
.action-button{width:100%;margin-top:13px;padding:11px;border:0;border-radius:10px;background:var(--pd);color:#fff;font-size:.68rem;font-weight:700}.secondary-action{margin-top:7px;background:#eee9fc;color:var(--pd)}
.preview{min-height:900px;padding:38px 42px}.empty-state{min-height:700px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty-state span{font-size:3rem}.empty-state h2{margin-top:12px;color:var(--pd)}.empty-state p{margin-top:7px}
.doc-title{text-align:center;color:#08766e;font-size:1.55rem}.doc-subtitle{text-align:center;margin-top:5px;font-weight:600}.doc-section{margin-top:24px}.doc-section h2{padding-bottom:6px;border-bottom:2px solid #e5a7c3;color:#b42d67;font-size:1rem}
.info-table,.record-table{width:100%;margin-top:12px;border-collapse:collapse;font-size:.66rem}.info-table th,.info-table td,.record-table th,.record-table td{padding:7px;border:1px solid #888;vertical-align:top}.info-table th,.record-table th{background:#efbed4;text-align:left}
.record-card{margin-top:16px;padding:15px;border:1px solid #aaa;border-radius:12px}.record-card h3{color:var(--pd);font-size:.78rem}.record-card p{margin-top:8px;font-size:.68rem;line-height:1.6}.line{margin-top:11px;border-bottom:1px solid #777;height:28px}.small-line{height:20px}
.observation-box{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.observation-box>div{padding:10px;border:1px solid #aaa;min-height:100px}.observation-box strong{font-size:.66rem}.observation-box p{font-size:.62rem;color:var(--muted)}
.footer-note{margin-top:18px;padding:12px;border-radius:10px;background:#eef9f6;font-size:.64rem;line-height:1.55}
@media(max-width:950px){.layout{grid-template-columns:1fr}.settings{position:static}.toolbar{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.page{padding:15px}.hero{grid-template-columns:1fr}.hero-status{display:none}.preview{padding:24px 16px}.observation-box{grid-template-columns:1fr}}
@media print{body{background:#fff}.topbar,.hero,.toolbar,.settings{display:none}.page{max-width:none;padding:0}.layout{display:block}.preview{border:0;box-shadow:none;padding:0}.record-card{page-break-inside:avoid}}
