:root{color:#1a1a1a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#e8eef4;font-family:Arial,Helvetica,Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{min-width:320px}button,input,select{font:inherit}.certificate{--c:#c8102e;--c-light:#b0b0b0;--c-dark:#4a4a4a;--c-muted:#8c8c8c;--cert-blue:#1a5da8;color:#111;box-sizing:border-box;background:#fff;width:1123px;height:794px;font-family:Arial,Helvetica,sans-serif;position:relative;overflow:hidden}.certificate *,.certificate :before,.certificate :after{box-sizing:border-box}.cert-geo{pointer-events:none;z-index:1;position:absolute}.geo-tl{background:var(--c);clip-path:polygon(0 0,100% 0,45% 100%,0 65%);opacity:.92;z-index:0;width:260px;height:200px;top:-10px;left:-20px}.geo-tl:after{content:"";background:var(--c-dark);clip-path:polygon(0 0,100% 20%,65% 100%,0 75%);opacity:.85;width:140px;height:120px;position:absolute;top:50px;left:40px}.geo-br{background:var(--c);clip-path:polygon(35% 0,100% 0,100% 100%,0 100%,15% 40%);opacity:.95;z-index:1;width:380px;height:280px;bottom:-40px;right:-60px}.geo-br:before{content:"";background:var(--c-dark);clip-path:polygon(45% 0,100% 25%,100% 100%,0 100%);opacity:.95;width:280px;height:220px;position:absolute;bottom:0;right:0}.geo-br:after{content:"";background:var(--c-muted);clip-path:polygon(25% 0,100% 35%,75% 100%,0 65%);opacity:.9;width:170px;height:150px;position:absolute;bottom:20px;right:100px}.cert-address{transform-origin:0;color:#333;letter-spacing:.2px;white-space:nowrap;z-index:3;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:400;position:absolute;top:50%;left:10px;transform:rotate(-90deg)translate(-50%)}.cert-border{border:3px solid var(--c);z-index:2;background:#fff;border-radius:14px;position:absolute;inset:28px 36px 28px 44px}.cert-border-inner{border:1px solid var(--c);border-radius:10px;flex-direction:column;width:calc(100% - 10px);height:calc(100% - 10px);margin:5px;padding:16px 36px 18px;display:flex;position:relative}.cert-header{grid-template-columns:1fr 1fr 1.35fr;align-items:center;gap:10px;min-height:110px;display:grid}.cert-header-left,.cert-header-center,.cert-header-right{flex-direction:column;justify-content:center;align-items:center;min-width:0;display:flex}.cert-header-left{align-items:flex-start}.cert-header-right{align-items:flex-end}.logo-ministry{object-fit:contain;width:148px;height:auto;display:block}.logo-vita{object-fit:contain;width:128px;height:auto;display:block}.logo-republic{object-fit:contain;width:250px;height:auto;display:block}.cert-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;padding:2px 24px 0;display:flex}.cert-title{letter-spacing:.6px;text-transform:uppercase;color:#000;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:34px;font-weight:700;line-height:1.15}.cert-level{color:var(--c);margin:4px 0 10px;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:400;line-height:1.35}.cert-attest{color:#222;margin:2px 0;font-family:Arial,Helvetica,sans-serif;font-size:17px;font-weight:400}.cert-attest strong{font-weight:700}.cert-attest-en{letter-spacing:.6px;text-transform:uppercase;color:#000;margin:8px 0 2px;font-family:Arial,Helvetica,sans-serif;font-size:17px;font-weight:700}.cert-name{letter-spacing:1.2px;text-transform:uppercase;color:#000;margin:10px 0 6px;font-family:Arial,Helvetica,sans-serif;font-size:42px;font-weight:700;line-height:1.1}.cert-id{color:#222;margin:0 0 8px;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:400}.cert-id strong{letter-spacing:1.5px;margin-left:2px;font-weight:700}.cert-statement{color:#222;max-width:820px;margin:4px 0;font-family:Arial,Helvetica,sans-serif;font-size:17px;font-weight:400;line-height:1.35}.cert-statement-en{letter-spacing:.4px;text-transform:uppercase;color:#000;margin:8px 0 2px;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:700}.cert-level-course{letter-spacing:.5px;color:#000;margin:4px 0;font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:400}.cert-level-course strong{font-size:24px;font-weight:700}.cert-dates{letter-spacing:.6px;margin:14px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:700}.cert-dates-en{letter-spacing:.4px;text-transform:uppercase;color:#000;margin:10px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:700}.cert-footer{z-index:4;grid-template-columns:1fr auto 1fr;align-items:end;gap:16px;margin-top:auto;padding:0 24px 10px;display:grid;position:relative}.footer-side{text-align:center;grid-template-rows:54px auto auto;align-items:end;min-width:0;display:grid}.footer-above-line{width:100%;height:54px;position:relative}.footer-above-line--stamp{height:58px}.footer-stamp{object-fit:contain;mix-blend-mode:multiply;pointer-events:none;z-index:2;width:172px;height:auto;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.footer-center{justify-content:center;align-items:center;padding-bottom:22px;display:flex}.footer-qr{object-fit:contain;border-radius:50%;width:104px;height:104px;display:block}.sign-line{background:#111;width:100%;height:1.5px}.footer-brand{color:#000;letter-spacing:.5px;text-transform:uppercase;margin:6px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:700}.footer-above-line--signature{justify-content:center;align-items:flex-end;display:flex}.signature{color:#0f1f3d;letter-spacing:.5px;margin:0;padding-bottom:6px;font-family:Pinyon Script,Segoe Script,Brush Script MT,cursive;font-size:38px;font-weight:400;line-height:1}.footer-role{color:#000;letter-spacing:1px;text-transform:uppercase;margin:6px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:700}.registration{text-align:center;color:#222;width:100%;margin:4px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:400}.student-db{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.student-db-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.student-db-header h2{color:#1a2b3c;margin:0;font-size:1.05rem}.student-db-header p{color:#5a6b7c;margin:4px 0 0;font-size:.78rem}.btn-add,.btn-primary,.btn-generate,.btn-ghost,.btn-danger{cursor:pointer;border:none;border-radius:8px;font-size:.82rem;font-weight:700}.btn-add,.btn-primary{color:#fff;background:#1e5aa8;padding:8px 12px}.btn-add:hover,.btn-primary:hover{background:#164a8c}.btn-generate{color:#fff;background:#15803d;padding:7px 10px}.btn-generate:hover:not(:disabled){background:#116b33}.btn-generate:disabled{opacity:.65;cursor:wait}.btn-ghost{color:#2a3b4c;background:#fff;border:1px solid #c5d0dc;padding:7px 10px}.btn-ghost:hover{background:#eef4fb}.btn-danger{color:#b91c1c;background:#fff;border:1px solid #f1c0c0;padding:7px 10px}.btn-danger:hover{background:#fef2f2}.student-tabs{grid-template-columns:1fr 1fr 1fr;gap:6px;display:grid}.student-tabs button{color:#3d4f63;cursor:pointer;background:#fff;border:1px solid #c5d0dc;border-radius:8px;padding:8px 6px;font-size:.75rem;font-weight:700}.student-tabs button.active{color:#fff;background:#1e5aa8;border-color:#1e5aa8}.student-search{background:#fff;border:1.5px solid #c5d0dc;border-radius:8px;width:100%;padding:9px 10px;font-size:.88rem}.student-editor{background:#fff;border:1px solid #c5d0dc;border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex}.student-editor h3{color:#1a2b3c;margin:0;font-size:.92rem}.student-editor-actions{justify-content:flex-end;gap:8px;display:flex}.student-list{flex-direction:column;gap:8px;min-height:120px;padding-right:2px;display:flex;overflow-y:auto}.student-empty{color:#6a7b8c;text-align:center;background:#ffffffa6;border-radius:8px;margin:8px 0;padding:16px 8px;font-size:.85rem}.student-card{cursor:pointer;background:#fff;border:1.5px solid #d5dee8;border-radius:10px;padding:10px;transition:border-color .12s,box-shadow .12s}.student-card:hover{border-color:#9bb4cc}.student-card.selected{border-color:#1e5aa8;box-shadow:0 0 0 2px #1e5aa826}.student-card.done{background:#f7fbf8}.student-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.student-card-top strong{color:#122033;font-size:.92rem;display:block}.student-meta{color:#5a6b7c;margin-top:3px;font-size:.74rem;display:block}.status-pill{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;flex-shrink:0;padding:4px 7px;font-size:.68rem;font-weight:800}.status-pill.wait{color:#b45309;background:#fff4e5}.status-pill.ok{color:#15803d;background:#e8f8ee}.student-card-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.app{grid-template-columns:minmax(320px,400px) minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.sidebar{background:linear-gradient(165deg,#f7fafc 0%,#eef3f8 55%,#e4edf5 100%);border-right:1px solid #cfd9e4;flex-direction:column;gap:12px;min-width:0;padding:18px 16px;display:flex;overflow:hidden auto}.form-brand{align-items:center;gap:12px;display:flex}.form-logo{object-fit:contain;flex-shrink:0;width:56px;height:auto}.form-brand h1{color:#1a2b3c;letter-spacing:-.01em;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:1.15rem;font-weight:700}.form-brand p{color:#5a6b7c;margin:4px 0 0;font-size:.8rem}.sidebar-tabs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.sidebar-tabs button{color:#3d4f63;cursor:pointer;background:#fff;border:1px solid #c5d0dc;border-radius:8px;padding:9px 8px;font-size:.8rem;font-weight:700}.sidebar-tabs button.active{color:#fff;background:#1e5aa8;border-color:#1e5aa8}.selected-banner{color:#92400e;background:#fff4e5;border:1px solid #f5d9a8;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;font-weight:700;display:flex}.selected-banner.done{color:#166534;background:#e8f8ee;border-color:#b7e4c7}.banner-status{text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.cert-form{flex-direction:column;gap:14px;min-width:0;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:10px;min-width:0;display:grid}.cert-form label,.student-editor label{color:#3d4f63;text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:5px;min-width:0;font-size:.72rem;font-weight:700;display:flex}.cert-form input,.cert-form select,.student-editor input,.student-editor select{color:#1a1a1a;text-transform:none;letter-spacing:0;background:#fff;border:1.5px solid #c5d0dc;border-radius:8px;width:100%;min-width:0;max-width:100%;padding:9px 10px;font-size:.9rem;font-weight:500;transition:border-color .15s,box-shadow .15s}.cert-form input:focus,.cert-form select:focus,.student-editor input:focus,.student-editor select:focus{border-color:#1e5aa8;outline:none;box-shadow:0 0 0 3px #1e5aa826}.form-checkbox{grid-column:1/-1;align-items:center;text-transform:none!important;letter-spacing:0!important;flex-direction:row!important;gap:8px!important;font-weight:600!important}.form-checkbox input[type=checkbox]{accent-color:#1e5aa8;width:auto;margin:0}.theme-swatch{color:#fff;text-align:center;border-radius:8px;padding:11px 12px;font-size:.88rem}.btn-download,.btn-secondary{cursor:pointer;border:none;border-radius:10px;font-weight:700;transition:transform .12s,opacity .12s,background .12s}.btn-download{color:#fff;background:#1e5aa8;width:100%;padding:13px 16px;font-size:.95rem}.btn-download:hover:not(:disabled){background:#164a8c;transform:translateY(-1px)}.btn-download:disabled,.btn-secondary:disabled{opacity:.65;cursor:wait}.preview-panel{background:radial-gradient(circle at 20% 10%,#1e5aa814,#0000 40%),radial-gradient(circle at 90% 80%,#b8d4301a,#0000 35%),#d8e2ec;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.preview-toolbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#2a3b4c;background:#ffffffbf;border-bottom:1px solid #c5d0dc;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-weight:700;display:flex}.btn-secondary{color:#1e5aa8;white-space:nowrap;background:#fff;border:1.5px solid #1e5aa8;padding:8px 14px;font-size:.88rem}.btn-secondary:hover:not(:disabled){background:#eef4fb}.preview-scroll{flex:1;justify-content:center;align-items:flex-start;min-height:0;padding:20px 16px 28px;display:flex;overflow:auto}.preview-frame{justify-content:center;width:100%;display:flex}.preview-slot{background:#fff;border-radius:4px;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 18px 40px #14284633,0 2px 8px #1428461a}.preview-scaled{transform-origin:0 0}.export-host{pointer-events:none;opacity:1;width:1123px;height:794px;position:fixed;top:0;left:-10000px}@media (width<=960px){.app{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.sidebar{border-bottom:1px solid #cfd9e4;border-right:none;max-height:none}.preview-panel{min-height:60vh}}@media (width<=520px){.form-grid{grid-template-columns:1fr}}
