:root{--navy:#071d34;--blue:#234b73;--ink:#172536;--muted:#667b8f;--line:#cbd5de;--silver:#edf1f5;--paper:#fff}

*{box-sizing:border-box}

html,body{margin:0;background:#e3e8ed;color:var(--ink);font-family:"Pretendard",Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.showcase-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;border-bottom:1px solid #c0cbd5;background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}
.showcase-brand{display:flex;align-items:center;gap:11px;color:var(--navy);text-decoration:none}
.showcase-brand img{width:42px;height:42px;border:1px solid #bcc8d2;border-radius:12px}
.showcase-brand span{display:grid;gap:2px}
.showcase-brand small{font:800 8px "Lexend",sans-serif;letter-spacing:1.2px}
.showcase-brand b{font-size:14px}
.toolbar-actions{display:flex;gap:8px}
.toolbar-actions a,.toolbar-actions button{display:grid;place-items:center;min-height:40px;padding:0 15px;border:1px solid #afbdc9;border-radius:999px;background:#fff;color:var(--navy);font:800 12px "Pretendard",sans-serif;text-decoration:none;cursor:pointer}
.toolbar-actions button{border-color:var(--navy);background:var(--navy);color:#fff}
.print-notice{width:210mm;margin:18px auto 0;padding:11px 14px;border:1px solid #bac6d0;border-radius:12px;background:#f8fafb;color:#5b7084;font-size:12px}
.showcase-stack{display:grid;gap:18px;padding:18px 0 55px}
.showcase-page{position:relative;width:210mm;height:297mm;margin:auto;overflow:hidden;background:var(--paper);box-shadow:0 20px 50px -30px rgba(7,29,52,.58)}
.page-strip{height:10mm;padding:0 17mm;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#b6c3cf;font:800 7px "Lexend",sans-serif;letter-spacing:.3px}
.page-content{padding:13mm 17mm 21mm}
.page-kicker{color:#718599;font:800 8px "Lexend",sans-serif;letter-spacing:1.1px}
.page-title{margin:3mm 0 2mm;color:var(--navy);font-size:25pt;line-height:1.05;letter-spacing:-1.2px}
.page-lead{margin:0 0 6mm;color:#536a7e;font-size:9.5pt;line-height:1.55}
.student-fields{display:grid;grid-template-columns:12mm 43mm 17mm 1fr;height:10mm;margin-bottom:6mm;border:1px solid var(--line)}
.student-fields span{display:flex;align-items:center;padding:0 5px;border-right:1px solid var(--line);font-size:8pt}
.student-fields .label{background:var(--silver);color:#687d91;font-weight:800}
.section-title{display:flex;align-items:center;gap:3mm;margin:6mm 0 2.5mm;color:var(--navy);font-size:12pt}
.section-title b{display:grid;place-items:center;width:8mm;height:8mm;background:var(--navy);color:#fff;font:800 7px "Lexend",sans-serif}
.pitch-step{display:grid;grid-template-columns:17mm 1fr 55mm;min-height:29mm;border:1px solid var(--line);border-bottom:0}
.pitch-step:last-child{border-bottom:1px solid var(--line)}
.pitch-step>span{display:grid;place-items:center;background:var(--navy);color:#fff;font:900 9px "Lexend",sans-serif}
.pitch-prompt{padding:4mm;background:var(--silver);border-right:1px solid var(--line)}
.pitch-prompt b{display:block;color:var(--navy);font-size:9pt}
.pitch-prompt p{margin:2mm 0 0;color:#64798c;font-size:8pt;line-height:1.4}
.pitch-write{padding:3mm;background:repeating-linear-gradient(to bottom,transparent 0,transparent 8mm,var(--line) 8mm,var(--line) calc(8mm + .4px))}
.timer{display:grid;grid-template-columns:repeat(3,1fr);height:14mm;margin-top:5mm;border:1px solid var(--line)}
.timer span{display:grid;place-items:center;border-right:1px solid var(--line);background:#f8fafb;color:#5f7488;font-size:8pt}
.timer span:last-child{border-right:0}
.project-name{height:24mm;padding:4mm;border-bottom:2px solid var(--navy);color:var(--navy);font-size:20pt;font-weight:900}
.exhibit-grid{display:grid;grid-template-columns:1fr 50mm;gap:7mm;margin-top:8mm}
.exhibit-copy{display:grid;gap:5mm}
.exhibit-box{min-height:31mm;padding:5mm;border:1px solid var(--line)}
.exhibit-box b{display:block;color:var(--navy);font-size:9pt}
.exhibit-box div{height:17mm;margin-top:3mm;background:repeating-linear-gradient(to bottom,transparent 0,transparent 8mm,var(--line) 8mm,var(--line) calc(8mm + .4px))}
.qr-box{display:grid;place-items:center;height:50mm;border:1px dashed #94a8b8;background:#f8fafb;color:#718599;font-size:8pt;text-align:center}
.qr-caption{height:17mm;padding:4mm;border:1px solid var(--line);border-top:0;color:#63788b;font-size:8pt}
.hero-frame{display:grid;place-items:center;height:70mm;margin-top:7mm;border:1px dashed #94a8b8;background:#f8fafb;color:#718599;font-size:9pt}
.feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:5mm}
.feedback-card{position:relative;min-height:100mm;padding:6mm 7mm;border:1px solid var(--navy)}
.feedback-card h3{margin:0 0 4mm;color:var(--navy);font-size:13pt}
.feedback-card .field{display:grid;grid-template-columns:28mm 1fr;min-height:22mm;border-top:1px solid var(--line)}
.feedback-card .field b{padding:4mm 0;color:#5f7488;font-size:8pt}
.feedback-card .lines{background:repeating-linear-gradient(to bottom,transparent 0,transparent 7mm,var(--line) 7mm,var(--line) calc(7mm + .4px))}
.feedback-card footer{position:absolute;left:7mm;right:7mm;bottom:6mm;color:#778a9c;font-size:7pt}
.certificate-page{background:linear-gradient(135deg,#fff 0%,#f2f5f7 50%,#fff 100%)}
.certificate-frame{position:absolute;inset:13mm;border:1px solid #9dafbd}
.certificate-inner{position:absolute;inset:18mm;border:4px double var(--navy);display:flex;flex-direction:column;align-items:center;padding:18mm 15mm;text-align:center}
.certificate-logo{width:28mm;height:28mm;margin-bottom:8mm}
.certificate-eyebrow{color:#6d8295;font:800 9px "Lexend",sans-serif;letter-spacing:2.5px}
.certificate-inner h1{margin:9mm 0 4mm;color:var(--navy);font-size:31pt}
.certificate-ko{color:#52697d;font-size:13pt;font-weight:800}
.recipient{width:115mm;margin:15mm 0 8mm;padding-bottom:4mm;border-bottom:1px solid var(--navy);color:var(--navy);font-size:22pt;font-weight:900}
.certificate-copy{max-width:135mm;color:#425a70;font-size:11pt;line-height:1.85}
.certificate-date{margin-top:16mm;color:#607589;font-size:10pt}
.certificate-sign{display:grid;grid-template-columns:1fr 1fr;gap:16mm;width:125mm;margin-top:17mm}
.certificate-sign span{padding-bottom:3mm;border-bottom:1px solid var(--line);color:#61768a;font-size:9pt}
.certificate-badge{margin-top:auto;padding:4mm 8mm;background:var(--navy);color:#fff;font:800 8px "Lexend",sans-serif;letter-spacing:1px}
.page-footer{position:absolute;left:17mm;right:17mm;bottom:9mm;display:flex;align-items:center;justify-content:space-between;padding-top:3mm;border-top:1px solid var(--line);color:#718397;font-size:7pt}
.page-footer span:first-child{display:flex;align-items:center;gap:3mm}
.page-footer img{width:8mm;height:8mm}

@page{size:A4 portrait;margin:0}

@media print{html,body{background:#fff}
.showcase-toolbar,.print-notice{display:none!important}
.showcase-stack{display:block;padding:0}
.showcase-page{margin:0;box-shadow:none;break-after:page;page-break-after:always}
.showcase-page:last-child{break-after:auto;page-break-after:auto}
}

@media(max-width:850px){.print-notice{width:calc(100% - 20px)}
.showcase-page{width:calc(100vw - 20px);height:auto;min-height:calc((100vw - 20px) * 1.414)}
.page-content{padding:6vw}
.page-strip{padding:0 6vw}
.page-footer{left:6vw;right:6vw}
.showcase-toolbar{padding:9px 12px}
.showcase-brand small,.showcase-brand b,.toolbar-actions a{display:none}
.pitch-step{grid-template-columns:10% 45% 45%}
.feedback-grid{gap:3vw}
.certificate-inner{inset:6vw}
.page-title{font-size:8vw}
}
