:root{color:#171717;background:#f4f4f0;font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.4}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.hidden{display:none!important}.login-screen{background:linear-gradient(145deg,#111,#2c2c2c);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:#fff;border-top:8px solid #ffd400;border-radius:18px;width:min(430px,100%);padding:34px;box-shadow:0 22px 70px #0008}.login-card>img{width:88px;margin:auto;display:block}.login-card h1{text-align:center;margin-bottom:4px;font-size:23px}.login-card>p{text-align:center;color:#666}.login-card label{margin:14px 0;display:block}.login-card input{width:100%;margin-top:6px}header{color:#fff;z-index:20;background:#111;border-bottom:4px solid #ffd400;align-items:center;gap:14px;padding:12px 20px;display:flex;position:sticky;top:0}header img{object-fit:contain;width:50px;height:50px}header div{flex-direction:column;display:flex}header button{margin-left:auto}.workspace{grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 78px);display:grid}nav{background:#1b1b1b;flex-direction:column;gap:8px;padding:18px 12px;display:flex}nav button{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:12px 14px;font-weight:700}main{width:100%;max-width:1280px;margin:0 auto;padding:24px}.page-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.page-heading h2{margin:0 0 4px;font-size:26px}.page-heading p{color:#666;margin:0}.status-chip{background:#fff6bd;border:1px solid #e7d000;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.tiles{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;display:grid}.tiles article,.panel{background:#fff;border:1px solid #e2e2e2;border-radius:13px;padding:19px;box-shadow:0 4px 16px #0000000c}.tiles article span{color:#666;display:block}.tiles article strong{margin-top:7px;font-size:30px;display:block}.panel{margin-bottom:16px}.panel h3{margin-top:0}.data-row{border-bottom:1px solid #eee;justify-content:space-between;padding:10px 0;display:flex}button,.file-button{cursor:pointer;border:0;border-radius:9px;padding:11px 15px;font-weight:800;display:inline-block}.primary{color:#111;background:#ffd400}.dark{color:#fff;background:#222}.secondary{color:#222;background:#e9e9e9}.file-button{background:#e9e9e9}.file-button input{display:none}input,select{background:#fff;border:1px solid #bdbdbd;border-radius:8px;width:100%;margin-top:6px;padding:11px}input:focus,select:focus{border-color:#9b8400;outline:3px solid #ffd40044}.readonly{background:#f1f1f1}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}label{font-size:13px;font-weight:750}.required{color:#b00020}.mandatory-note{color:#666;margin-bottom:12px;font-size:12px}.invalid input,.invalid select,.photo-module.invalid{background:#fff6f7;border-color:#b00020}.field-error{color:#b00020;margin-top:4px;font-size:11px;font-weight:700;display:block}.registration-form .panel{padding:20px}.photo-module{border-radius:12px;grid-template-columns:210px minmax(0,1fr);gap:16px;padding:10px;display:grid}.photo-preview{aspect-ratio:3/4;text-align:center;color:#666;background:#eee;border:2px dashed #aaa;border-radius:11px;place-items:center;padding:12px;display:grid;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:100%}.photo-controls video{background:#111;border-radius:10px;width:100%;max-height:270px;margin-bottom:10px}.button-row{flex-wrap:wrap;gap:8px;display:flex}.photo-controls small{color:#666;margin-top:10px;display:block}.form-actions{justify-content:flex-end;gap:10px;margin:18px 0;display:flex}.alert{background:#eef4ff;border-left:5px solid #155eef;border-radius:9px;margin:12px 0;padding:12px 14px}.alert.error{color:#8b0018;background:#fff0f2;border-color:#b00020}.alert.warning{background:#fff6df;border-color:#d17c00}.alert.success{background:#edfff3;border-color:#1b7a3d}.search-bar{gap:10px;margin-bottom:15px;display:flex}.search-bar input{margin:0}.table-wrap{background:#fff;border:1px solid #ddd;border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:780px}th,td{text-align:left;border-bottom:1px solid #eee;padding:12px;font-size:13px}th{background:#f8f8f8}@media (width<=850px){.workspace{grid-template-columns:1fr}nav{z-index:10;flex-direction:row;padding:8px;position:sticky;top:78px;overflow:auto}nav button{white-space:nowrap}.form-grid,.photo-module{grid-template-columns:1fr}.photo-preview{max-width:230px}.page-heading{display:block}.status-chip{margin-top:9px;display:inline-block}}@media (width<=560px){main{padding:14px}header strong{font-size:13px}.search-bar{flex-direction:column}.form-actions{z-index:9;background:#f4f4f0;padding:10px 0;position:sticky;bottom:0}}.camera-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.camera-selector{margin:8px 0 12px;display:block}.camera-selector select{margin-top:5px}@media (width<=560px){.camera-choice-grid{grid-template-columns:1fr 1fr}nav{align-items:center;min-height:auto}nav button{padding:10px 12px}.table-wrap{max-width:100%}}.standard-portrait{aspect-ratio:3/4;overflow:hidden}.standard-portrait img{object-fit:cover;width:100%;height:100%}.camera-stage{aspect-ratio:3/4;background:#111;border-radius:12px;width:100%;max-width:460px;margin-bottom:10px;position:relative;overflow:hidden}.camera-stage video{object-fit:cover;width:100%;height:100%}.portrait-guide{pointer-events:none;position:absolute;inset:0}.head-guide{border:3px solid #ffffffe6;border-radius:50%;width:38%;height:39%;position:absolute;top:14%;left:31%}.shoulder-guide{border:3px solid #ffffffe6;border-bottom:0;border-top-left-radius:50%;border-top-right-radius:50%;width:68%;height:36%;position:absolute;bottom:8%;left:16%}.framing-status{text-align:center;color:#fff;background:#000000ad;border-radius:8px;padding:8px 10px;font-weight:700;position:absolute;bottom:12px;left:12px;right:12px}.framing-status.ok{background:#146e32d6}.framing-status.warning{background:#a04b00db}.danger-outline{color:#a61b1b;background:#fff;border:1px solid #a61b1b}.membership-number-info{border-left:6px solid #ffd400}.membership-format{background:#f5f5f5;border-radius:10px;margin:12px 0;padding:14px;font-size:1.05rem}.registration-success-card{background:#fff;border:3px solid #ffd400;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:28px;display:flex}.registration-success-card h2{letter-spacing:.04em;word-break:break-word;margin:8px 0;font-size:clamp(1.8rem,5vw,3rem)}.success-kicker{color:#18743b;text-transform:uppercase;letter-spacing:.05em;font-weight:800;display:block}.success-actions{flex-wrap:wrap;gap:10px;display:flex}@media (width<=700px){.registration-success-card{flex-direction:column;align-items:stretch}.success-actions button{width:100%}}:root{--udp-yellow:#ffd400;--udp-yellow-soft:#fff7bd;--udp-black:#171717}header{color:#171717;border-bottom:7px solid var(--udp-yellow);background:#fff;box-shadow:0 3px 14px #00000012}header small{color:#555}.workspace{grid-template-columns:235px minmax(0,1fr)}nav{background:var(--udp-yellow);border-right:1px solid #d9b700}nav button{color:#111}nav button.active,nav button:hover{color:var(--udp-yellow);background:#111}main{background:linear-gradient(#fffdf2 0,#f7f6ef 350px)}.panel{border-top:5px solid var(--udp-yellow)}.panel h3{background:var(--udp-yellow);border-radius:8px;margin-top:-4px;padding:7px 12px;display:inline-block}.primary{background:var(--udp-yellow);color:#111;box-shadow:0 3px #c7a800}.secondary{background:#fff;border:1px solid #c9a900}.optional-label{color:#555;background:#eee;border-radius:999px;margin-left:5px;padding:3px 6px;font-size:10px}.card-preview-panel{background:#fff;border:2px solid #e0bd00;border-radius:15px;margin:18px 0;padding:18px}.preview-title{justify-content:space-between;align-items:center;display:flex}.preview-title h3{margin:0}.preview-title span{color:#ffd400;background:#111;border-radius:999px;padding:5px 10px;font-size:11px}.membership-card{aspect-ratio:85.6/53.98;border-radius:14px;max-width:520px;margin:14px auto;padding:18px;position:relative;overflow:hidden;box-shadow:0 8px 25px #0002}.front-card{background:linear-gradient(120deg,#fff 0 58%,#ffe45e 58% 100%);border:1px solid #d4b000}.back-card{background:linear-gradient(140deg,#ffd400,#fff8c9);border:1px solid #caa900}.card-logo{object-fit:contain;width:70px;height:70px;position:absolute;top:12px;right:15px}.card-party{max-width:65%;font-size:18px;font-weight:900}.card-motto{color:#8b7300;margin-top:2px;font-size:10px}.card-content{gap:13px;margin-top:18px;display:flex}.card-photo{aspect-ratio:3/4;background:#eee;border:1px solid #aaa;place-items:center;width:95px;font-size:11px;display:grid;overflow:hidden}.card-photo img{object-fit:cover;width:100%;height:100%}.card-details{flex-direction:column;gap:5px;font-size:10px;display:flex}.card-footer{font-size:9px;font-weight:800;position:absolute;bottom:12px;left:18px}.back-card h4{margin:0 0 12px;font-size:17px}.back-watermark{opacity:.12;width:120px;position:absolute;bottom:15px;right:20px}.signature-line{border-top:1px solid #222;width:170px;padding-top:4px;font-size:8px;position:absolute;bottom:35px;left:20px}.qr-placeholder{border:2px solid #111;place-items:center;width:72px;height:72px;font-weight:900;display:grid;position:absolute;top:65px;right:22px}.registration-success-card{background:linear-gradient(135deg,#fff,#fff9ce)}.registration-success-card>.card-preview-panel{flex:1;min-width:300px}.success-actions{flex-direction:column;min-width:220px}@media (width<=850px){.workspace{grid-template-columns:1fr}nav{background:var(--udp-yellow)}}.user-scope-note{color:#555;font-size:12px}.dob-selector{border:0;min-width:0;margin:0;padding:0}.dob-selector legend{margin-bottom:6px;font-weight:700}.dob-grid{grid-template-columns:.8fr 1.35fr 1fr;gap:8px;display:grid}.dob-grid label{font-size:12px}.calculated-age{background:#fffbea;border:1px solid #e1c200;border-radius:10px;flex-direction:column;justify-content:center;min-height:68px;padding:10px 14px;display:flex}.calculated-age span{color:#555;font-size:12px}.calculated-age strong{margin-top:3px;font-size:1.35rem}@media (width<=560px){.dob-grid{grid-template-columns:1fr}.calculated-age{min-height:auto}}.dob-confirmation{color:#246b35;margin-top:8px;font-weight:700;display:block}.username-preview{letter-spacing:.04em;font-weight:800;background:#fff9cf!important;border-color:#d4b000!important}.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.analytics-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-row{grid-template-columns:140px 1fr 45px;align-items:center;gap:10px;margin:12px 0;display:grid}.chart-row div{background:#eee;border-radius:8px;height:14px;overflow:hidden}.chart-row i{background:#f4ce00;border-radius:8px;height:100%;display:block}@media (width<=800px){.analytics-grid,.analytics-tiles{grid-template-columns:1fr}.chart-row{grid-template-columns:100px 1fr 36px}}.designer-grid{grid-template-columns:minmax(300px,420px) minmax(420px,1fr);gap:18px;display:grid}.designer-controls{border:1px solid #ddd;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;padding:10px;display:grid}.designer-controls legend{font-weight:900}.designer-card{aspect-ratio:85.6/53.98;background:linear-gradient(120deg,#fff 0 62%,#ffd400 62%);border:2px solid #c8a900;border-radius:16px;position:relative;overflow:hidden}.designer-logo{object-fit:contain;width:14%;height:22%;position:absolute;top:4%;right:3%}.designer-box{background:#ffffffc9;border:1px dashed #222;padding:4px;font-size:10px;position:absolute;overflow:hidden}.photo-box{background:#eee;place-items:center;display:grid}.offline-badge{color:#fff;background:#ad5c00;border-radius:999px;padding:4px 8px}@media (width<=900px){.designer-grid{grid-template-columns:1fr}.designer-controls{grid-template-columns:repeat(2,1fr)}}.inline-action{align-items:end;gap:8px;display:flex}.inline-action input{flex:1}.designer-toolbar .primary{width:100%;margin-top:12px}.side-tabs{gap:8px;margin:10px 0;display:flex}.side-tabs button.active{background:#f5d000;font-weight:800}.visual-card{touch-action:none;background-position:50%;background-size:cover;overflow:hidden}.designer-box.draggable{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.designer-box.draggable.selected{outline:3px solid #e0b900;box-shadow:0 0 0 2px #fff}.safe-margin{pointer-events:none;border:1px dashed #b400008c;position:absolute;inset:3%}.gambia-map-strip{align-items:stretch;gap:4px;min-height:120px;display:flex}.gambia-map-strip button{background:#f5d000;border:1px solid #b79b00;flex-direction:column;flex:1;justify-content:center;min-width:72px;display:flex}.gambia-map-strip span{font-size:1.2rem;font-weight:800}.map-panel{grid-column:1/-1}@media (width<=700px){.inline-action{flex-direction:column;align-items:stretch}.gambia-map-strip{overflow-x:auto}.gambia-map-strip button{flex:0 0 95px}}:root{--udp-yellow:#ffd400;--udp-yellow-deep:#c8a600;--udp-cream:#fffbe4;--surface:#fff;--ink:#181818;--shadow-dark:#221c0038;--shadow-light:#ffffffeb}body{color:var(--ink);background:linear-gradient(135deg,#fbfaf2,#efede0)}button,.primary,.secondary,input,select,textarea{transition:transform .12s,box-shadow .12s,border-color .12s}button,.primary,.secondary{cursor:pointer;border:1px solid #5a4b0040;border-radius:12px;font-weight:800;box-shadow:0 5px #5648004d,0 9px 20px #0000001f,inset 0 1px #fffc}button:hover,.primary:hover,.secondary:hover{transform:translateY(-2px);box-shadow:0 7px #56480047,0 13px 25px #00000029,inset 0 1px #fff}button:active,.primary:active,.secondary:active{transform:translateY(4px);box-shadow:0 1px #56480047,0 3px 7px #00000024,inset 0 2px 5px #0000001f}input,select,textarea{box-shadow:inset 0 2px 5px #322a001f,0 2px #ffffffe6;background:linear-gradient(#fff,#fffdf5)!important;border:1px solid #c9c3a2!important;border-radius:11px!important}input:focus,select:focus,textarea:focus{outline:none;transform:translateY(-1px);box-shadow:inset 0 2px 5px #322a0014,0 0 0 4px #ffd40040,0 5px 14px #0000001a;border-color:var(--udp-yellow-deep)!important}.panel,.login-card,.table-wrap,.tiles article{box-shadow:0 14px 30px #2f27001f,inset 0 1px #ffffffe6}nav button{box-shadow:0 4px #705d0054,0 7px 12px #0000001f}nav button.active{transform:translateY(3px);box-shadow:inset 0 3px 8px #00000059,0 1px #ffffff59}.tiles article{background:linear-gradient(145deg,#fff,#fff7c9);border:1px solid #e2c63a;border-radius:16px}.designer-pro-layout{grid-template-columns:300px minmax(480px,1fr) 300px;align-items:start;gap:18px;display:grid}.designer-toolbox,.designer-properties{position:sticky;top:95px}.object-palette{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;display:grid}.object-palette button{padding:10px;font-size:11px}.object-palette button.active{color:#ffd400;background:#171717}.designer-stage-panel{min-width:0}.designer-stage-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.designer-stage-header span{color:#ffd400;background:#171717;border-radius:999px;padding:6px 10px;font-size:12px}.pro-canvas{box-shadow:0 22px 42px #0000003d,inset 0 0 0 1px #ffffffb3}.designer-grid-lines{pointer-events:none;background-image:linear-gradient(#0000000b 1px,#0000 1px),linear-gradient(90deg,#0000000b 1px,#0000 1px);background-size:5% 5%;position:absolute;inset:0}.resize-corner{background:#ffd400;border:2px solid #111;border-radius:3px;width:11px;height:11px;position:absolute;bottom:-1px;right:-1px}.designer-box{border-radius:6px;align-items:center;display:flex}.designer-box.selected{outline:3px solid #111!important;box-shadow:0 0 0 4px #ffd400,0 8px 18px #00000040!important}.property-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.nudge-pad{grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0;display:grid}.nudge-pad button{padding:8px}.selected-object-name{text-align:center;background:#fff6a8;border-radius:10px;margin-bottom:12px;padding:9px;display:block}.saved-template-list{flex-direction:column;gap:8px;display:flex}.template-chip{text-align:left;background:#fff;justify-content:space-between;align-items:center;display:flex}.template-chip small{color:#725f00;font-weight:700}@media (width<=1180px){.designer-pro-layout{grid-template-columns:260px 1fr}.designer-properties{grid-column:1/-1;position:static}.designer-toolbox{position:static}}@media (width<=760px){.designer-pro-layout{grid-template-columns:1fr}.designer-toolbox,.designer-properties{position:static}.object-palette{grid-template-columns:1fr 1fr}.designer-stage-header{flex-direction:column;align-items:flex-start}}.report-filters{grid-template-columns:repeat(6,minmax(130px,1fr));align-items:end;gap:12px;display:grid}.report-filters button{min-height:44px}.wide-report{grid-column:span 2}@media (width<=1000px){.report-filters{grid-template-columns:repeat(2,1fr)}.wide-report{grid-column:span 1}}@media print{header,nav,.report-filters button{display:none!important}.workspace{display:block}.panel{break-inside:avoid;box-shadow:none}}.preview-mode-tabs{gap:8px;margin:8px 0 14px;display:flex}.preview-mode-tabs button.active{color:#ffd400;background:#171717}.card-preview-cards{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.card-preview-cards.front .back-card,.card-preview-cards.back .front-card{display:none}.preview-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.preview-message{color:#5b4b00;margin-top:8px;font-weight:800;display:block}.clickable-row{cursor:pointer}.clickable-row:hover{background:#fff7b0}.mini-action{padding:7px 10px;font-size:12px}.modal-backdrop{z-index:2000;background:#0000009e;justify-content:center;align-items:flex-start;padding:28px;display:flex;position:fixed;inset:0;overflow:auto}.member-profile-modal{background:#f8f6ea;border-radius:20px;width:min(1120px,100%);padding:22px;box-shadow:0 28px 80px #0000006b}.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal-header span{text-transform:uppercase;letter-spacing:.08em;color:#7e6900;font-weight:900}.modal-header h2{margin:3px 0}.member-profile-grid{grid-template-columns:180px 1fr;gap:20px;margin:18px 0;display:grid}.member-photo-large{background:#ddd;border-radius:14px;justify-content:center;align-items:center;height:210px;display:flex;overflow:hidden}.member-photo-large img{object-fit:cover;width:100%;height:100%}.profile-summary{background:#fff;border-radius:14px;padding:18px;box-shadow:0 8px 20px #0000001a}.profile-fields{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin:18px 0;display:grid}.profile-value{background:#fff;border:1px solid #d9d2aa;border-radius:10px;min-height:42px;padding:11px;font-weight:700}.modal-actions{background:#f8f6ea;flex-wrap:wrap;gap:10px;padding-top:14px;display:flex;position:sticky;bottom:0}@media (width<=760px){.modal-backdrop{padding:8px}.member-profile-modal{border-radius:14px;padding:14px}.member-profile-grid{grid-template-columns:1fr}.member-photo-large{height:240px}.profile-fields{grid-template-columns:1fr}.card-preview-cards{justify-content:center}}.wing-selector{background:#fffdf1;border:1px solid #d7c45d;border-radius:14px;grid-column:1/-1;padding:14px}.wing-selector legend{padding:0 8px;font-weight:900}.field-help{color:#685b22;margin:0 0 10px;font-size:12px}.wing-options{grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px;display:grid}.wing-option{cursor:pointer;background:#fff;border:1px solid #d9d2aa;border-radius:12px;align-items:flex-start;gap:9px;padding:10px;display:flex}.wing-option.selected{background:#fff3a0;border-color:#b99500;box-shadow:inset 0 0 0 2px #ffd400}.wing-option input{margin-top:3px;width:auto!important}.wing-option span{flex-direction:column;display:flex}.wing-option small{color:#6f6650;font-size:11px}.check-line{align-items:center;gap:8px;display:flex!important}.check-line input{width:auto!important}@media (width<=900px){.wing-options{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.wing-options{grid-template-columns:1fr}}@media (width>=1000px){.registration-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.registration-form .panel{margin-bottom:12px;padding:14px 16px}.registration-form .panel h3{margin:0 0 10px}}.phone-field-group{grid-column:span 2;grid-template-columns:minmax(230px,1.15fr) minmax(150px,.85fr);gap:10px;display:grid}.compact-field{max-width:100%}.party-wing-dropdown{grid-column:span 1}.multi-select-dropdown{position:relative}.multi-select-dropdown summary{cursor:pointer;background:#fff;border:1px solid #c9c3a2;border-radius:11px;min-height:42px;padding:11px;list-style:none;box-shadow:inset 0 2px 5px #322a001a}.multi-select-dropdown summary::-webkit-details-marker{display:none}.multi-select-menu{z-index:80;background:#fff;border:1px solid #c9b63b;border-radius:12px;max-height:320px;padding:8px;position:absolute;left:0;right:0;overflow:auto;box-shadow:0 16px 35px #00000038}.multi-select-menu label{cursor:pointer;border-radius:8px;gap:8px;padding:8px;display:flex}.multi-select-menu label.selected{background:#fff2a0}.multi-select-menu input{width:auto!important}.multi-select-menu span{flex-direction:column;display:flex}.multi-select-menu small{color:#666;font-size:11px}.whole-card-background{background:#fffbea;border:2px solid #e2c63a;border-radius:13px;margin-bottom:12px;padding:12px}.whole-card-background h3{margin-top:0}.section-divider{background:linear-gradient(90deg,#0000,#ffd400,#0000);height:2px;margin:28px 0}@media (width<=850px){.phone-field-group{grid-column:1;grid-template-columns:1fr}.party-wing-dropdown{grid-column:1}}.front-card{background:linear-gradient(145deg,#ffd400 0% 48%,#fff3a1 71%,#fff 100%)!important}.back-card{background:linear-gradient(145deg,#ffd400 0%,#ffe55e 55%,#fff7c9 82%,#fff 100%)!important}.authorised-signature{width:210px;font-size:8px;position:absolute;bottom:18px;left:20px}.signature-script{margin-left:20px;font-family:cursive;font-size:18px;font-style:italic;line-height:1}.signature-rule{border-top:1px solid #222;margin:2px 0 3px}.authorised-signature small{font-size:7px;display:block}.validity-text{margin-top:12px;font-weight:600}.validity-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}@media (width<=700px){.validity-grid{grid-template-columns:1fr!important}}.membership-card{border:0!important;border-radius:14px!important;overflow:hidden!important}.front-card,.back-card{background:linear-gradient(145deg,#f4cf35 0%,#f7d94f 58%,#fae77e 82%,#f8e9a2 100%)!important}.card-party{letter-spacing:-.35px;white-space:nowrap!important;font-size:18px!important;font-weight:950!important}.card-motto{color:#111!important;margin-top:3px!important;font-size:12px!important;font-weight:900!important}.card-details{color:#111!important;font-size:11px!important;line-height:1.32!important}.card-details strong{font-size:18px!important;line-height:1.05!important}.back-card h4{max-width:75%!important;font-size:17px!important;line-height:1.15!important}.back-card p{font-size:10px!important;line-height:1.35!important}.headquarters-address{font-size:9px!important}.uploaded-signature{object-fit:contain;max-width:165px;max-height:42px;margin:0 auto 3px;display:block}.signature-placeholder{text-align:center;margin-bottom:3px;font-size:9px;font-style:italic}.authorised-signature{width:200px!important;font-size:8px!important;bottom:12px!important;left:18px!important}.qr-placeholder{width:74px!important;height:74px!important;top:auto!important;bottom:18px!important;right:20px!important}.calendar-field{grid-template-columns:1fr 44px;gap:6px;display:grid;position:relative}.calendar-display{letter-spacing:.04em;font-weight:800}.calendar-button{min-height:42px;padding:8px!important}.native-date-picker{opacity:0;pointer-events:none;bottom:0;right:0;width:44px!important;height:42px!important;position:absolute!important}.quick-date-ranges{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.approved-template-panel{background:#fff9d2;border:2px solid #d3ae00}@media print{.membership-card{border-radius:0!important}}.registration-error-detail{white-space:normal;font-weight:800;line-height:1.45}.membership-number-preview{background:#fff7bf;border:2px solid #d1ad00;border-radius:12px;flex-direction:column;gap:3px;margin-top:12px;padding:12px 14px;display:flex}.membership-number-preview span{text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:900}.membership-number-preview strong{letter-spacing:.04em;font-size:21px}.membership-number-preview small{color:#665800}.card-party{text-align:center!important;white-space:nowrap!important;max-width:none!important;font-size:16px!important;line-height:1.05!important;position:absolute!important;top:13px!important;left:14px!important;right:82px!important;overflow:hidden!important}.card-motto{text-align:center!important;font-size:10px!important;line-height:1!important;position:absolute!important;top:35px!important;left:14px!important;right:82px!important}.card-logo{width:62px!important;height:62px!important;top:9px!important;right:13px!important}.front-card:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 80% 12%,#fff9c4eb,#f9de6585 55%,#f4cf3500 78%);width:88px;height:78px;position:absolute;top:0;right:0}.card-logo,.card-party,.card-motto,.card-content{z-index:2}.card-content{transform:translateY(-7px);margin-top:44px!important}.card-photo{width:88px!important;height:110px!important}.card-details{gap:2px!important;font-size:10.5px!important}.card-details strong{font-size:17px!important}.qr-placeholder img{object-fit:contain;width:100%;height:100%}.qr-placeholder span{text-align:center;padding:4px;font-size:7px;line-height:1.1}@media (width<=700px){.card-party{font-size:14px!important;right:74px!important}.card-motto{font-size:9px!important;right:74px!important}}.membership-card.front-card,.membership-card.back-card{background:linear-gradient(135deg,#f5d654 0%,#f8df71 55%,#fae997 82%,#fff8d3 100%)!important;border:1px solid #d4b329!important}.front-card:before{content:"";z-index:1;background:#ffffff75;border-radius:50%;width:122px;height:122px;position:absolute;top:-20px;right:-16px}.card-party{text-align:center!important;max-width:none!important;font-size:18px!important;position:absolute!important;top:16px!important;left:18px!important;right:88px!important}.card-motto{text-align:center!important;color:#715f00!important;font-size:9px!important;font-weight:700!important;position:absolute!important;top:39px!important;left:18px!important;right:88px!important}.card-content{gap:14px!important;margin-top:46px!important;transform:none!important}.card-photo{background:#fff!important;border:2px solid #202020!important;width:104px!important;height:130px!important}.card-details{gap:4px!important;max-width:260px!important;font-size:10px!important;line-height:1.15!important}.card-details strong{margin-bottom:2px!important;font-size:15px!important;line-height:1.1!important}.back-card h4{max-width:72%!important;font-size:16px!important}.back-card p{max-width:72%!important;font-size:9px!important;line-height:1.3!important}.authorised-signature{width:210px!important;bottom:18px!important}.qr-placeholder{width:82px!important;height:82px!important;bottom:24px!important;right:20px!important}.iec-station-reference-box{background:#fffbea;border:1px solid #d8b100;border-radius:12px;margin:0 0 16px;padding:14px}.iec-station-reference-title{margin-bottom:10px;font-weight:800}.iec-station-reference-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.iec-station-reference-row label{margin:0}.iec-station-reference-row button{white-space:nowrap}.iec-station-message{margin-top:8px;display:block}.iec-station-result{background:#fff;border-radius:8px;gap:4px;margin-top:10px;padding:10px;display:grid}.iec-station-result span{font-size:.9rem}@media (width<=640px){.iec-station-reference-row{grid-template-columns:1fr}.iec-station-reference-row button{width:100%}}.photo-crop-editor{background:#fffbea;border:2px solid #d5ad00;border-radius:18px;margin-top:20px;padding:18px}.photo-crop-editor h4{margin:0 0 8px;font-size:1.2rem}.photo-crop-editor p{margin:0 0 16px}.photo-crop-frame{aspect-ratio:3/4;touch-action:none;cursor:grab;background:#ddd;border:3px solid #111;border-radius:14px;width:min(300px,100%);margin:0 auto 18px;overflow:hidden}.photo-crop-frame:active{cursor:grabbing}.photo-crop-frame canvas{width:100%;height:100%;display:block}.crop-zoom-control{gap:8px;margin:14px 0 18px;font-weight:700;display:grid}.crop-zoom-control input[type=range]{width:100%}
