:root{--navy:#061a38;--blue:#0c356b;--line:#d8e1ec;--ink:#102343;--muted:#63728a;--green:#159447}.kiosk{min-height:100vh;background:linear-gradient(135deg,#03152f,#092b58);color:var(--ink);display:flex;flex-direction:column}.kiosk-header{min-height:104px;padding:12px 22px;display:grid;grid-template-columns:90px 1fr 112px;align-items:center;color:#fff}.kiosk-header img{width:72px;height:72px;object-fit:contain}.kiosk-header div{text-align:center}.kiosk-header h1{margin:0;font-size:clamp(1.5rem,3vw,2.55rem);font-weight:950;letter-spacing:.045em}.kiosk-header strong{display:block;margin-top:4px;color:#ffcf20;font-size:clamp(1rem,2vw,1.65rem);letter-spacing:.07em}.kiosk-header time{padding:12px;border:1px solid #536985;border-radius:9px;text-align:center;background:#09213f}.kiosk-header time b,.kiosk-header time span{display:block}.kiosk-header time b{font-size:1.05rem}.kiosk-header time span{margin-top:4px;font-size:.74rem}.kiosk main{width:100%;max-width:none;padding:0 7px;flex:1}.kiosk-card{overflow:hidden;border-radius:10px 10px 0 0;background:#f7f9fc;box-shadow:0 10px 30px #0005}.kiosk-intro{padding:18px 24px 10px}.kiosk-intro h2{margin:0;text-transform:uppercase;font-size:1.55rem}.kiosk-intro p{margin:5px 0;color:var(--muted)}.kiosk form{padding:8px 22px 12px}.kiosk-content{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:12px}.form-column{display:grid;gap:12px}.identity-panel,.establishment-panel,.summary-card,.reminder-card,.customer-classifications{border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 2px 8px #0e28450b}.identity-panel{padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.identity-panel .nickname-field{grid-column:1/-1}.kiosk label{margin:0;gap:7px;font-size:.8rem;color:var(--ink)}.kiosk label>span:first-child{font-weight:850}.kiosk label small{color:var(--muted);font-weight:600}.control{display:grid;grid-template-columns:42px 1fr;align-items:center;border:1px solid #d4ddea;border-radius:7px;background:#fff;overflow:hidden}.control i{height:100%;display:grid;place-items:center;background:#f1f5fa;color:#155fb2;font-size:1.2rem;font-style:normal}.kiosk .control input,.kiosk .control select{width:100%;min-height:48px;padding:10px;border:0;border-radius:0;background:#fff;color:var(--ink);font-size:.96rem}.customer-classifications{padding:12px 14px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.customer-classifications legend{padding:0 7px;font-size:.8rem;font-weight:900}.customer-classifications label{min-height:68px;padding:9px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:8px;background:#fff;cursor:pointer}.customer-classifications label:has(input:checked){border:2px solid #438bff;background:#eff6ff;box-shadow:0 2px 9px #438bff22}.customer-classifications input{width:17px;height:17px;min-height:auto;accent-color:#1671e8}.customer-classifications span{display:grid;gap:2px}.customer-classifications b{font-size:.73rem}.customer-classifications small{font-size:.65rem}.establishment-panel{padding:14px}.est-heading{display:flex;justify-content:space-between;align-items:center}.est-heading h3{margin:0;text-transform:uppercase}.est-heading h3 b{display:inline-block;margin-left:7px;padding:4px 8px;border-radius:999px;background:#e6f0ff;color:#2872d1;font-size:.68rem}.est-heading>strong{font-size:.75rem}.source-filters{display:flex;gap:9px;margin:12px 0}.source-filters button{min-height:38px;margin:0;padding:9px 13px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font-size:.69rem;white-space:nowrap}.source-filters button.active{background:#0a3a78;color:#fff}.est-row{display:grid;grid-template-columns:30px minmax(0,1fr) 38px;align-items:end;gap:7px;padding:9px 0;border-bottom:1px solid #edf1f6}.row-number{width:27px;height:27px;margin-bottom:10px;border-radius:50%;display:grid;place-items:center;background:#e9f2ff;color:#1d66bf;font-weight:900}.est-row select{width:100%;min-height:44px;border:1px solid #ced8e5;border-radius:7px;background:#fff;color:var(--ink)}.est-row .danger{width:38px;min-height:44px;margin:0;padding:0;border-radius:7px;background:#fff0f1;color:#c72938;border:1px solid #f0c5ca;font-size:1.2rem}.add-est{width:100%;min-height:43px;margin:10px 0 0;background:#0b3a74;border-radius:7px}.add-est:disabled{opacity:.42;cursor:not-allowed}.kiosk-side{display:grid;align-content:start;gap:12px}.summary-card,.reminder-card{padding:16px}.summary-card h3,.reminder-card h3{margin:0 0 14px;text-transform:uppercase;font-size:.88rem}.summary-card dl{margin:0}.summary-card dl div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 0}.summary-card dt{font-weight:800;font-size:.76rem}.summary-card dt i{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:5px;border-radius:50%;background:#e8f2ff;color:#176dcc;font-style:normal}.summary-card dd{margin:0;max-width:100px;text-align:right;font-size:.72rem;font-weight:850;color:#314765;overflow:hidden;text-overflow:ellipsis}.reminder-card{background:#eef5ff}.reminder-card p{padding-left:2px;color:#314765;font-size:.72rem;line-height:1.65}.reminder-card p::first-letter{color:#159447}.action-bar{display:grid;grid-template-columns:155px 1fr;gap:14px;margin-top:14px}.action-bar button{min-height:54px;margin:0;border-radius:7px}.clear-button{background:#fff;color:#243652;border:1px solid var(--line)}.register-button{background:linear-gradient(90deg,#168a43,#0da14d);font-size:1.12rem;letter-spacing:.03em;box-shadow:0 5px 13px #15944733}.reprint-button{width:100%;background:#d88912}.printer-warning{padding:7px;border:1px solid #d2a032;border-radius:6px;background:#fff6d9;color:#744c05;text-align:center}.kiosk #message{min-height:19px;margin:7px 0 0;color:#154f9a;font-weight:850;text-align:center}.kiosk-footer{min-height:58px;padding:8px 24px;display:grid;grid-template-columns:210px 1fr 210px;align-items:center;color:#fff}.kiosk-footer>span{display:flex;align-items:center;gap:9px}.kiosk-footer>span>i{font-size:1.45rem;font-style:normal}.kiosk-footer b,.kiosk-footer b small{display:block}.kiosk-footer b{font-size:.65rem}.kiosk-footer b small{margin-top:2px;color:#ffbf45}.kiosk-footer .ready b small{color:#55dd88}.kiosk-footer p{text-align:center;font-size:.76rem}.kiosk-footer>small{text-align:right;font-size:.65rem;line-height:1.45}@media(max-width:1000px){.kiosk-content{grid-template-columns:1fr}.kiosk-side{grid-template-columns:1fr 1fr}.customer-classifications{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.kiosk-header{grid-template-columns:58px 1fr}.kiosk-header img{width:52px;height:52px}.kiosk-header time{display:none}.kiosk-header h1{font-size:1.15rem}.kiosk-header strong{font-size:.75rem}.kiosk form{padding:8px 12px}.identity-panel{grid-template-columns:1fr}.identity-panel .nickname-field{grid-column:auto}.customer-classifications{grid-template-columns:1fr 1fr}.source-filters{display:grid;grid-template-columns:1fr 1fr}.source-filters button{white-space:normal}.kiosk-side{grid-template-columns:1fr}.action-bar{grid-template-columns:1fr}.kiosk-footer{grid-template-columns:1fr}.kiosk-footer p,.kiosk-footer>small{display:none}}

/* Compact viewport treatment: preserve the approved design while keeping the primary action visible. */
.kiosk-header{min-height:76px;padding:7px 18px;grid-template-columns:66px 1fr 104px}.kiosk-header img{width:55px;height:55px}.kiosk-header h1{font-size:clamp(1.25rem,2.5vw,2rem)}.kiosk-header strong{font-size:clamp(.8rem,1.55vw,1.25rem)}.kiosk-header time{padding:8px}.kiosk main{padding:0 6px}.kiosk-intro{padding:10px 20px 5px}.kiosk-intro h2{font-size:1.25rem}.kiosk-intro p{margin:2px 0;font-size:.78rem}.kiosk form{padding:5px 16px 7px}.kiosk-content{display:block}.form-column{gap:7px}.identity-panel{padding:8px 11px;gap:10px}.kiosk .control input,.kiosk .control select{min-height:41px;padding:7px}.customer-classifications{padding:7px 10px;gap:6px;margin:0}.customer-classifications label{min-height:48px;padding:6px 8px}.customer-classifications b{font-size:.7rem}.establishment-panel{padding:8px 11px}.est-heading h3{font-size:.92rem}.source-filters{margin:7px 0;gap:6px}.source-filters button{min-height:34px;padding:7px 10px}.est-row{padding:4px 0}.est-row select{min-height:39px}.est-row .danger{min-height:39px}.row-number{margin-bottom:6px}.add-est{min-height:38px;margin-top:6px}.action-bar{margin-top:7px;gap:9px}.action-bar button{min-height:47px}.register-button{font-size:1rem}.kiosk #message{margin:3px 0 0;min-height:16px;font-size:.78rem}.kiosk-footer{min-height:44px;padding:5px 20px}
@media(max-height:760px) and (min-width:701px){.kiosk-header{min-height:66px}.kiosk-header img{width:47px;height:47px}.kiosk-intro{padding-top:7px}.kiosk-intro p{display:none}.identity-panel{padding-top:6px;padding-bottom:6px}.customer-classifications label{min-height:43px}.source-filters button{min-height:32px}.kiosk-footer{min-height:38px}.kiosk-footer p{margin:0}.action-bar button{min-height:44px}}
@media(max-width:1000px){.customer-classifications{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:800px){.customer-classifications{grid-template-columns:repeat(3,minmax(0,1fr))}.source-filters{flex-wrap:wrap}.source-filters button{flex:1 1 18%}}.est-inputs{min-width:0}.manual-entry input{width:100%;min-height:39px;padding:8px 11px;border:1px solid #ced8e5;border-radius:7px;background:#fff;color:var(--ink)}.manual-toggle{min-height:auto;margin:3px 0 0;padding:2px 4px;border:0;background:transparent;color:#60728b;text-align:left;font-size:.65rem}.manual-toggle b{color:#176dcc;font-size:.66rem}.est-row:has(.manual-entry:not([hidden])){background:#fffaf0;border-radius:7px;padding-left:4px}/* Visual classification cards and single-mode establishment workflow. */
.customer-classifications label{position:relative;flex-direction:column;justify-content:center;text-align:center}.customer-classifications label input{position:absolute;top:7px;left:8px}.customer-classifications label svg{width:34px;height:34px;fill:currentColor;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.customer-classifications label:nth-of-type(1){color:#1769d2}.customer-classifications label:nth-of-type(2){color:#35a853}.customer-classifications label:nth-of-type(3){color:#174b91}.customer-classifications label:nth-of-type(4){color:#9253b7}.customer-classifications label:nth-of-type(5){color:#f39816}.customer-classifications label b{color:var(--ink)}.establishment-workspace{display:grid;grid-template-columns:1.12fr .88fr;gap:10px}.selected-panel{padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#fff}.establishment-panel label,.selected-panel label{gap:4px}.establishment-panel select,.establishment-panel input{width:100%;min-height:39px;padding:7px 10px;border:1px solid #ced8e5;border-radius:7px;background:#fff;color:var(--ink)}.manual-prompt{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding:6px 9px;border:1px solid #efd17b;border-radius:7px;background:#fff9e8;font-size:.68rem;font-weight:750}.manual-prompt button,#back-to-database{min-height:30px;margin:0;padding:5px 9px;border:1px solid #4e91ef;border-radius:6px;background:#fff;color:#1764c4;font-size:.66rem}.selected-establishments{min-height:128px;margin-top:7px;border:1px solid #dce3ed;border-radius:7px;background:#fbfcfe;padding:6px}.selected-empty{min-height:112px;display:grid;place-items:center;align-content:center;gap:4px;color:#8491a5;text-align:center}.selected-empty b{font-size:2rem;color:#d5dbe5}.selected-empty strong{font-size:.76rem}.selected-empty span{font-size:.68rem}.selected-row{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:7px;padding:6px;border-bottom:1px solid #e7ecf2}.selected-row:last-child{border-bottom:0}.selected-number{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#e8f2ff;color:#1768c7;font-size:.7rem}.selected-row>div{min-width:0;display:grid}.selected-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.selected-source{color:#667a93;font-size:.62rem}.selected-row button{min-height:29px;margin:0;padding:4px 7px;border:1px solid #efc3c8;background:#fff2f3;color:#bb2737;font-size:.6rem}.establishment-workspace .add-est{margin-top:6px}@media(max-height:760px) and (min-width:801px){.customer-classifications label svg{width:29px;height:29px}.selected-establishments{min-height:105px}.selected-empty{min-height:89px}.manual-prompt{padding-top:4px;padding-bottom:4px}}@media(max-width:800px){.establishment-workspace{grid-template-columns:1fr}.selected-establishments{min-height:90px}.selected-empty{min-height:74px}}/* Unified cross-source establishment search. */
#database-entry{position:relative}.establishment-results{position:absolute;z-index:20;left:0;right:0;top:48px;max-height:210px;overflow:auto;padding:5px;border:1px solid #b9c8da;border-radius:7px;background:#fff;box-shadow:0 10px 24px #102a4f33}.establishment-results button{width:100%;min-height:48px;margin:0;padding:7px 10px;border:0;border-bottom:1px solid #edf1f5;border-radius:0;background:#fff;color:var(--ink);display:grid;text-align:left}.establishment-results button:hover,.establishment-results button:focus{background:#edf5ff}.establishment-results button strong{font-size:.73rem}.establishment-results button small,.chosen-establishment small{color:#506b8d;font-size:.65rem}.chosen-establishment{margin-top:5px;padding:6px 9px;border:1px solid #71a7e8;border-radius:7px;background:#eef6ff;display:grid}.chosen-establishment strong{font-size:.72rem}
/* Refined compact identity row and clearer unified search. */
@media(min-width:701px){.identity-panel .nickname-field{grid-column:auto}.identity-panel{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:end}}
.identity-panel label{min-width:0}.identity-panel .control{box-shadow:inset 0 0 0 1px #fff}.identity-panel .control:focus-within{border-color:#2d7eea;box-shadow:0 0 0 3px #2d7eea1f}.identity-panel label>span:first-child{letter-spacing:.01em}
.search-label>span:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.search-label>span:first-child small{color:#6b7f99;font-size:.6rem;letter-spacing:.02em}.search-label input{padding-left:38px!important;font-size:.88rem!important;font-weight:750;background-color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231b67bd' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:12px center!important}.search-label input::placeholder{color:#748298;font-weight:650}.search-label input:focus{outline:0;border-color:#287ce6;box-shadow:0 0 0 3px #287ce620}
.establishment-results{top:54px;padding:6px;border-color:#91b7e6;border-radius:9px;box-shadow:0 14px 30px #102a4f3d}.establishment-results button{position:relative;min-height:54px;padding:8px 36px 8px 11px;border-radius:6px}.establishment-results button::after{content:'SELECT';position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#1767c7;font-size:.55rem;font-weight:900;letter-spacing:.05em}.establishment-results button+button{margin-top:3px}.establishment-results button:hover,.establishment-results button:focus{background:#eaf4ff;box-shadow:inset 3px 0 #287ce6}.establishment-results button strong{font-size:.78rem;line-height:1.25}.establishment-results button small,.chosen-establishment small{margin-top:2px;color:#55718f;font-size:.66rem;font-weight:650}.chosen-establishment{border-left:4px solid #287ce6;padding:7px 10px}.chosen-establishment strong{font-size:.78rem}.selected-name{font-size:.76rem}.selected-source{margin-top:2px;font-size:.64rem}
