.id-card-preview{--primary-alt:var(--primary-2);--panel-alt:var(--panel-2);width:100%;min-width:0}.id-card-preview svg{flex-shrink:0}.id-card-preview .card-mount{position:relative;min-width:0;width:100%;flex-shrink:0}.id-card-preview .identity-card{position:absolute;top:0;width:824px;min-height:520px;transform-origin:top left;overflow:hidden;border-radius:20px;background:var(--panel);box-shadow:0 18px 35px -20px color-mix(in srgb,var(--shadow-color) 40%,transparent),0 2px 7px color-mix(in srgb,var(--shadow-color) 8%,transparent);border:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.id-card-preview .card-header{position:relative;min-height:118px;padding:26px 114px 23px;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center;border-bottom:6px solid color-mix(in srgb,var(--primary-alt) 50%,var(--primary))}.id-card-preview .college-heading{text-align:center;min-width:0;position:relative;z-index:1;width:100%}.id-card-preview .college-heading h2{font-size:26px;line-height:1.2;letter-spacing:-.035em;margin:0;font-weight:700;overflow-wrap:anywhere}.id-card-preview .college-heading p{font-size:10px;letter-spacing:.23em;text-transform:uppercase;opacity:.85;margin:11px 0 0}.id-card-preview .college-mark{position:absolute;left:29px;top:50%;transform:translateY(-50%);height:58px;width:58px;display:grid;place-items:center;font-size:17px;letter-spacing:-.05em;font-weight:750;border:1px solid color-mix(in srgb,var(--on-primary) 48%,transparent);border-radius:15px;background:color-mix(in srgb,var(--on-primary) 8%,transparent)}.id-card-preview .college-mark img{width:80%;height:80%;-o-object-fit:contain;object-fit:contain}.id-card-preview .card-header-detail{position:absolute;right:-18px;top:-62px;width:190px;height:190px;border:1px solid color-mix(in srgb,var(--on-primary) 17%,transparent);border-radius:50%}.id-card-preview .card-header-detail:before{content:"";position:absolute;inset:14px;border:inherit;border-radius:inherit}.id-card-preview .card-header-detail:after{content:"";position:absolute;inset:29px;border:inherit;border-radius:inherit}.id-card-preview .card-body{display:grid;grid-template-columns:164px minmax(0,1fr);gap:32px;padding:32px 32px 29px;min-height:342px}.id-card-preview .photo-column{padding-top:4px}.id-card-preview .student-photo{height:208px;width:164px;border-radius:12px;background:var(--panel-alt);border:1px solid var(--line);padding:6px;overflow:hidden}.id-card-preview .student-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:7px;display:block}.id-card-preview .photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:var(--muted);border:1px dashed var(--line);border-radius:7px}.id-card-preview .photo-placeholder svg{width:66px;height:66px;stroke-width:.8;opacity:.65}.id-card-preview .photo-placeholder span{font-size:10px;letter-spacing:.04em}.id-card-preview .photo-caption{text-align:center;font-size:10px;font-weight:650;letter-spacing:.05em;margin:13px 0 0;color:var(--primary)}.id-card-preview .student-name>p{font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:650;color:var(--muted);margin:0 0 8px}.id-card-preview .student-name h3{font-size:30px;line-height:1.13;letter-spacing:-.045em;font-weight:720;margin:0;overflow-wrap:anywhere}.id-card-preview .card-fields{display:grid;grid-template-columns:1.2fr 1.25fr .7fr;gap:16px 20px;margin:22px 0 0}.id-card-preview .field dt{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:6px;font-weight:650}.id-card-preview .field dd{font-size:14px;font-weight:600;margin:0;line-height:1.35;overflow-wrap:anywhere}.id-card-preview .field-course{grid-column:1}.id-card-preview .field-branch{grid-column:2/4}.id-card-preview .field-dob{grid-column:1}.id-card-preview .field-phone{grid-column:2}.id-card-preview .field-blood{grid-column:3}.id-card-preview .field-section{grid-column:1}.id-card-preview .field-batch{grid-column:2/4}.id-card-preview .field dd.missing{font-weight:400;color:var(--muted)}.id-card-preview .card-footer{display:flex;align-items:center;justify-content:space-between;min-height:59px;padding:16px 32px;background:var(--panel-alt);border-top:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.06em}.id-card-preview .card-footer>span:first-child{text-transform:uppercase;font-size:8px;letter-spacing:.14em}.id-card-preview .footer-batch{display:none}.id-card-preview .footer-lines{display:flex;gap:4px}.id-card-preview .footer-lines i{display:block;width:18px;height:4px;border-radius:8px;background:var(--primary);opacity:.2}.id-card-preview .footer-lines i:nth-child(2){opacity:.5}.id-card-preview .footer-lines i:last-child{opacity:1}.id-card-preview .identity-card--portrait{width:426px;min-height:680px;border-radius:20px}.id-card-preview .identity-card--portrait .card-header{min-height:125px;padding:25px 24px 21px}.id-card-preview .identity-card--portrait .college-heading h2{font-size:23px;max-width:340px;margin:auto}.id-card-preview .identity-card--portrait .college-heading p{font-size:8px}.id-card-preview .identity-card--portrait .college-mark{display:none}.id-card-preview .identity-card--portrait .card-body{display:flex;flex-direction:column;padding:26px 30px;gap:20px;min-height:0}.id-card-preview .identity-card--portrait .photo-column{padding:0;display:flex;align-items:center;flex-direction:column}.id-card-preview .identity-card--portrait .student-photo{width:112px;height:138px;border-radius:11px}.id-card-preview .identity-card--portrait .photo-placeholder svg{width:45px;height:45px}.id-card-preview .identity-card--portrait .photo-placeholder{gap:10px}.id-card-preview .identity-card--portrait .photo-placeholder span{font-size:8px}.id-card-preview .identity-card--portrait .photo-caption{font-size:9px;margin-top:9px}.id-card-preview .identity-card--portrait .student-name{text-align:center}.id-card-preview .identity-card--portrait .student-name h3{font-size:24px;line-height:1.18}.id-card-preview .identity-card--portrait .student-name>p{font-size:8px;margin-bottom:6px}.id-card-preview .identity-card--portrait .card-fields{grid-template-columns:1fr 1fr;gap:14px 18px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.id-card-preview .identity-card--portrait .field-branch,.id-card-preview .identity-card--portrait .field-course{grid-column:1/3}.id-card-preview .identity-card--portrait .field dd{font-size:12px}.id-card-preview .identity-card--portrait .field dt{font-size:8px}.id-card-preview .identity-card--portrait .field-dob{grid-column:1;grid-row:3}.id-card-preview .identity-card--portrait .field-phone{grid-column:2;grid-row:3}.id-card-preview .identity-card--portrait .field-blood{grid-column:1;grid-row:4}.id-card-preview .identity-card--portrait .field-section{grid-column:2;grid-row:4}.id-card-preview .identity-card--portrait .field-batch{grid-column:1/3;grid-row:5}.id-card-preview .identity-card--portrait .card-footer{min-height:42px;padding:13px 30px}.id-card-preview .identity-card--portrait .footer-lines i{width:12px;height:3px}.id-card-preview .identity-card--minimal{border-radius:12px;background:var(--panel);border:1px solid var(--line);border-top:7px solid var(--primary)}.id-card-preview .identity-card--minimal .card-header{background:var(--panel);color:var(--text);border-bottom:1px solid var(--line);min-height:116px}.id-card-preview .identity-card--minimal .college-mark{background:var(--panel-alt);color:var(--primary);border:1px solid var(--line);border-radius:50%;font-size:15px}.id-card-preview .identity-card--minimal .college-heading p{color:var(--primary);opacity:1}.id-card-preview .identity-card--minimal .card-header-detail{display:none}.id-card-preview .identity-card--minimal .card-body{grid-template-columns:minmax(0,1fr) 164px;gap:32px;min-height:333px}.id-card-preview .identity-card--minimal .photo-column{grid-column:2;grid-row:1}.id-card-preview .identity-card--minimal .student-details{grid-column:1;grid-row:1}.id-card-preview .identity-card--minimal .student-photo{border-radius:4px;background:var(--panel);padding:5px}.id-card-preview .identity-card--minimal .photo-placeholder,.id-card-preview .identity-card--minimal .student-photo img{border-radius:0}.id-card-preview .identity-card--minimal .student-name h3{font-size:29px}.id-card-preview .identity-card--minimal .card-footer{background:var(--panel);min-height:58px}.id-card-preview .identity-card--minimal .footer-lines{display:none}.id-card-preview .identity-card--minimal .footer-batch{display:block}.id-card-preview .identity-card--minimal .footer-batch strong{color:var(--primary);font-weight:650}.id-card-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--primary);font-size:12px;font-weight:700;white-space:nowrap}.id-card-trigger svg{width:20px;height:20px}.id-card-trigger--compact{width:40px;padding:8px}.id-card-trigger:hover{background:color-mix(in srgb,var(--primary) 10%,var(--panel))}.id-card-trigger:focus-visible,.id-modal-close:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.id-card-dialog{width:min(920px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--bg);color:var(--text);overflow:auto;box-shadow:0 25px 80px color-mix(in srgb,var(--shadow-color) 25%,transparent)}.id-card-dialog::backdrop{background:color-mix(in srgb,var(--ink) 40%,transparent);backdrop-filter:blur(6px)}.id-card-dialog[open]{animation:id-card-arrive .18s ease-out}.id-modal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.id-modal-heading p{margin:0 0 6px;font-size:10px;font-weight:750;color:var(--primary);letter-spacing:.15em;text-transform:uppercase}.id-modal-heading h2{font-size:24px;font-weight:750;letter-spacing:-.035em;margin:0}.id-modal-close{display:grid;place-items:center;width:40px;height:40px;font-size:26px;border:1px solid var(--line);border-radius:10px;color:var(--primary);background:var(--panel)}.id-modal-state{padding:40px 12px;min-height:160px;text-align:center;font-size:14px}.id-modal-state .btn{margin-top:18px}.id-modal-footer{padding-top:22px}.id-modal-footer>p{font-size:12px;color:var(--muted);margin:0}.student-photo-editor{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0}.student-photo-editor>p{flex-basis:100%;margin:0}.id-photo-upload{position:relative;overflow:hidden;font-size:12px;cursor:pointer}.id-photo-upload:focus-within{outline:3px solid var(--primary);outline-offset:3px}.id-photo-upload input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.id-photo-hint{font-size:11px;color:var(--muted)}.id-photo-confirm{display:flex;align-items:center;flex-wrap:wrap;gap:16px;flex-basis:100%;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.id-photo-confirm img{width:108px;height:144px;-o-object-fit:cover;object-fit:cover;border-radius:7px}.id-photo-confirm p{font-size:12px;color:var(--muted)}.id-photo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.id-photo-remove{color:var(--danger);font-size:11px;text-decoration:underline;text-underline-offset:3px}.id-photo-actions .btn,.id-photo-confirm .btn{font-size:12px}@keyframes id-card-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.id-card-dialog[open]{animation:none}}@media (max-width:540px){.id-card-dialog{padding:18px 10px;border-radius:15px}.id-modal-heading{margin:0 4px 20px}.id-modal-heading h2{font-size:21px}.id-modal-footer{padding:20px 4px 0}.id-card-trigger{font-size:10px;padding:8px;gap:5px}.id-card-trigger svg{width:18px;height:18px}.id-topbar-actions{flex-wrap:wrap;justify-content:flex-end;flex:1}.id-topbar-actions .id-topbar-name{display:block;max-width:85px}.id-topbar-name+.avatar-box{display:none}}