
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root{--bg:#f6f8fc;--card:#fff;--text:#101828;--muted:#667085;--line:#e4e7ec;--blue:#2f6bff;--violet:#7c3aed;--cyan:#00b8d9;--green:#12b76a;--red:#f04438;--soft:#eef4ff;--shadow:0 18px 50px rgba(16,24,40,.10)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at top left,#dbeafe 0,transparent 34%),radial-gradient(circle at bottom right,#e0e7ff 0,transparent 30%),var(--bg);color:var(--text)}.hidden{display:none!important}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2{margin:0;letter-spacing:-.04em}p{line-height:1.5}button{border:0;border-radius:14px;padding:14px 18px;background:linear-gradient(135deg,var(--blue),var(--violet));color:white;font-weight:800;cursor:pointer;transition:.16s;box-shadow:0 12px 24px rgba(47,107,255,.20)}button:hover{transform:translateY(-1px)}input{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:15px 16px;font-size:16px;outline:none}input:focus{border-color:#84a9ff;box-shadow:0 0 0 4px rgba(47,107,255,.12)}a{color:var(--blue);font-weight:800;text-decoration:none}.college-mark{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:white;font-weight:900;box-shadow:0 14px 24px rgba(47,107,255,.25)}
.student-page,.login-page{min-height:100vh;display:grid;place-items:center;padding:18px}.hero-card{width:min(100%,540px);height:min(92vh,820px);background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.9);border-radius:28px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}.hero-top{padding:22px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f8fbff)}.hero-top h1{font-size:24px}.online-dot{margin-left:auto;background:#ecfdf3;color:#027a48;border:1px solid #abefc6;padding:8px 12px;border-radius:999px;font-size:13px;font-weight:900}.start-panel{padding:34px 28px;display:flex;flex-direction:column;gap:14px}.big-emoji{width:64px;height:64px;border-radius:22px;background:var(--soft);display:grid;place-items:center;font-size:32px}.start-panel p,.start-panel small,.login-card p{color:var(--muted);margin:0}.chat-panel{flex:1;min-height:0;display:flex;flex-direction:column}.messages{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,#f8fbff,#f3f7ff)}.msg{max-width:82%;padding:12px 14px;border-radius:18px;box-shadow:0 8px 20px rgba(16,24,40,.06);word-break:break-word}.msg.applicant{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px}.msg.admin{align-self:flex-end;background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff;border-bottom-right-radius:6px}.msg .meta{font-size:11px;font-weight:800;opacity:.7;margin-bottom:5px}.file-pill,.file-card{display:flex;gap:10px;align-items:center;margin-top:9px;padding:10px;border-radius:14px;background:rgba(16,24,40,.06);color:inherit}.msg.admin .file-pill,.msg.admin .file-card{background:rgba(255,255,255,.18)}.file-card .thumb{width:74px;height:74px;border-radius:12px;object-fit:cover}.composer{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:#fff}.composer input{padding:13px 14px}.attach-btn{min-width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--soft);color:var(--blue);border:1px solid #d7e4ff;font-size:26px;font-weight:800;cursor:pointer}.attach-btn input{display:none}.file-name{margin:0;padding:0 16px 12px;color:var(--muted);font-size:13px;background:#fff}.login-card{width:min(94vw,430px);background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:28px;box-shadow:var(--shadow);padding:30px}.login-card form{display:flex;flex-direction:column;gap:12px;margin-top:18px}.error{color:var(--red)!important;font-weight:800}
.admin-layout{min-height:100vh;display:grid;grid-template-columns:360px 1fr}.sidebar{background:#101828;color:#fff;padding:18px;display:flex;flex-direction:column;gap:14px}.brand-row{display:flex;gap:12px;align-items:center}.brand-row .eyebrow{color:#98a2b3}.brand-row h2{font-size:19px}.qr-card{display:flex;gap:12px;align-items:center;padding:12px;border-radius:20px;background:#182230;border:1px solid #344054}.qr-card img{width:84px;height:84px;border-radius:14px;background:#fff;padding:6px}.qr-card p{font-size:12px;color:#98a2b3;margin:3px 0 8px;word-break:break-all}.search{background:#182230;color:#fff;border-color:#344054}.search::placeholder{color:#98a2b3}.applicants{overflow:auto;display:flex;flex-direction:column;gap:8px}.person{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border-radius:16px;background:#182230;border:1px solid #263445;cursor:pointer;transition:.14s}.person:hover,.person.active{background:#243247;border-color:#4b6bff}.person small{display:block;color:#98a2b3;margin-top:4px}.person span{min-width:30px;height:30px;border-radius:999px;background:#344054;display:grid;place-items:center;font-weight:900}.side-bottom{margin-top:auto;display:flex;gap:10px;align-items:center}.ghost-danger{background:#2a1d24;color:#fecdd3;box-shadow:none;border:1px solid #7f1d1d}.logout{margin-left:auto;color:#d0d5dd}.admin-main{min-width:0;display:flex;flex-direction:column}.admin-head{padding:18px 22px;background:rgba(255,255,255,.9);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;align-items:center;backdrop-filter:blur(14px)}.head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px 14px;min-width:92px}.stat b{font-size:21px}.stat span{display:block;color:var(--muted);font-size:12px;font-weight:700}.delete-chat{background:#fff;color:var(--red);border:1px solid #fecdca;box-shadow:none}.empty-state{margin:auto;text-align:center;color:var(--muted)}.empty-state div{font-size:54px}.empty-state h2{color:var(--text)}.admin-messages{min-height:0}.admin-composer{position:sticky;bottom:0}.empty-small{color:#98a2b3;text-align:center;padding:20px}.in-chat{color:var(--muted)}
.print-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f8fc}.print-card{background:#fff;border-radius:28px;padding:34px;text-align:center;box-shadow:var(--shadow);max-width:520px}.print-qr{width:320px;max-width:100%;padding:12px;background:#fff;border:1px solid var(--line);border-radius:24px;margin:18px 0}@media print{body{background:#fff}.print-card{box-shadow:none}button,a{display:none}}@media(max-width:850px){.admin-layout{grid-template-columns:1fr}.sidebar{max-height:48vh}.admin-head{align-items:flex-start;flex-direction:column}.hero-card{height:100dvh;border-radius:0}.student-page{padding:0}}@media(max-width:520px){.msg{max-width:90%}.hero-top h1{font-size:20px}.qr-card{display:none}.stat{min-width:auto}.head-actions{width:100%;justify-content:flex-start}.sidebar{padding:14px}}

/* Admin navigation and document photo maker */
.admin-nav{display:grid;gap:8px}.nav-link{display:flex;align-items:center;gap:10px;padding:13px 14px;border-radius:16px;background:#182230;border:1px solid #263445;color:#e4e7ec;font-weight:900}.nav-link:hover,.nav-link.active{background:#243247;border-color:#5b7cff;color:#fff}.photo-help{padding:14px;border-radius:18px;background:#182230;border:1px solid #344054;color:#e4e7ec}.photo-help p{margin:6px 0 0;color:#98a2b3;font-size:13px}.success-btn{background:linear-gradient(135deg,#12b76a,#039855)}.ghost-blue{background:#fff;color:var(--blue);border:1px solid #c7d7fe;box-shadow:none}.photo-workspace{padding:22px;display:grid;grid-template-columns:minmax(310px,420px) 1fr;gap:18px;align-items:start}.photo-controls{display:flex;flex-direction:column;gap:14px}.upload-zone,.control-card,.photo-preview-card,.print-card-modern{background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:26px;box-shadow:var(--shadow)}.upload-zone{padding:22px;display:flex;flex-direction:column;gap:12px;transition:.16s}.upload-zone.drag-over{outline:4px solid rgba(47,107,255,.16);border-color:#7ba2ff;transform:translateY(-1px)}.upload-zone p,.upload-zone small,.muted-note{margin:0;color:var(--muted)}.upload-main-btn{display:inline-flex;justify-content:center;align-items:center;border-radius:14px;padding:14px 18px;background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(47,107,255,.20)}.upload-main-btn input{display:none}.control-card{padding:18px}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.control-card label{color:var(--muted);font-size:13px;font-weight:800}.control-card select{width:100%;margin-top:7px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 14px;font-size:15px;color:var(--text);outline:none}.range-label{display:block;margin-top:14px}.range-label span{float:right;color:var(--blue)}.range-label input[type=range]{padding:0;margin-top:10px;accent-color:var(--blue);box-shadow:none;border:0}.toggle-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.toggle-row label{display:flex;align-items:center;gap:8px;background:#f8fbff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;color:var(--text)}.toggle-row input{width:auto}.photo-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.photo-output{min-width:0;display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:start}.photo-preview-card{padding:18px}.photo-preview-card canvas{width:100%;height:auto;border-radius:16px;background:#fff;border:1px solid var(--line);display:block}.print-card-modern{padding:18px;overflow:auto}.print-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.print-badge{background:#ecfdf3;color:#027a48;border:1px solid #abefc6;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900}.print-sheet{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:inset 0 0 0 1px rgba(16,24,40,.03);display:grid;grid-template-columns:repeat(auto-fit,var(--doc-w));place-content:center;gap:5mm;padding:8mm;margin:auto;min-height:420px}.print-sheet.paper-10x15{width:100mm;height:150mm}.print-sheet.paper-a4{width:210mm;height:297mm}.doc-photo{position:relative;width:var(--doc-w);height:var(--doc-h);background:#fff}.doc-photo img{width:100%;height:100%;display:block;object-fit:cover}.doc-photo.with-border{outline:.2mm solid rgba(16,24,40,.45)}.doc-photo.with-cut-lines:before,.doc-photo.with-cut-lines:after{content:"";position:absolute;inset:-2.2mm;border:.2mm solid transparent;pointer-events:none}.doc-photo.with-cut-lines:before{border-left-color:#111827;border-right-color:#111827}.doc-photo.with-cut-lines:after{border-top-color:#111827;border-bottom-color:#111827}.empty-print{color:var(--muted);text-align:center;padding:40px 18px;border:1px dashed #c7d7fe;border-radius:18px;background:#f8fbff}.no-print{ }
@media(max-width:1180px){.photo-workspace{grid-template-columns:1fr}.photo-output{grid-template-columns:1fr}.photo-preview-card{max-width:280px}.print-card-modern{overflow:auto}}@media(max-width:560px){.control-grid{grid-template-columns:1fr}.photo-workspace{padding:14px}.photo-actions button{width:100%}.print-sheet.paper-a4{transform-origin:top left;zoom:.55}.print-sheet.paper-10x15{zoom:.9}}
@page{margin:10mm}@media print{body.photo-print-page{background:#fff!important}.photo-print-page .sidebar,.photo-print-page .admin-head,.photo-print-page .photo-controls,.photo-print-page .photo-preview-card,.photo-print-page .print-head,.photo-print-page .no-print{display:none!important}.photo-print-page .admin-layout{display:block!important;min-height:auto!important}.photo-print-page .admin-main{display:block!important}.photo-print-page .photo-workspace{display:block!important;padding:0!important}.photo-print-page .photo-output{display:block!important}.photo-print-page .print-card-modern{box-shadow:none!important;border:0!important;padding:0!important;overflow:visible!important}.photo-print-page .print-sheet{box-shadow:none!important;border:0!important;border-radius:0!important;margin:0 auto!important;page-break-inside:avoid}.photo-print-page .doc-photo.with-border{outline:.15mm solid #222!important}}
/* Auto white background controls */
.wide-toggle.auto-bg-box{display:grid!important;grid-template-columns:auto 1fr;gap:8px 10px;align-items:start;margin-top:14px;background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:12px;color:var(--text)!important}.wide-toggle.auto-bg-box input{width:auto;margin-top:2px}.wide-toggle.auto-bg-box span{font-weight:900;color:var(--text)}.wide-toggle.auto-bg-box small{grid-column:2;color:var(--muted);font-size:12px;line-height:1.35;font-weight:700}

/* Photo sheet: custom copy count and custom placement */
.control-card input[type=number]{width:100%;margin-top:7px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 14px;font-size:15px;color:var(--text);outline:none;box-shadow:none}
.mini-section-title{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;font-weight:900;color:var(--text);letter-spacing:.02em;text-transform:uppercase}
.fit-warning{margin:12px 0 0;padding:11px 12px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-weight:800;font-size:13px;line-height:1.35}
.print-sheet{position:relative;display:block!important;overflow:hidden;padding:0!important;place-content:initial!important;gap:0!important}
.sheet-grid{position:absolute;display:grid;grid-auto-rows:var(--doc-h)}
.print-sheet .empty-print{position:absolute;left:8mm;right:8mm;top:50%;transform:translateY(-50%)}
@media print{.sheet-grid{position:absolute!important}.photo-print-page .print-sheet{overflow:hidden!important;padding:0!important}}

/* Fix chat scrolling on mobile/desktop */
body.admin-page{height:100dvh;overflow:hidden}.student-page{height:100dvh;overflow:hidden}.hero-card{min-height:0}.chat-panel{min-height:0}.messages{min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable}.composer{flex-shrink:0}.file-name{flex-shrink:0}.admin-layout{height:100dvh;overflow:hidden}.sidebar{min-height:0;overflow:hidden}.applicants{flex:1;min-height:0;overflow-y:auto}.admin-main{height:100dvh;min-height:0;overflow:hidden}.admin-messages{flex:1;min-height:0;overflow-y:auto}.empty-state{min-height:0}.file-card{max-width:100%;overflow:hidden}.file-card b{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-card small{display:block;color:inherit;opacity:.72}.file-icon{font-size:26px;line-height:1;flex:0 0 auto}.file-card .thumb{flex:0 0 auto}
@media(max-width:850px){body.admin-page{overflow:auto}.admin-layout{height:100dvh}.sidebar{height:43dvh;max-height:43dvh}.admin-main{height:57dvh}.admin-head{flex-shrink:0}.admin-messages{flex:1}}
@media(max-width:520px){.composer{gap:6px;padding:10px}.composer input{min-width:0}.composer button{padding:12px 13px}.file-card{align-items:flex-start}.file-card .thumb{width:62px;height:62px}}
