:root{--pos-ink:#102e43;--pos-muted:#71808b;--pos-gold:#bd9455;--pos-line:#e4ddd1;--pos-paper:#fff;--pos-canvas:#f5f4ef}
.server-app{margin:0;background:var(--pos-canvas);color:var(--pos-ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}
.server-app *{box-sizing:border-box}.server-app [hidden]{display:none!important}.server-app button,.server-app input,.server-app select,.server-app textarea{font:inherit}.server-app button{cursor:pointer}.server-app button:disabled{opacity:.45;cursor:default}.server-app svg{flex:none;vertical-align:middle}.server-app button:focus-visible{outline:3px solid #bc9455;outline-offset:3px}.server-app h1,.server-app h2,.server-app h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.18}.server-app h3{font-size:23px;margin:18px 0}.server-app header{position:relative;z-index:10;padding:0 30px;background:#102e43;border-bottom:1px solid #284558}.server-app .header-inner{width:100%;max-width:none;min-height:76px;gap:20px}.server-brand{display:flex;align-items:center;gap:14px}.server-brand>img{width:36px;height:57px}.server-brand .brand-wordmark{font-size:23px;letter-spacing:.1em;color:#edd7a7}.server-brand small{display:block;font-size:11px;color:#a7bdc9;margin-top:3px}.server-app header .badge{border-color:#829081;color:#d7b77e;font-size:10px;letter-spacing:.13em}.server-app header #identity{color:#dbe6e9;font-size:13px}.server-app header button.secondary{color:#ead4a8;border-color:#788783;background:transparent;padding:8px 16px}.server-app .app-shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:calc(100vh - 76px)}.server-app main{width:100%;max-width:1540px;margin:0 auto;min-width:0;padding:32px 38px 45px}.server-app #tabs{padding:32px 16px 24px;border-right:1px solid #e2ddd3;background:#fbfaf7;min-height:calc(100vh - 76px);overflow:visible}.server-app .nav-title{padding:0 16px;font-size:10px;color:#a18252;letter-spacing:.18em;margin:0 0 20px}.server-app #tabs button{display:flex;align-items:center;gap:12px;width:100%;padding:13px 15px;text-align:left;border-radius:9px;font-size:12px;margin:3px 0;color:#526777;white-space:normal}.server-app #tabs button svg{color:#a98a5b;width:19px;height:19px}.server-app #tabs button:hover{background:#f1ece2}.server-app #tabs button.active{background:#14384d;color:white;box-shadow:0 5px 12px #0f2e4210}.server-app #tabs button.active svg{color:#d4b97f}.server-app .eyebrow{display:block;color:#a38251;letter-spacing:.17em;font-size:10px;font-weight:700;line-height:1.6}.server-app .muted{color:var(--pos-muted)}.server-app .row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.server-app .panel{padding:24px;border:1px solid var(--pos-line);background:white;border-radius:16px;margin:20px 0;box-shadow:0 8px 22px #17354804}.server-app .panel>h3:first-child{margin-top:0}.server-app .panel>summary{cursor:pointer;font-weight:600}.server-app .field{display:grid;gap:7px;margin:14px 0;font-size:12px;font-weight:600;color:#4c6170}.server-app input,.server-app select,.server-app textarea{width:100%;padding:12px 13px;border:1px solid #dcdcd5;border-radius:9px;background:#fff;color:#18384d;min-height:44px}.server-app textarea{resize:vertical}.server-app input:focus,.server-app select:focus,.server-app textarea:focus{outline:2px solid #c4a36e;outline-offset:2px}.server-app input:invalid:not(:placeholder-shown){border-color:#c48775}.server-app button.primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #b59259;border-radius:9px;background:linear-gradient(115deg,#ebd6ab,#c6a165);color:#19384c;padding:12px 20px;font-size:12px;font-weight:700;min-height:44px}.server-app button.primary:hover{background:linear-gradient(115deg,#f4e2c3,#d3b078)}.server-app button.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ddd4c4;border-radius:9px;background:#fff;color:#4a6071;padding:10px 16px;font-size:12px;min-height:40px}.server-app .full{width:100%}.server-app .icon-button{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 8px;border:1px solid #e1d9cb;border-radius:8px;background:white;color:#536b79;font-size:25px}.server-app .danger-button{padding:11px 18px;border:1px solid #dfbbb0;border-radius:9px;background:#fff7f4;color:#9a503e}.server-app #status{padding:12px 18px;border:1px solid #d3dfd2;background:#f2f7f1;border-radius:10px;margin-bottom:20px;font-size:12px;color:#496443}.server-app #status.error,.server-app #detailError{border:1px solid #d59d8a;background:#fff1ea;color:#99472f;padding:14px 18px;border-radius:10px}.server-app .workspace-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:3px 0 30px;padding:0 0 24px;border-bottom:1px solid #e1dace}.server-app .workspace-header h1{font-size:34px;margin:7px 0 12px;color:#16374d}.server-app .workspace-header h1 span{color:#b58a45}.server-app .workspace-header p{margin:0;color:#7e8c94;font-size:13px}.server-app .workspace-brand{color:#b19670;font-size:11px;letter-spacing:.15em;white-space:nowrap}.server-app .pos-hero{padding:27px 30px;margin-bottom:24px;border-radius:16px}.server-app .pos-hero h1{font-size:34px}.server-app .pos-layout{grid-template-columns:minmax(0,1.55fr) minmax(330px,.9fr);gap:24px}.server-app .pos-catalog{padding:24px;border-radius:15px;box-shadow:0 8px 26px #122e4106}.server-app .pos-ticket{top:20px;border-radius:15px;box-shadow:0 8px 26px #122e4106}.server-app .pos-section-top h2{font-size:24px}.server-app .pos-ticket-head h2{font-size:23px}.server-app .pos-search-row{margin:20px 0 15px}.server-app .pos-search-wrap input{outline:none;min-height:45px}.server-app .catalog-tabs{display:flex;gap:6px;border-bottom:1px solid #ede7dd;margin:0 0 18px;padding-bottom:14px}.server-app .catalog-tabs button{padding:8px 15px;border:1px solid transparent;border-radius:8px;background:#f7f6f2;color:#7b8b96;font-size:11px}.server-app .catalog-tabs button.active{background:#163a4f;color:#ecd7b1}.server-app .pos-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.server-app .pos-product{min-height:162px;border:1px solid #e8e1d5;border-radius:12px;background:linear-gradient(125deg,#fff,#fcfbf7);padding:17px;text-align:left;color:#15374b;display:flex;flex-direction:column;gap:10px}.server-app .pos-product strong{font-size:13px;line-height:1.4;font-weight:600}.server-app .pos-product:hover{border-color:#bc9c66;transform:translateY(-2px);box-shadow:0 8px 18px #1c354c0b}.server-app .pos-product-image{width:59px;height:59px;box-shadow:none;border:0}.server-app .pos-product-bottom b{font-size:21px;color:#927047}.server-app .pos-product-bottom small{font-size:10px}.server-app .pos-customer select{font-size:12px}.server-app .pos-lines{min-height:250px}.server-app .pos-empty{min-height:247px;color:#c0a16e}.server-app .pos-empty strong{font-size:21px}.server-app .pos-empty p{font-size:12px}.server-app .pos-line-image{width:36px;height:36px;box-shadow:none;border:0}.server-app .pos-line-price{font:18px Georgia,serif}.server-app .pos-line-qty button{font-size:13px}.server-app .pos-ticket-bottom{padding:20px 24px}.server-app .pos-total strong,.server-app .total{font:34px Georgia,serif;color:#16374b;margin:0}.server-app .pos-total{margin:15px 0 24px}.server-app .pos-actions{display:flex;gap:10px}.server-app .pos-actions .primary{flex:1}.server-app .pos-ticket-foot{display:block;font-size:10px;color:#8d969c;margin-top:16px;text-align:center}.server-app .cash-tools{margin-top:20px;border-top:1px solid #eee8dd;padding-top:14px}.server-app .cash-tools summary,.server-app .discount-editor summary{font-size:11px;color:#87949b;cursor:pointer}.server-app .cash-tools .row{margin-top:15px}.server-app .cash-tools button{font-size:10px}.server-app .section-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center}.server-app .search-field{display:flex;align-items:center;gap:10px;background:white;border:1px solid #e1dbd0;border-radius:10px;padding:0 13px;max-width:430px;flex:1;color:#ac8e61}.server-app .search-field input{border:0;background:transparent}.server-app table{width:100%;border-collapse:collapse;text-align:left}.server-app td,.server-app th{padding:17px 14px;border-bottom:1px solid #f0ebe2}.server-app th{color:#9b825c;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.server-app td{font-size:12px}.server-app tbody tr:last-child td{border:0}.server-app .table-wrap{padding:10px 18px;overflow:auto}.server-app .person-cell{display:flex;align-items:center;gap:13px}.server-app .staff-avatar{display:inline-grid;place-items:center;flex:none;width:35px;height:35px;border-radius:50%;background:#eee7da;color:#997744;font:17px Georgia,serif;border:1px solid #dfd0b7}.server-app .staff-avatar.large{width:65px;height:65px;font-size:30px}.server-app .tone-1{background:#e8eef0;border-color:#cfdcdf;color:#527389}.server-app .tone-2{background:#efe5e2;border-color:#e1d2cb;color:#957769}.server-app .tone-3{background:#e8ebe1;border-color:#d4ddc4;color:#718157}.server-app .status-chip{display:inline-block;border-radius:6px;background:#f1ebdf;color:#a1804b;padding:5px 10px;font-size:10px}.server-app .empty-state{display:grid;place-items:center;text-align:center;min-height:230px;padding:35px;color:#a99067}.server-app .empty-state h3{color:#17384e;font-size:25px;margin:14px 0 8px}.server-app .empty-state p{color:#82919a;max-width:400px;font-size:12px}.server-app .metrics,.server-app .customer-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:15px}.server-app .customer-metrics>div,.server-app .metric{background:#f7f4ed;padding:18px;border-radius:12px}.server-app .customer-metrics strong{display:block;font:27px Georgia,serif;color:#997847}.server-app .customer-metrics span{font-size:11px;color:#88949c}.server-app .customer-profile{display:flex;align-items:center;gap:18px;margin:20px 0}.server-app .customer-profile h3{margin:0 0 6px}.server-app .customer-profile p{font-size:11px;color:#87949b;margin:0}.server-app .customer-profile button{margin-left:auto}.server-app .timeline-entry{padding:16px 20px;margin:10px 0;border-left:2px solid #c7a571;background:#fbf8f2}.server-app .timeline-entry strong{display:block;margin-top:7px}.server-app .timeline-entry small{color:#8d9a9f}.server-app .timeline-entry p{white-space:pre-wrap}.server-app dialog{width:min(690px,calc(100vw - 32px));max-height:90vh;overflow:auto;padding:30px;border:1px solid #d5c39f;border-radius:18px;color:#17394c;box-shadow:0 25px 100px #081d2d40}.server-app dialog::backdrop{background:#0a2338a1;backdrop-filter:blur(4px)}.server-app #receiptDialog{width:min(850px,calc(100vw - 32px))}.server-app #receiptFrame{display:block;width:100%;height:64vh;margin-top:18px;border:0}.server-app .dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:start;border-bottom:1px solid #e8e0d3;padding-bottom:20px;margin-bottom:20px}.server-app .dialog-head h2{font-size:30px;margin:8px 0 0}.server-app .dialog-head button{font-family:Arial,sans-serif}.server-app .dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #eee6da}.server-app .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.server-app .span-2{grid-column:1/-1}.server-app .check-field{display:flex;gap:10px;align-items:center;font-size:12px;margin:12px 0}.server-app input[type=checkbox]{width:16px;height:16px;min-height:0;padding:0}.server-app .methods{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:24px 0}.server-app .method{padding:16px 8px;border:1px solid #e1d7c5;border-radius:10px;background:#fbf9f4;color:#7a6950;font-size:11px}.server-app .method.active{background:#163b50;color:#e7d1a8;border-color:#204b60}.server-app .hero-total{font:48px Georgia,serif;color:#173a50;margin:22px 0}.server-app #paymentContent>h2{font-size:30px;margin:9px 0}.server-app #paymentContent>p{font-size:12px;color:#788b96}.server-app #paymentContent form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.server-app #paymentContent form>button,.server-app #paymentContent form>p{grid-column:1/-1}.server-app #paymentError{color:#9d513d;padding:12px;background:#fff2ea;border:1px solid #e4b5a3;border-radius:8px}.server-app .calendar-panel{border:1px solid #dfd8cd;background:white;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #142e4205}.server-app .calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #eee7db;flex-wrap:wrap}.server-app .calendar-toolbar input[type=date]{width:155px;min-height:38px;font-size:11px;padding:7px 10px}.server-app .calendar-toolbar button{font-size:11px}.server-app .calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px}.server-app .calendar-heading h2{font-size:24px;margin:5px 0}.server-app .calendar-key{font-size:10px;color:#8d7855;display:flex;align-items:center;gap:6px}.server-app .calendar-key i{width:10px;height:10px;border-radius:3px;background:#efe0bd}.server-app .compact{margin:0;font-size:10px}.server-app .compact select{padding:5px;min-height:30px;font-size:10px}.server-app .segmented{display:flex;background:#f5f2eb;border:1px solid #e5ded0;border-radius:8px;padding:3px}.server-app .segmented button{border:0;background:transparent;border-radius:5px;padding:8px 13px;color:#86939b}.server-app .segmented button.active{background:#17394d;color:#f1ddbb}.server-app .calendar-day-section>h3{padding:0 22px}.server-app .calendar-scroll{overflow-x:auto;border-top:1px solid #e9e1d4}.server-app .calendar-grid{display:grid;grid-template-columns:65px repeat(var(--columns),minmax(175px,1fr));min-width:calc(65px + var(--columns)*175px)}.server-app .calendar-time-head{display:grid;place-items:center;background:#faf8f3;color:#b29b72;border-bottom:1px solid #e7dfd2}.server-app .calendar-staff-head{display:grid;justify-items:center;gap:5px;padding:16px 10px;border-left:1px solid #ece5d9;border-bottom:1px solid #e7dfd2;background:#fcfbf8}.server-app .calendar-staff-head strong{font-size:12px;font-weight:600}.server-app .calendar-staff-head small{font-size:10px;color:#8d999f}.server-app .calendar-time,.server-app .calendar-lane{position:relative;background:#fdfcf9}.server-app .calendar-time{background:#faf8f3}.server-app .calendar-time>span{position:absolute;left:13px;color:#9a9c98;font-size:10px;transform:translateY(-7px)}.server-app .calendar-lane{border-left:1px solid #e8e0d3}.server-app .calendar-slot{position:absolute;left:0;width:100%;border:0;border-bottom:1px solid #ede8df;background:#f7f5f0;border-radius:0;min-height:0;padding:0}.server-app .calendar-slot.available{background:#fcf8eb}.server-app .calendar-slot.available:hover{background:#eddfbc;box-shadow:inset 0 0 0 1px #c8a564}.server-app .calendar-appointment{position:absolute;left:5px;right:5px;display:flex;flex-direction:column;align-items:start;gap:2px;text-align:left;overflow:hidden;background:#e9eff1;border:1px solid #c8d7db;border-left:3px solid #738f9b;border-radius:6px;padding:6px 9px;color:#294d60;min-height:0;z-index:2}.server-app .calendar-appointment span{font-size:9px;color:#6c8a95}.server-app .calendar-appointment strong{font-size:11px;line-height:1.3}.server-app .calendar-appointment small{font-size:9px;color:#758a92;white-space:nowrap}.server-app .calendar-appointment.state-in_service{background:#f1e5c8;border-color:#dbbc77;border-left-color:#b28b45}.server-app .calendar-appointment.state-completed{background:#e9eee5;border-color:#cad6be;border-left-color:#8aa374}.server-app .calendar-absence{position:absolute;left:3px;right:3px;padding:8px;color:#8b8b84;font-size:10px;background:repeating-linear-gradient(135deg,#eeece7,#eeece7 5px,#e5e3df 5px,#e5e3df 10px);z-index:1;pointer-events:none;overflow:hidden}.server-app .opening-week>div{display:grid;grid-template-columns:100px 110px 1fr 1fr;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #eee8de;font-size:11px}.server-app .opening-week label{display:flex;gap:6px;align-items:center}.server-app .opening-week input[type=time]{min-height:35px;padding:6px}.server-app .appointment-summary{padding:10px 0 15px}.server-app .appointment-summary p{font-size:12px;color:#7b8d95}.server-app .note-block{padding:14px;background:#fbf8f0;border-radius:9px;white-space:pre-wrap}.server-app .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Separate business code and employee PIN, in the visual language of the original start screen. */
.server-app.entry-mode{background:#0b2639}.server-app.entry-mode .app-shell{display:block}.server-app.entry-mode main{max-width:none;margin:0;padding:0}.server-app.entry-mode #status{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:30;width:min(580px,90vw);box-shadow:0 12px 35px #0003}.server-app.entry-mode header{border-bottom:1px solid #35515f;background:#0b2639}.server-app.entry-mode .header-inner{max-width:1280px;margin:auto}.server-app .entry-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(400px,.85fr);gap:8%;align-items:center;min-height:calc(100vh - 76px);max-width:1260px;margin:0 auto;padding:55px 35px 70px}.server-app .entry-story{position:relative;color:#f2ebdb;padding:10px 10px 10px 0}.server-app .entry-story h1{font-size:clamp(38px,4.2vw,60px);line-height:1.13;margin:20px 0 25px;letter-spacing:-.025em}.server-app .entry-story h1 em{color:#d8bd83;font-weight:400}.server-app .entry-story p{font-size:15px;line-height:1.85;color:#9fb6c1}.server-app .entry-story .eyebrow{color:#cfb581}.server-app .entry-feather{position:absolute;width:240px;height:390px;right:-40px;top:-65px;opacity:.07;pointer-events:none;transform:rotate(10deg)}.server-app .entry-features{display:flex;gap:20px;flex-wrap:wrap;margin-top:40px;font-size:11px;color:#b8c9d1}.server-app .entry-features span{display:flex;align-items:center;gap:9px}.server-app .entry-features svg{color:#bda779}.server-app .login-panel{width:100%;max-width:490px;margin:0;background:#fcfbf7;border:1px solid #d8c6a4;border-radius:18px;padding:35px 33px;box-shadow:0 20px 70px #0002;color:#15374d}.server-app .login-panel h2{color:#15374d;font-size:33px;margin:12px 0 9px}.server-app .login-panel>.muted{font-size:12px;margin-bottom:24px}.server-app .login-profiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:26px}.server-app .login-profiles>button{border:1px solid #ded7c9;border-radius:10px;display:grid;justify-items:start;gap:8px;padding:17px;background:white;text-align:left;color:#76909a}.server-app .login-profiles strong{font-size:12px;color:#274c5d}.server-app .login-profiles small{font-size:10px;color:#94a0a4}.server-app .login-profiles>button.active{background:#173a50;border-color:#1c465d;box-shadow:0 5px 12px #14324715;color:#dfc493}.server-app .login-profiles>button.active strong{color:#f7f1e5}.server-app .login-profiles>button.active small{color:#b5c6cc}.server-app .login-panel label{color:#728590}.server-app .login-panel input[type=password]{font-size:23px;letter-spacing:.3em;height:56px;text-align:center;background:white;border-color:#d9cfbe}.server-app .login-panel .primary{margin-top:8px;font-size:12px;height:49px}.server-app .login-help{color:#8e9a9e;font-size:11px;text-align:center;margin:19px 0 0}.server-app .login-help strong{color:#987747;font-weight:500}.server-app .entry-foot{display:block;margin-top:24px;border-top:1px solid #e9e2d5;padding-top:18px;font-size:10px;color:#a0a7a8;line-height:1.6;text-align:center}.server-app .pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:17px 0}.server-app .pin-pad button{padding:8px;border:1px solid #e2dccc;background:#fff;border-radius:7px;color:#36576a;font:21px Georgia,serif}.server-app .pin-pad button:hover{background:#f1e5cc}
@media(min-width:1700px){.server-app main{padding:40px 55px}.server-app .pos-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.server-app .app-shell{grid-template-columns:190px minmax(0,1fr)}.server-app main{padding:26px 22px}.server-app #tabs{padding:25px 10px}.server-app #tabs button{font-size:11px;padding:11px 10px;gap:8px}.server-app .pos-layout{grid-template-columns:minmax(0,1.2fr) minmax(290px,1fr);gap:16px}.server-app .pos-catalog{padding:20px}.server-app .pos-product{padding:13px}.server-app .pos-product strong{font-size:11px}.server-app .pos-section-top h2{font-size:22px}.server-app .pos-ticket-head{padding:20px}.server-app .pos-customer{margin:0 20px 17px}.server-app .pos-lines{padding:4px 20px}.server-app .pos-ticket-bottom{padding:18px 20px}}
@media(max-width:900px){.server-app .app-shell{display:block}.server-app #tabs{min-height:0;padding:12px;border-right:0;border-bottom:1px solid #ded5c6;overflow-x:auto}.server-app #tabs .nav-inner{display:flex;flex-direction:row;width:max-content;gap:6px}.server-app .nav-title{display:none}.server-app #tabs button{width:auto;white-space:nowrap;padding:9px}.server-app main{padding:20px}.server-app .pos-layout{grid-template-columns:1fr}.server-app .pos-ticket{position:static}.server-app .pos-hero-meta{display:none}.server-app .workspace-brand{display:none}.server-app .entry-layout{grid-template-columns:1fr;justify-items:center;gap:25px;padding:35px 20px}.server-app .entry-story{width:min(490px,100%);padding:0}.server-app .entry-story h1{font-size:39px;margin:14px 0}.server-app .entry-story p,.server-app .entry-features{display:none}.server-app .entry-feather{right:0;top:-40px;width:150px;height:200px}.server-app header{padding:0 20px}.server-app .header-inner{min-height:66px}.server-app .server-brand small{display:none}.server-app header #identity{font-size:11px}.server-app header .badge{display:none}}
@media(max-width:560px){.server-app main{padding:16px 12px}.server-app .pos-catalog{padding:18px 15px}.server-app .pos-hero{padding:21px 23px}.server-app .pos-hero h1{font-size:29px}.server-app .pos-product strong{font-size:12px}.server-app .pos-product-bottom b{font-size:19px}.server-app .workspace-header h1{font-size:29px}.server-app .workspace-header p{font-size:12px}.server-app .section-toolbar{align-items:stretch;flex-direction:column}.server-app .login-panel{padding:27px 23px}.server-app .login-panel h2{font-size:29px}.server-app .entry-story h1{font-size:34px}.server-app .form-grid,.server-app #paymentContent form{grid-template-columns:1fr}.server-app .span-2{grid-column:auto}.server-app dialog{padding:23px 18px}.server-app .calendar-toolbar,.server-app .calendar-heading{padding:16px}.server-app .calendar-heading{align-items:start;flex-direction:column}.server-app .opening-week>div{grid-template-columns:1fr 1fr;gap:8px}.server-app .methods{grid-template-columns:repeat(2,1fr)}.server-app .calendar-heading h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.server-app *{transition:none!important;animation:none!important}}
.server-app .history-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.server-app .history-actions button{font-size:10px;padding:8px 11px;min-height:33px}.server-app .receipt-summary{padding:20px;background:#f8f4eb;border-radius:12px;margin:15px 0}.server-app .receipt-summary strong{display:block;font:32px Georgia,serif;color:#9b7846}.server-app .correction-line{display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #e9e0d1}.server-app .correction-line span{flex:1}.server-app .correction-line input{width:90px;min-height:35px;padding:7px}
/* Compact assortment rows: image, description and price form one readable line. */
body.server-app #products.pos-products{grid-template-columns:1fr;gap:0}
body.server-app #products .pos-product{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:17px;min-height:87px;padding:15px 6px;border:0;border-bottom:1px solid #eee7da;border-radius:0;background:transparent;box-shadow:none;font-family:Arial,Helvetica,sans-serif;width:100%}
body.server-app #products .pos-product:last-child{border-bottom:0}
body.server-app #products .pos-product:hover{background:#fbf7ed;transform:none;border-color:#dec9a7}
body.server-app #products .pos-product-image{width:54px;height:54px;margin:0;justify-self:start}
body.server-app #products .catalog-description strong{font:600 13px/1.4 Arial,Helvetica,sans-serif;display:block;color:#2c4b5b}
body.server-app #products .catalog-description small{font:11px/1.4 Arial,Helvetica,sans-serif;color:#a0a5a3;display:block;margin-top:6px}
body.server-app #products .catalog-price{display:flex;align-items:center;gap:12px;white-space:nowrap;color:#9a7847;font:22px Georgia,serif}
body.server-app #products .catalog-price small{display:grid;place-items:center;width:27px;height:27px;background:#f5ecdc;border-radius:50%;color:#af915c}
body.server-app .pos-hero{padding:22px 28px}
body.server-app .pos-search-wrap input{border:0!important;border-radius:0;background:transparent;outline:0!important}
body.server-app .pos-product-head{display:none}
body.server-app .pos-lines{min-height:280px}
body.server-app .pos-actions{display:flex!important;grid-template-columns:none}
@media(max-width:560px){body.server-app #products .pos-product{grid-template-columns:44px minmax(0,1fr) auto;gap:10px;min-height:78px}body.server-app #products .pos-product-image{width:44px;height:44px}body.server-app #products .catalog-description strong{font-size:12px}body.server-app #products .catalog-price{font-size:18px;gap:7px}body.server-app #products .catalog-price small{width:22px;height:22px}}
body.server-app .workspace-header{padding:24px 28px;border:1px solid #24495d;border-radius:16px;background:linear-gradient(115deg,#102d40,#244f63);box-shadow:none}
body.server-app .workspace-header h1{color:#f6efe0;margin:8px 0 11px;font-size:32px}
body.server-app .workspace-header p{color:#b6c8d1}
body.server-app .workspace-header .eyebrow{color:#cbb17f}
body.server-app .workspace-header .workspace-brand{color:#bba678}
body.server-app .login-panel .entry-foot{letter-spacing:0}
body.server-app:not(.entry-mode) #status{position:fixed;right:24px;bottom:24px;z-index:50;width:min(410px,calc(100vw - 32px));margin:0;box-shadow:0 10px 30px #18344a18}
body.server-app .pos-lines{min-height:175px;max-height:320px}
body.server-app .pos-empty{min-height:175px}
body.server-app .pos-ticket-bottom{padding-top:16px;padding-bottom:18px}
@media(min-width:901px){body.server-app .pos-ticket{max-height:calc(100vh - 112px);overflow:auto}body.server-app .pos-lines{max-height:27vh}}
/* Salon cards and treatment planning, customer update 3 */
body.server-app #products.pos-products{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:14px}
body.server-app #products .pos-product{display:flex;flex-direction:column;align-items:flex-start;min-height:185px;padding:20px;border:1px solid #e3dacb;border-radius:15px;background:linear-gradient(140deg,#fff,#faf7ef);box-shadow:0 5px 18px #102e4306;gap:12px;transition:transform .15s,border-color .15s}
body.server-app #products .pos-product:hover{border-color:#b99559;transform:translateY(-3px);box-shadow:0 10px 22px #102e4310}
body.server-app #products .pos-product-image{width:56px;height:56px;grid-row:auto}
body.server-app #products .pos-product-bottom{width:100%;margin-top:auto;display:flex;justify-content:space-between;align-items:end}
body.server-app #products .pos-product-bottom b{font:23px Georgia,serif;color:#9b793e}
body.server-app #products .pos-product strong{font-size:13px}
.salon-workspace{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px}.salon-sections{display:flex;flex-direction:column;gap:5px}.salon-sections button{border:0;background:transparent;text-align:left;padding:11px 13px;border-radius:8px;color:#637887}.salon-sections button.active{background:#16384d;color:#f4dfb5}.salon-records{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px}.salon-records .panel{margin:0}.salon-area-title{margin-top:0!important}.salon-area-title h2{font-size:32px}.salon-records p{white-space:pre-wrap;overflow-wrap:anywhere}.salon-records .row{margin-top:20px}.appointment-step{padding:18px 22px;border:1px solid #e4d6ba;background:#fcfaf5;border-radius:14px;margin:14px 0}.step-number{display:inline-grid;place-items:center;flex:none;width:29px;height:29px;border-radius:50%;background:#17394e;color:#e9d2a5;font-size:12px}.treatment-itinerary{background:#f8f4eb;border-radius:12px;padding:18px;margin:20px 0}.treatment-itinerary>div{display:flex;gap:12px;align-items:center;margin:12px 0}.treatment-itinerary small{display:block;color:#80909a}.holiday-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:14px 20px;background:#f6eddc;border:1px solid #d8c19a;border-radius:10px;margin:0 0 14px;color:#8d6a34}.holiday-notice span{font-size:12px}.slot-suggestions{display:flex;gap:10px;flex-wrap:wrap}.slot-suggestions button{display:flex;flex-direction:column}.server-app a.primary{display:inline-flex;padding:13px 20px;border-radius:9px;background:#e2c793;color:#18394e;text-decoration:none}.calendar-slot{border-right:1px solid #e8e0d2!important;border-bottom:1px solid #e8e0d2!important}
@media(max-width:850px){.salon-workspace{grid-template-columns:1fr}.salon-sections{flex-direction:row;overflow:auto;max-width:100%}.salon-sections button{white-space:nowrap}.appointment-step{padding:15px}.salon-records{grid-template-columns:1fr}}
.suggestion-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid #eee8dd}.suggestion-row small{display:block;color:#8a9aa2;font-size:11px;margin-top:3px}.salon-records h2{font-size:27px}

/* Rose paper appointment book */
.calendar-panel{position:relative;background:linear-gradient(115deg,#fff6f5,#fce9ed 48%,#fff7f8);border:1px solid #dba6ad;border-radius:18px 24px 24px 18px;box-shadow:0 5px 0 #edcdd2,0 9px 0 #f9e5e8,0 13px 0 #d7a4ac,0 22px 35px #70454b25;overflow:hidden;transform-origin:left center}
.calendar-panel:before{content:'';position:absolute;left:0;top:0;bottom:0;width:12px;background:linear-gradient(90deg,#bd7885,#f6d3d9,#dca6b0);z-index:2;pointer-events:none}
.calendar-toolbar,.calendar-heading,.calendar-team-picker{background:linear-gradient(110deg,#fff5f4,#f8e0e5);padding-left:24px}.calendar-team-picker{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:16px 24px;border-bottom:1px solid #e3b8bf}.calendar-team-picker .selected,.calendar-team-picker [aria-pressed=true]{background:#a95970;color:white;border-color:#a95970}.calendar-team-picker small{color:#815664}.calendar-staff-head{background:#fff0f2}.calendar-lane{background:linear-gradient(90deg,#fff8f7,#fbe7ec)}.calendar-slot{border-color:#e7c7ce}.calendar-slot.available{background:#f4dce1}.calendar-slot.available:hover{background:#eebfc9}.calendar-time{background:#fae8eb}.holiday-notice{background:#f5dce2;border-color:#dca3b2;color:#814256;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.holiday-notice .secondary{margin-left:auto}.calendar-scroll{perspective:1200px}.turn-forward{animation:bookForward .45s ease}.turn-back{animation:bookBack .45s ease}@keyframes bookForward{0%{transform:perspective(1600px) rotateY(-7deg);opacity:.65}100%{transform:perspective(1600px) rotateY(0);opacity:1}}@keyframes bookBack{0%{transform:perspective(1600px) rotateY(7deg);opacity:.65}100%{transform:perspective(1600px) rotateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.turn-forward,.turn-back{animation:none}}

/* Neutral controls; rose holiday banner only in the calendar header. */
.calendar-toolbar,.calendar-heading,.calendar-team-picker{background:#fffdf9}.calendar-staff-head{background:#fffdf9}.calendar-team-picker .selected,.calendar-team-picker [aria-pressed=true]{background:#17384a;color:#fff;border-color:#17384a}.calendar-team-picker small{color:#68798a}

/* Original two-page appointment book, connected to server data. */
.calendar-panel{background:#fffdf9;border-color:#dbc6a8;box-shadow:0 5px 0 #dac5a2,0 9px 0 #f6ead7,0 20px 32px #17384a25;overflow:visible}.calendar-panel:before{display:none}.calendar-lane{background:#fffaf2}.calendar-slot.available{background:#f8ebce}.calendar-time{background:#fffaf2}.hera-book-cover{position:relative;padding:24px 54px 30px;background:repeating-linear-gradient(90deg,#14354e 0,#14354e 8px,#103046 9px,#14354e 17px);border-radius:0 0 18px 18px;perspective:1400px}.hera-book-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #c8b797;border-radius:9px;background:#fffaf0;box-shadow:0 6px 0 #d5c2a0,0 15px 22px #061d2b55;overflow:hidden}.hera-book-page{min-width:0;display:flex;flex-direction:column;padding:24px 22px 16px;background:repeating-linear-gradient(#fffaf0 0,#fffaf0 37px,#ede5d6 38px,#fffaf0 39px)}.hera-book-page:first-child{border-right:1px solid #cdbd9f;box-shadow:inset -12px 0 20px #735e4120}.hera-book-page:last-child{box-shadow:inset 12px 0 20px #735e4120}.hera-book-page-head{padding-bottom:15px;border-bottom:2px solid #d2b382;margin-bottom:12px;display:grid;gap:7px}.hera-book-page-head h3{font:400 1.5rem Georgia,serif;color:#19374b;margin:0}.hera-book-page-head small{color:#947856}.hera-book-page-head>.primary{justify-self:start;font-size:.75rem;padding:8px 12px}.hera-book-timeline{flex:1}.hera-book-hour{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;min-height:58px;border-bottom:1px dashed #d9c5a5;padding:7px 0}.hera-book-hour>time{font-size:.7rem;color:#987b55;padding-top:9px}.hera-book-hour>div{display:grid;gap:7px;align-content:start}.hera-book-appointment{display:flex;gap:9px;align-items:center;text-align:left;width:100%;border:1px solid #cad8d7;border-left:4px solid #b4915a;border-radius:8px;background:#f0f5f3;padding:9px;color:#17354a;cursor:pointer;box-shadow:0 2px 5px #16304412}.hera-book-appointment>span{display:grid;gap:4px;flex:1;min-width:0}.hera-book-appointment strong{font-size:.82rem}.hera-book-appointment small{font-size:.7rem;color:#537182}.hera-book-appointment time{font-size:.73rem;font-weight:700;color:#8b6236}.hera-book-appointment em{font-style:normal;font-size:.65rem;font-weight:700;color:#966922}.hera-book-gap{display:grid;gap:5px;text-align:left;background:#f8e8c5;border:1px solid #cda45f;border-left:4px solid #b58531;border-radius:8px;padding:10px;color:#825a23;cursor:pointer}.hera-book-gap strong{font-size:.74rem}.hera-book-gap small{font-size:.68rem}.hera-book-gap:hover{background:#f1d79e}.hera-book-block{background:#e8e7e5;padding:8px;color:#777;font-size:.75rem}.hera-book-page footer{padding-top:16px;text-align:center;color:#b3925e;font:.7rem Georgia,serif;letter-spacing:.16em}.hera-book-edge{position:absolute;top:45%;width:36px;height:96px;display:grid;place-content:center;gap:8px;background:#123b52;color:#f1d49e;border:1px solid #c7a261;border-radius:18px;font-size:1.8rem;cursor:pointer}.hera-book-edge small{font-size:.6rem}.hera-book-edge.previous{left:9px}.hera-book-edge.next{right:9px}.hera-book-page.is-holiday{background:linear-gradient(180deg,#ffd5d2,#ffe8e4 40%,#fff2ee);box-shadow:inset 0 0 0 2px #ce706450}.hera-book-page.is-holiday .hera-book-page-head{border-color:#d87b71}.hera-book-page.is-holiday .hera-book-page-head h3{color:#872e29}.hera-book-holiday{display:grid;gap:8px;border:1px solid #c35e55;border-left:5px solid #a93931;background:#ffded9;color:#862c26;border-radius:10px;padding:12px}.hera-book-holiday>span{font-size:.72rem;font-weight:800;letter-spacing:.05em}.hera-book-holiday .secondary{justify-self:start;background:#fff2ed;color:#8c342e}.calendar-day-section:has(.holiday-notice) .calendar-lane,.calendar-day-section:has(.holiday-notice) .calendar-staff-head,.calendar-day-section:has(.holiday-notice) .calendar-time{background:#ffe2df}.holiday-notice{background:#ffd5d0;border:2px solid #ce7064;color:#872e29}.hera-book-appointment:hover{box-shadow:0 6px 12px #16304425}.hera-book-page.is-holiday .hera-book-gap{background:#f8e8c5}@media(max-width:760px){.hera-book-cover{padding:55px 12px 22px}.hera-book-spread{grid-template-columns:1fr}.hera-book-page:first-child{border-right:0;border-bottom:8px solid #c0a67d}.hera-book-edge{top:8px;height:35px;width:45px;border-radius:8px;display:block}.hera-book-edge small{display:none}.hera-book-edge.previous{left:12px}.hera-book-edge.next{right:12px}.hera-book-page{padding:19px 13px}.hera-book-appointment>small{max-width:65px}.hera-book-page-head h3{font-size:1.25rem}}

.server-app .hera-book-page-head{position:static;z-index:auto;padding:0 0 15px;background:transparent;border-bottom:2px solid #d2b382;color:#19374b}.server-app .hera-book-page-head h3{margin:0;font-size:1.5rem}.server-app .hera-book-page-head small{color:#947856}.server-app .hera-book-page.is-holiday .hera-book-page-head{background:#ffe1dc;border-color:#ce7064;padding:12px;border-radius:8px}.server-app .hera-book-page-head button.secondary{color:#8c342e;border-color:#c35e55;background:#fff2ed}

#paymentDialog{width:min(94vw,760px);max-width:760px;border:1px solid #c7a367;border-radius:24px;box-shadow:0 28px 90px #09283e60}#paymentContent{background:linear-gradient(140deg,#fffdf9,#faf3e5);padding:30px}.payment-draft-status{padding:10px 15px;background:#eef3f2;border-radius:10px;color:#375c65;font-size:13px}.cash-note-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.cash-note{position:relative;text-align:left;border:1px solid #c8b291;border-radius:9px;padding:10px 12px;background:linear-gradient(130deg,#f9ead1,#efd8af);box-shadow:0 3px 0 #bfa77c;min-height:72px}.cash-note small{font-size:8px;letter-spacing:.18em}.cash-note strong{display:block;font:700 25px Georgia,serif;color:#17384a}.cash-note span{position:absolute;right:10px;bottom:10px;color:#98753d}.cash-note.note-5{background:#e5e8e2}.cash-note.note-10{background:#f0d4cc}.cash-note.note-20{background:#ccdfed}.cash-note.note-50{background:#f2dab5}.cash-note.note-100{background:#d6e6c2}.cash-note.note-200{background:#eee3a5}.cash-note.note-500{background:#e1d2e9}.cash-note:hover{transform:translateY(-2px)}.cash-coins{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.cash-coins button{border:1px solid #cfb78d;border-radius:24px;padding:8px;background:#fbefcf;color:#70512c}.payment-extra{padding:14px;border:1px solid #e0d4bd;border-radius:12px;margin:14px 0}.payment-extra summary{cursor:pointer;color:#17384a;font-weight:600}.payment-provider-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.payment-provider-options button{padding:16px;border:1px solid #d5dce0;border-radius:10px;background:#f3f5f6;color:#17384a}.payment-provider-options small{display:block;font-size:10px;margin-top:5px}.payment-extra p{font-size:12px;color:#6e7c83}#change{padding:15px;background:#17384a;color:#fff;border-radius:12px;font-size:20px}#payment .field{margin-top:12px}@media(max-width:540px){#paymentContent{padding:20px}.cash-note-grid{grid-template-columns:repeat(3,1fr)}.payment-provider-options{grid-template-columns:1fr}}
#payment .cash-note-grid,#payment .cash-coins,#payment>.row,#payment #change,#payment>.full{grid-column:1/-1}.cash-note strong{white-space:nowrap}.cash-coins button{width:58px;height:58px;flex:none;display:grid;place-items:center;padding:0;border-radius:50%;font-size:11px;box-shadow:inset 0 0 0 3px #f9e3a9,0 2px 3px #a6854920}.cash-note{min-height:82px}.cash-note-grid{gap:12px}#paymentContent h2{font-family:Georgia,serif}@media(max-width:540px){.cash-coins button{width:46px;height:46px}.cash-note strong{font-size:22px}}

.cash-pin-dialog{width:min(420px,calc(100vw - 32px));padding:28px;border:1px solid #e0d8c7;border-radius:22px;background:#fffdf8;box-shadow:0 24px 80px #172b3f40}.cash-pin-dialog::backdrop{background:#172b3f88;backdrop-filter:blur(5px)}.cash-pin-dialog .full{margin-top:12px}.cash-pin-dialog [role=alert]{color:#8f3028}.cash-pin-dialog .pin-pad{margin-top:16px}

.cash-pin-dialog{border:1px solid #c6ad73;background:linear-gradient(155deg,#fffdf7,#f4eee1);box-shadow:0 28px 100px #112a4555,inset 0 0 0 6px #ffffff80}.cash-pin-seal,.smart-link-seal{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 20px;border-radius:50%;background:linear-gradient(135deg,#17334d,#304f69);color:#e7cc8c;border:2px solid #ccb27b;box-shadow:0 8px 20px #17334d25}.cash-pin-dialog h2{text-align:center;font-family:Georgia,serif;font-size:30px}.cash-pin-dialog .eyebrow{display:block;text-align:center}.cash-pin-dialog .pin-pad button{border:1px solid #e0d3b8;background:#fffdf8;box-shadow:0 3px 0 #e4dac7}.smart-link-dialog{width:min(680px,calc(100vw - 32px));padding:32px;border:1px solid #ccb27b;border-radius:24px;background:linear-gradient(145deg,#fffdf7,#f5efdf);box-shadow:0 24px 90px #17334d50}.smart-link-dialog::backdrop{background:#17334d80;backdrop-filter:blur(6px)}.smart-link-heading>h2{font-family:Georgia,serif;font-size:30px;color:#17334d}.smart-link-timeline{display:grid;gap:12px;margin:24px 0}.smart-link-timeline article{display:flex;gap:16px;padding:16px;border-radius:14px;border:1px solid #e3d5b4;background:#fffdf8}.smart-link-timeline article>span{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#17334d;color:#e6c988;font-weight:700}.smart-link-timeline small{display:block;margin-top:6px;color:#67727c}.calendar-sequence-badge{display:block;margin-top:4px;border-radius:7px;background:#f0e4c7;color:#17334d;padding:3px 5px;font-size:10px;font-style:normal;font-weight:700}.calendar-appointment:has(.calendar-sequence-badge){border-left:4px solid #b89a55;overflow:auto}@media(max-width:600px){.smart-link-dialog{padding:22px}.smart-link-dialog .row{display:grid}.smart-link-dialog .row button{width:100%}}

.cash-window header{background:linear-gradient(120deg,#122d45,#2b4c67);border-bottom:3px solid #c4a76b}.cash-window header .brand-wordmark,.cash-window header #identity{color:#fffaf0}.cash-window header .brand-wordmark em,.cash-window header .server-brand small{color:#dec58b}.cash-window .entry-layout{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}.cash-window .entry-story{display:none}.cash-window .login-panel{background:linear-gradient(145deg,#fffdf7,#f4ebd9);border:1px solid #d4bc84;box-shadow:0 20px 65px #17334d20}

.calendar-appointment:has(.calendar-sequence-badge){padding-top:22px}.calendar-appointment .calendar-sequence-badge{position:absolute;top:2px;left:3px;right:3px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.payment-success-dialog{min-width:0;max-width:430px;width:min(430px,calc(100vw - 32px));padding:38px 30px;text-align:center;border:1px solid #d6c69f;border-radius:26px;background:linear-gradient(145deg,#fffef9,#f5f0e6);box-shadow:0 24px 90px #17334d45;animation:payment-success-in .3s ease-out}.payment-success-dialog::backdrop{background:#17334d66;backdrop-filter:blur(5px)}.payment-success-mark{width:104px;height:104px;margin:0 auto 24px;border-radius:50%;background:#e4f2e8;box-shadow:0 0 0 8px #eff8f0,0 10px 25px #22694118}.payment-success-mark svg{width:100%;height:100%;fill:none;stroke:#338254;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.payment-success-mark path{stroke-width:4;stroke-dasharray:60;stroke-dashoffset:60;animation:payment-success-check .6s .15s ease forwards}.payment-success-dialog h2{font-family:Georgia,serif;font-size:38px;color:#17334d;margin:12px 0}.payment-success-total{font-size:26px;color:#2c7049;font-weight:700}.payment-success-dialog small{color:#7c868b;font-size:11px}@keyframes payment-success-check{to{stroke-dashoffset:0}}@keyframes payment-success-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.payment-success-dialog{animation:none}.payment-success-mark path{animation:none;stroke-dashoffset:0}}

.closing-hero{padding:26px;border-radius:20px;background:linear-gradient(125deg,#17334d,#2c506c);color:#fff9ee;margin-bottom:22px}.closing-hero h2{color:inherit}.closing-hero .eyebrow{color:#dec18a}.closing-stat{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:18px 0}.closing-stat strong{font-size:30px}.daily-report-success{display:flex;align-items:center;gap:22px;border:1px solid #d5e7d8;border-radius:18px;padding:24px;background:#f0f8ef;margin:24px 0}.daily-report-success h2{margin:8px 0}.closing-check{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:#deefdf;color:#2e7f50;font-size:38px;flex:none}.closing-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px 0}.day-print-options{display:flex;gap:12px;margin:18px 0}#dailyReportFrame{width:100%;height:65vh;border:1px solid #e1dacd;margin-top:20px;background:#fff}.closing-confirm h2{font-family:Georgia,serif}@media(max-width:600px){.closing-stat{align-items:flex-start;flex-direction:column;gap:8px}.closing-summary{grid-template-columns:1fr}.day-print-options{flex-direction:column}.daily-report-success{align-items:flex-start;padding:18px;gap:12px}}

.closing-check svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}

.count-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.count-options button{padding:20px;border-radius:14px;border:1px solid #d7c6a3;background:linear-gradient(135deg,#fffdf7,#f4eddc);color:#17334d;font-weight:700}.count-state{padding:14px 18px;border-radius:12px;background:#f3f1eb;color:#69737b}.count-state.is-balanced{background:#eaf5ea;color:#2d7249}.count-state.has-difference{background:#fcf0d8;color:#88591e}#countEntry{margin:18px 0}#homeDailyClose{white-space:nowrap}@media(max-width:600px){.count-options{grid-template-columns:1fr}.pos-hero-meta{flex-wrap:wrap}}

.business-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;align-items:start}.business-layout h2{margin:18px 0}.business-preview{position:sticky;top:24px;padding:24px;background:#eae7df;border-radius:22px}.preview-paper{background:white;padding:26px;max-width:340px;margin:18px auto;box-shadow:0 12px 26px #132d4020;font:12px/1.6 Arial,sans-serif;overflow-wrap:anywhere;text-align:center}.preview-paper h2{font:22px Georgia,serif}.business-logo{max-width:150px;max-height:80px;display:block;margin:0 auto 16px}.preview-paper hr{border:0;border-top:1px dashed #bbb;margin:18px 0}.preview-bon-row{display:flex;justify-content:space-between;gap:12px;text-align:left}.overview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}#dailyReportFrame,#receiptFrame{background:#efede7;border:1px solid #e1dbce;border-radius:12px;min-height:520px;width:100%;margin:18px 0}#receiptDialog{width:min(760px,96vw);padding:28px;border:1px solid #d8c9af;border-radius:24px}@media(max-width:850px){.business-layout,.overview-cards{grid-template-columns:1fr}.business-preview{position:static}#receiptDialog{padding:18px}}

/* Unified cream / navy / gold finish; holiday book styling keeps its own rules. */
.server-app{background:#f6f4ee;color:#17384b}.server-app header{position:sticky;top:0;box-shadow:0 3px 18px #102e4310}.server-app .app-shell{align-items:start}.server-app #tabs{position:sticky;top:76px;height:calc(100dvh - 76px);min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d5c6a8 transparent;padding:26px 15px;background:linear-gradient(180deg,#fdfcf9,#f7f5ee)}.server-app #tabs .nav-title{margin:23px 14px 10px;padding:0;font-size:9px;font-weight:700;letter-spacing:.19em}.server-app #tabs .nav-title:first-child{margin-top:0}.server-app #tabs button{padding:11px 13px;border-radius:12px;font-size:12px;transition:background .16s,box-shadow .16s}.server-app #tabs button.active{background:linear-gradient(120deg,#112f43,#21485b);box-shadow:0 5px 14px #16384d18}.server-app main{padding-top:28px}.server-app .panel{border-color:#e6dfd1;border-radius:22px;box-shadow:0 8px 24px #17384b05}.server-app .panel h2{font-size:29px}.server-app .field{gap:8px;font-size:12px;color:#536979}.server-app .field input,.server-app .field textarea,.server-app .field select{border:1px solid #ded8cd;border-radius:12px;background:#fdfcf9;padding:13px 14px;color:#17384b;transition:border-color .16s,box-shadow .16s}.server-app .field input:focus,.server-app .field textarea:focus,.server-app .field select:focus{outline:none;border-color:#b8995d;box-shadow:0 0 0 3px #b8995d17;background:white}.server-app button.primary{border:1px solid #ba995d;background:linear-gradient(115deg,#ead7af,#c6a46a);border-radius:12px;color:#16384d;font-weight:650;box-shadow:0 3px 8px #ae8e5212}.server-app button.primary:hover{box-shadow:0 6px 14px #ae8e5223}.server-app button.secondary{border-color:#dfd3bd;border-radius:12px;background:#fffcf6;color:#335568}.server-app .business-layout{gap:28px}.server-app #businessProfileForm{padding:32px;margin-top:0}.server-app #businessProfileForm h2{margin:10px 0 23px}.server-app .business-section-divider{height:1px;background:linear-gradient(90deg,#d9bf8e,#eee7da,transparent);margin:30px 0 26px}.server-app .business-preview{border:1px solid #e4dbc9;background:linear-gradient(145deg,#eee9dd,#f5f1e7);border-radius:24px;padding:27px}.server-app .preview-paper{border-radius:3px;box-shadow:0 15px 30px #263e5012;padding:28px;margin:22px auto}.server-app .logo-upload-hint{display:block;color:#9a7846;font-size:11px;font-weight:400;margin:5px 0}.server-app #businessLogoFile{background:#f5f0e4;border:1px dashed #c8ad79}.server-app .closing-hero,.server-app .daily-report-success{border-radius:24px}.server-app .count-options button{min-height:56px}.server-app .overview-cards .panel{margin:0;padding:30px}.server-app dialog{border-radius:26px;border:1px solid #dfcdaa;box-shadow:0 25px 80px #102e4330}.server-app dialog::backdrop{background:#0b253c75;backdrop-filter:blur(5px)}.server-app .salon-area-title{border-top:3px solid #c9aa72}.server-app .salon-records .panel{padding:27px}.server-app .salon-sections button{border-radius:12px;padding:13px 15px}.server-app .salon-sections button.active{background:linear-gradient(115deg,#15364a,#285265)}
@media(max-width:900px){.server-app header{position:relative}.server-app #tabs{position:relative;top:auto;height:auto;min-height:0;overflow-x:auto;overflow-y:hidden;padding:10px 12px}.server-app #tabs .nav-title{display:none}.server-app #tabs button{width:auto;white-space:nowrap;padding:10px 12px}.server-app #businessProfileForm{padding:23px}.server-app .business-preview{padding:22px}.server-app main{padding-top:20px}.server-app .overview-cards .panel{padding:24px}}
@media(max-width:560px){.server-app dialog{padding:23px 18px}.server-app .panel h2{font-size:25px}.server-app .business-layout{gap:20px}.server-app #businessProfileForm{padding:21px}.server-app .panel{border-radius:18px}.server-app .preview-paper{padding:23px}.server-app .count-options button{min-height:50px}}
/* Touch checkout: additive cash shortcuts and an explicit amount keypad. */
#payment[data-method="cash"] .cash-choice-panel{grid-column:1;grid-row:2;margin-top:16px}#payment[data-method="cash"] .touch-payment-pad{grid-column:2;grid-row:2;margin-top:16px}.cash-choice-panel{padding:18px;border:1px solid #e2d7c4;border-radius:18px;background:#fffcf6;min-width:0}.cash-choice-help{font-size:11px;color:#7a8790;margin:6px 0 16px}.cash-choice-panel .cash-note-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 15px}.cash-choice-panel .cash-note{min-height:82px;padding:12px 9px 22px;border:1px solid #d9c9ad;border-radius:12px;box-shadow:0 3px 8px #ae8c4e12;background:linear-gradient(145deg,#fffdf8,#e9e3d6);overflow:hidden}.cash-choice-panel .cash-note:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#b79b68;opacity:.6}.cash-choice-panel .cash-note:after{content:"";position:absolute;inset:5px;border:1px solid #ffffffa8;border-radius:8px;pointer-events:none}.cash-choice-panel .cash-note small{font:700 7px Arial,sans-serif;letter-spacing:.16em;color:#78878d}.cash-choice-panel .cash-note strong{font:26px Georgia,serif;margin-top:5px;white-space:nowrap}.cash-choice-panel .cash-note strong em{font:15px Georgia,serif;margin-left:3px;color:#9d8354}.cash-choice-panel .cash-note span{font:9px Arial,sans-serif;right:9px;bottom:9px;color:#6d7d86}.cash-choice-panel .note-10{background:linear-gradient(140deg,#fffaf6,#f1e3dc)}.cash-choice-panel .note-20{background:linear-gradient(140deg,#fcfdff,#dfeaf0)}.cash-choice-panel .note-50{background:linear-gradient(140deg,#fffdf7,#eee0c3)}.cash-choice-panel .note-100{background:linear-gradient(140deg,#fcfdf9,#e1e9d5)}.cash-choice-panel .note-200{background:linear-gradient(140deg,#fffdf7,#eee6cb)}.cash-choice-panel .note-500{background:linear-gradient(140deg,#fdfbff,#e8e1ed)}.cash-choice-panel .cash-note:hover{transform:none;box-shadow:0 5px 12px #ae8c4e24}.cash-choice-panel .cash-note:active{background:#f0e2c8;box-shadow:inset 0 1px 5px #a1814c20}.cash-more{padding-top:4px;margin:12px 0}.cash-more summary{font-size:11px;color:#526978;cursor:pointer}.cash-more .rare-notes{margin-top:15px;grid-template-columns:repeat(2,minmax(0,1fr))}.cash-choice-panel .cash-coins{gap:6px}.cash-choice-panel .cash-coins button{width:42px;height:42px;font-size:9px}.cash-quick-actions{gap:8px!important}.cash-quick-actions button{font-size:10px!important;min-height:40px;padding:10px!important;flex:1}.touch-payment-pad{grid-column:1/-1;border:1px solid #dcd1be;border-radius:18px;background:#f6f1e7;min-width:0;margin-top:12px}.touch-payment-pad summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 17px;cursor:pointer;font-size:12px;font-weight:600;color:#23495f}.touch-payment-pad summary:after{content:"⌃";font-size:18px}.touch-payment-pad:not([open]) summary:after{content:"⌄"}.touch-payment-pad summary small{font-size:9px;font-weight:400;color:#7e8a90}.touch-pad-inner{padding:0 15px 15px}.touch-pad-targets{display:flex;gap:5px;margin:0 0 12px}.touch-pad-targets button{flex:1;font-size:10px;padding:8px 4px;border:1px solid #ddd2be;background:#fffdf9;border-radius:8px;color:#536c7d;min-height:38px}.touch-pad-targets button.active{background:#17394e;color:#f3dfb5;border-color:#17394e}.touch-pad-display{display:flex;flex-direction:column;padding:13px 16px;background:white;border:1px solid #dfd7c8;border-radius:11px;margin-bottom:12px;overflow-wrap:anywhere}.touch-pad-display span{font-size:9px;color:#8a7755;letter-spacing:.1em;text-transform:uppercase}.touch-pad-display strong{font:27px Georgia,serif;color:#14364a;margin-top:4px}.touch-pad-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.touch-pad-keys button{min-height:49px;border:1px solid #ded4c3;border-radius:10px;background:linear-gradient(150deg,#fff,#fbf8f1);box-shadow:0 2px 4px #17384b07;color:#193b50;font:22px Georgia,serif;touch-action:manipulation}.touch-pad-keys button:active{background:#e9d8b5;box-shadow:inset 0 2px 5px #8f713b20}.touch-pad-edit{display:flex;gap:7px;margin-top:8px}.touch-pad-edit button{flex:1;min-height:39px;border:1px solid #d6c7ac;background:#f3ead8;border-radius:9px;font-size:10px;color:#5e573f;touch-action:manipulation}#touchPadMessage{font-size:10px;color:#a15a38;margin:8px 0 0}#touchPadMessage:empty{display:none}.server-app .field input.touch-input-active{border-color:#b7985f;background:#fffdf8;box-shadow:0 0 0 2px #b7985f12}#paymentDialog{width:min(96vw,860px);max-width:860px}#paymentContent{padding:28px}#payment #change{position:sticky;bottom:0;background:linear-gradient(110deg,#13364b,#244d61);box-shadow:0 6px 18px #17384b12;z-index:1;font-size:19px}.touch-pad-targets button,.touch-pad-edit button,.cash-note,.cash-coins button{touch-action:manipulation}
@media(max-width:600px){#payment[data-method="cash"] .cash-choice-panel,#payment[data-method="cash"] .touch-payment-pad{grid-column:1/-1;grid-row:auto}.cash-choice-panel .cash-note-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.touch-pad-keys button{min-height:56px}.cash-choice-panel{padding:17px}.touch-pad-targets button{min-height:42px}#paymentContent{padding:20px}.touch-pad-display strong{font-size:30px}}
.touch-pad-display small{font-size:11px;color:#607786;margin-top:7px;line-height:1.4}
/* Keep the bottom keys unobstructed; the keypad display already shows live change. */
#payment #change{position:static;bottom:auto;z-index:auto;margin:10px 0}#paymentContent>.eyebrow{margin:0 0 8px}#paymentContent>h2{margin:5px 0 12px;font-size:30px}#paymentContent>.hero-total{font-size:44px;margin:16px 0 10px}#paymentContent>.payment-draft-status{margin:12px 0}#paymentContent .methods{margin:15px 0}#paymentContent>.payment-extra{margin:12px 0;padding:12px 15px}

.payment-window-controls{position:sticky;top:14px;height:0;display:flex;justify-content:flex-end;z-index:25;pointer-events:none}.server-app #paymentCloseTop{pointer-events:auto;width:44px;height:44px;min-height:44px;flex:none;margin-top:-14px;margin-right:-14px;display:grid;place-items:center;padding:0;border:1px solid #d8c5a1;border-radius:50%;background:#fffcf7;color:#214559;font:30px/1 Arial,sans-serif;box-shadow:0 4px 12px #17384b10;touch-action:manipulation}.server-app #paymentCloseTop:hover{background:#f0e5cf}.server-app #paymentContent>.eyebrow{padding-right:38px}.touch-pad-targets button{font-size:9px}

/* Restzahlungen: immutable values, calm document workspace. */
.debt-amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.debt-amounts article{background:#f4f1e9;border:1px solid #ddd4c3;border-radius:14px;padding:18px}.debt-amounts strong,.debt-card strong{display:block;font:26px Georgia,serif;color:#173549;margin-top:8px}.debt-amounts small,.debt-doc-row small{display:block;color:#64717a}.debt-amounts article:last-child{background:#faf3df;border-color:#d0b879}.debt-plan-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.debt-confirm{display:flex;align-items:start;gap:12px;margin:20px 0;line-height:1.5}.debt-confirm input{width:22px;height:22px;flex-shrink:0;accent-color:#9e7e43}.debt-doc-row,.debt-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.debt-doc-row{padding:14px 0;border-bottom:1px solid #e3ddcf}.debt-card>div:last-child{text-align:right}.debt-paid{padding:20px;background:#edf5ee;color:#245938;border-radius:14px}.debt-option{margin-top:20px;border-color:#b99e67!important;background:#faf5e8!important}#debtDocumentFrame{width:100%;height:65vh;border:0;border-radius:12px;margin-top:18px;background:#eeece7}@media(max-width:620px){.debt-amounts{gap:6px}.debt-amounts article{padding:12px 8px}.debt-amounts strong{font-size:20px}.debt-card{align-items:start}.debt-doc-row{flex-wrap:wrap}.debt-plan-row{grid-template-columns:1fr 1fr auto}}

.server-app #detailDialog .dialog-head{position:sticky;top:0;z-index:15;background:#fffcf7;padding:4px 0 14px}

/* Hierarchical catalogue and explicit searchable customer selection. */
.server-app .catalog-main-row{display:flex;align-items:start;gap:12px;border-bottom:1px solid #e7dfd0;margin-bottom:16px}.server-app .catalog-main-row .catalog-tabs{flex:1;flex-wrap:wrap;border:0;margin:0}.server-app .catalog-manage{border:1px solid #ddceb3;background:#fffcf6;padding:9px 12px;border-radius:10px;min-height:40px;color:#7b633a;font-size:11px;white-space:nowrap}.server-app .catalog-subtabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:13px;border-radius:14px;background:#f6f2e9}.server-app .catalog-subtabs button{border:1px solid #e0d5bf;padding:10px 15px;border-radius:11px;background:#fffcf7;color:#587081;font-size:12px;min-height:44px}.server-app .catalog-subtabs button.active{background:#e7d4ab;border-color:#bea06b;color:#16374b}.server-app .catalog-subtabs small{display:inline-block;margin-left:9px;color:#8d7445}.server-app .category-children{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.server-app .customer-picker{display:block;position:relative}.server-app .customer-picker>label{display:block;margin-bottom:8px}.server-app .customer-picker-input{display:flex;align-items:center;gap:6px}.server-app .customer-picker-input input{min-width:0;flex:1;font-size:13px}.server-app .customer-picker-input button{width:38px;min-height:42px;flex-shrink:0;background:#f7f3e9;border:1px solid #e5dac4;border-radius:10px;color:#806a40;font-size:20px}.server-app #cashCustomerHint{display:block;line-height:1.5;margin-top:8px;color:#7c887d;font-size:11px;font-weight:400}.server-app #customerSearchOptions{position:absolute;top:100%;left:18px;right:18px;max-height:330px;overflow-y:auto;z-index:12;border:1px solid #d9caa9;border-radius:13px;background:#fffdf8;box-shadow:0 12px 30px #17384b25;padding:6px}.server-app #customerSearchOptions button{display:block;width:100%;padding:12px;border:0;border-radius:8px;background:transparent;text-align:left;color:#17384b;min-height:46px}.server-app #customerSearchOptions button:hover,.server-app #customerSearchOptions button[aria-selected=true]{background:#f0e4ca}.server-app #customerSearchOptions small{display:block;color:#7a8791;font-size:10px;margin-top:4px}.server-app .pos-ticket{overflow:visible}@media(max-width:620px){.server-app .catalog-main-row{flex-wrap:wrap;gap:0}.server-app .catalog-manage{margin-bottom:12px}.server-app .catalog-subtabs{padding:10px;gap:6px}.server-app .catalog-subtabs button{padding:10px 12px}}
.server-app .catalog-main-row .catalog-tabs{min-width:0}.server-app .catalog-tabs button,.server-app .catalog-subtabs button,.server-app .category-children button{max-width:100%;overflow-wrap:anywhere;white-space:normal}.server-app #customerSearchInput::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}

.contact-preferences{border:1px solid #d9c7ab;border-radius:18px;margin:26px 0 0;padding:20px}.contact-preferences legend{font-weight:700;color:#17394b;padding:0 8px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.contact-choice{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #e3d8c6;border-radius:12px;background:#fffdf8;cursor:pointer}.contact-choice input{width:23px;height:23px;flex:0 0 23px;accent-color:#ac8548}.contact-choice small{display:block;color:#637680;margin-top:5px;font-size:12px}.contact-choice:has(input:checked){background:#f5ecd9;border-color:#bd9859}@media(max-width:640px){.contact-options{grid-template-columns:1fr}.contact-preferences{padding:14px}}

/* Personal till access: compact blue/gold dialog with large touch targets. */
.server-app dialog.cash-pin-dialog{width:min(440px,calc(100vw - 32px));max-width:440px;max-height:calc(100dvh - 32px);padding:0;border:1px solid #cdb787;border-radius:25px;background:#fcfaf5;box-shadow:0 32px 100px #04172255;color:#17394c;overflow:auto}
.server-app dialog.cash-pin-dialog::backdrop{background:#071e30a6;backdrop-filter:blur(9px)}
.cash-pin-dialog form{position:relative;margin:0}.cash-pin-dialog .cash-pin-heading{background:radial-gradient(ellipse at 50% 0%,#294d62,#102e42 75%);text-align:center;padding:27px 30px 24px;border-bottom:1px solid #b8995b;color:#f8f1e3}
.cash-pin-dialog .cash-pin-seal{width:48px;height:48px;border:1px solid #c8ac73;border-radius:15px;background:#ffffff08;box-shadow:none;display:grid;place-items:center;margin:0 auto 15px;color:#ddc58e}
.cash-pin-dialog .eyebrow{display:block;font-size:9px;letter-spacing:.24em;color:#dcc28b}.cash-pin-dialog h2{font-family:Georgia,serif;font-weight:400;font-size:30px;line-height:1.2;margin:10px 0 14px;color:#fff8ed}.cash-pin-person{display:inline-flex;align-items:center;gap:7px;border:1px solid #ffffff20;border-radius:20px;padding:5px 12px;color:#d8e0e3;font-size:12px}
.cash-pin-dialog .cash-pin-close{position:absolute;right:14px;top:13px;width:34px;height:34px;padding:0;border:1px solid #ffffff30;background:#ffffff09;color:#f4e8d0;border-radius:50%;font-family:Arial,sans-serif;font-size:24px;line-height:1;box-shadow:none;z-index:1}.cash-pin-dialog .cash-pin-close:hover{background:#ffffff20}
.cash-pin-body{padding:20px 30px 22px}.cash-pin-dialog .cash-pin-intro{text-align:center;font-size:12px;line-height:1.5;color:#71838d;margin:0 0 19px}.cash-pin-dialog .cash-pin-label{font-size:11px;letter-spacing:.025em;text-align:center;display:block;color:#657b86}.cash-pin-dialog input[name=pin]{display:block;box-sizing:border-box;width:100%;height:59px;margin:9px 0 19px;border:1px solid #d9c8a9;border-radius:13px;background:#fffefb;box-shadow:inset 0 2px 5px #17394c05;text-align:center;font-size:28px;letter-spacing:.5em;padding:10px 0 10px .5em;color:#17394c}.cash-pin-dialog input[name=pin]:focus{outline:2px solid #b9955350;outline-offset:3px;border-color:#b99553}
.cash-pin-dialog .pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}.cash-pin-dialog .pin-pad button{height:56px;min-height:48px;padding:0;border:1px solid #e7e1d5;border-radius:14px;background:#fffdf9;box-shadow:0 2px 4px #17394c05;color:#23475b;font-family:Arial,sans-serif;font-size:23px;font-weight:400;display:grid;place-items:center;transition:background .12s,transform .12s,border-color .12s}.cash-pin-dialog .pin-pad button:hover{background:#f0e5cf;border-color:#c5a772}.cash-pin-dialog .pin-pad button:active{transform:scale(.96);background:#e6d2a9}.cash-pin-dialog .pin-pad .pin-utility{font-size:11px;color:#7f8e94;background:#f3f0e9;box-shadow:none}.cash-pin-dialog [data-pin-digit="⌫"] svg{transform:rotate(180deg)}
.cash-pin-dialog #cashPinError{font-size:12px;line-height:1.5;text-align:center;color:#a23939;margin:0 0 14px}.cash-pin-dialog #cashPinError:empty{display:none}.cash-pin-dialog .primary.full{min-height:49px;border-radius:13px;border:1px solid #b28a45;background:linear-gradient(110deg,#e4cfa0,#c6a566);box-shadow:0 5px 13px #9b79341a;color:#17394c;font-size:13px;font-weight:700;margin:0}.cash-pin-dialog #cashPinCancel{display:block;width:100%;min-height:42px;margin:8px 0 0;border:0;background:transparent;box-shadow:none;color:#6d818b;font-size:12px}.cash-pin-footnote{display:block;text-align:center;color:#94a1a5;font-size:10px;line-height:1.5;margin-top:7px}
.cash-pin-dialog button:focus-visible{outline:2px solid #b99553;outline-offset:3px}@media(max-width:480px){.cash-pin-body{padding:18px 22px}.cash-pin-dialog .cash-pin-heading{padding:22px 22px 20px}.cash-pin-dialog h2{font-size:27px}.cash-pin-dialog .pin-pad{gap:8px}.cash-pin-dialog .pin-pad button{height:52px}}@media(prefers-reduced-motion:reduce){.cash-pin-dialog .pin-pad button{transition:none}}
@media(min-width:481px){.cash-pin-dialog .cash-pin-heading{padding:19px 28px 17px}.cash-pin-dialog .cash-pin-seal{width:40px;height:40px;margin-bottom:10px}.cash-pin-dialog h2{font-size:28px;margin:8px 0 10px}.cash-pin-body{padding:16px 28px 17px}.cash-pin-dialog .cash-pin-intro{margin-bottom:12px}.cash-pin-dialog input[name=pin]{height:50px;margin:8px 0 13px}.cash-pin-dialog .pin-pad{gap:8px;margin-bottom:12px}.cash-pin-dialog .pin-pad button{height:48px}.cash-pin-dialog .primary.full{min-height:46px}.cash-pin-dialog #cashPinCancel{min-height:34px;margin-top:5px}.cash-pin-footnote{margin-top:3px}}

.voucher-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.voucher-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.voucher-metrics article{background:#fffdf8;border:1px solid #e4d8c2;border-radius:18px;padding:20px}.voucher-metrics span,.voucher-metrics small{display:block;color:#758994;font-size:12px}.voucher-metrics strong{display:block;font:34px Georgia,serif;color:#17394e;margin:8px 0}.voucher-filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:22px}.voucher-table-sub{display:block;color:#7b8c93;font-size:11px;margin-top:6px}.voucher-issue-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:26px}.voucher-issue-grid aside{background:#f6f1e7;border:1px solid #d7c29b;border-radius:17px;align-self:start;overflow:hidden;position:sticky;top:0}.voucher-issue-grid input,.voucher-issue-grid select{width:100%}.voucher-issue-grid .field{margin:14px 0}.voucher-issue-grid .customer-picker{position:relative}.voucher-draft-art{display:block;width:100%;height:auto}.voucher-draft-card{padding:24px}.voucher-draft-card strong{display:block;font:40px Georgia,serif;color:#17394e;margin:16px 0}.voucher-draft-card small{font-size:11px;color:#87969b}.voucher-values{display:flex;gap:7px;flex-wrap:wrap}.voucher-values button{padding:9px 12px;border:1px solid #dcc9a5;background:#fffaf0;border-radius:9px;color:#6d5633}.voucher-motifs{border:1px solid #ddcfb5;border-radius:18px;padding:18px;margin:24px 0}.voucher-motifs legend{padding:0 8px;font-weight:700}.voucher-theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.voucher-theme-grid button{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#f6f0e6;color:#17394e;text-align:left}.voucher-theme-grid button.active{border-color:#b18c49;box-shadow:0 0 0 2px #d6be8c50}.voucher-theme-grid img{display:block;width:100%;aspect-ratio:1.6;object-fit:cover}.voucher-theme-grid span{display:block;padding:10px;font-size:11px}.voucher-detail-summary{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center;margin:20px 0}.voucher-detail-summary img{width:100%;border-radius:12px}.voucher-document-tools{display:flex;gap:8px;flex-wrap:wrap}.server-app #voucherDocumentFrame{display:block;width:100%;height:64vh;border:0;border-radius:14px;background:#efede7;margin-top:18px}.custom-voucher-row{display:flex;gap:12px;align-items:center;padding:10px 0}.custom-voucher-row img{width:90px;border-radius:8px}.voucher-issue-grid #customerSearchOptions{z-index:10}.voucher-issue-grid .customer-picker-input input{height:46px}.voucher-issue-grid textarea{width:100%}@media(max-width:780px){.voucher-metrics{grid-template-columns:1fr 1fr}.voucher-issue-grid{grid-template-columns:1fr}.voucher-issue-grid aside{position:static;order:-1}.voucher-draft-art{max-height:150px;object-fit:cover}.voucher-draft-card{padding:15px}.voucher-theme-grid{grid-template-columns:repeat(3,1fr)}.voucher-filters{grid-template-columns:1fr}.voucher-detail-summary{grid-template-columns:110px 1fr}}@media(max-width:420px){.voucher-theme-grid{grid-template-columns:1fr 1fr}.voucher-metrics article{padding:14px}.voucher-detail-summary{grid-template-columns:1fr}.voucher-detail-summary img{max-width:180px}}
.server-app #detailDialog:has(#voucherIssueForm),.server-app #detailDialog:has(#voucherDocumentFrame){width:min(940px,calc(100vw - 32px))}.server-app #detailDialog:has(#voucherIssueForm) .dialog-head,.server-app #detailDialog:has(#voucherDocumentFrame) .dialog-head{top:-30px;margin:-30px -30px 22px;padding:24px 30px 18px;border-bottom:1px solid #e2d4b9}.voucher-issue-grid .pos-customer>label{display:none}@media(max-width:560px){.server-app #detailDialog:has(#voucherIssueForm) .dialog-head,.server-app #detailDialog:has(#voucherDocumentFrame) .dialog-head{top:-23px;margin:-23px -18px 18px;padding:20px 18px 14px}.voucher-issue-grid aside{max-height:270px}}

.remainder-receipt{padding:20px;background:#f4f0e7;border:1px solid #dcc8a3;border-radius:17px;margin:24px 0}.remainder-receipt p{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:14px}.remainder-receipt span{overflow-wrap:anywhere}.remainder-open{border-top:1px solid #d2b987;padding-top:18px;font-size:19px!important}.remainder-methods{display:grid;grid-template-columns:1fr 1fr;gap:12px}.remainder-methods button{min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-size:16px;border-radius:16px}.remainder-methods #remainderLater{grid-column:1/-1;min-height:52px}.remainder-methods strong{font:27px Georgia,serif}.voucher-code-actions{display:flex;gap:12px;align-items:center;margin:14px 0}.voucher-code-actions small{color:#758790;font-size:11px}.voucher-code-pad{padding:16px;border:1px solid #dccbad;border-radius:16px;margin:14px 0;background:#f8f3e9}.voucher-code-modes{display:flex;gap:8px;margin:13px 0}.voucher-code-modes button{flex:1;min-height:42px;border:1px solid #d6c4a5;background:#fffdf8;border-radius:9px;color:#17394e}.voucher-code-modes button.active{background:#17394e;color:#f3e4c7}.voucher-letter-keys{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.voucher-digit-keys{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}#voucherCodeKeys button{min-height:46px;padding:6px;background:#fffdf8;border:1px solid #ddcfb6;border-radius:10px;font-size:20px;color:#17394e}#voucherCamera{padding:14px;background:#f3eee4;border:1px solid #d7c7a8;border-radius:12px}#voucherCameraVideo{display:block;max-height:260px;width:100%;object-fit:contain;background:#112e41;border-radius:10px}#voucherCameraMessage{font-size:12px;color:#6e828d}@media(max-width:480px){.voucher-letter-keys{grid-template-columns:repeat(6,1fr)}.voucher-code-actions{flex-wrap:wrap}.remainder-methods{grid-template-columns:1fr}}
.preview-bon-meta{text-align:left}.preview-bon-row{margin:5px 0;align-items:baseline}.preview-bon-row span{min-width:0}.preview-bon-row b{white-space:nowrap}

#businessProfileForm [aria-invalid="true"]{border-color:#ad493b;background:#fff3ef;box-shadow:0 0 0 3px #ad493b15}#businessProfileError{padding:12px 15px;border:1px solid #d68f7f;border-radius:12px;background:#fff3ef;color:#8f3028}
.history-filter-heading,.history-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.history-filter-heading h2{margin:8px 0 18px}.history-presets{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 24px}.server-app .history-presets button{min-height:43px;padding:10px 16px;border-radius:24px}.server-app .history-presets button[aria-pressed="true"]{background:#183b4e;color:#fff5df;border-color:#183b4e;box-shadow:0 4px 12px #17384b20}.history-filter-grid{display:grid;grid-template-columns:minmax(240px,2fr) repeat(2,minmax(140px,1fr)) minmax(175px,1fr);gap:16px}.history-search input{padding-left:16px}.history-more-filters{margin-top:19px;border-top:1px solid #eee5d7;padding-top:16px}.history-more-filters summary{cursor:pointer;color:#586e7d;font-size:12px}.history-more-filters[open] summary{margin-bottom:16px}.history-time-hint{font-size:11px;margin:16px 0 0}.history-results-heading{padding:0 0 15px;border-bottom:1px solid #eee5d7}.history-results-heading p{margin:0;font-size:13px;font-weight:600}.history-bon-number{display:block;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.history-payment-methods{display:block;color:#637583;font-size:10px;margin-top:7px}.history-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px;color:#637583;font-size:12px}.history-pagination button:disabled{opacity:.4;cursor:default}.history-results .history-actions{display:flex;flex-wrap:wrap;gap:6px}.history-results td{vertical-align:middle}@media(max-width:1150px){.history-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-search{grid-column:1/-1}}@media(max-width:560px){.history-filter-heading{align-items:flex-start}.history-filter-heading h2{font-size:24px}.history-filter-grid{gap:12px}.history-filter-grid .field:last-child{grid-column:1/-1}.server-app .history-presets button{padding:10px 13px}.history-results-heading{align-items:flex-start}.history-results-heading button{font-size:11px}}
.history-results{min-width:0}.history-results .table-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.history-results table{min-width:850px}.history-results .table-scroll:focus-visible{outline:2px solid #c6a46a;outline-offset:4px}
.server-app .history-customer-link{display:inline;padding:3px 0;border:0;border-radius:3px;background:transparent;color:#244e63;font:inherit;text-align:left;text-decoration:underline;text-decoration-color:#cbb58a;text-underline-offset:4px}.server-app .history-customer-link:hover{color:#946f35;text-decoration-color:currentColor}.history-page-size{display:flex;align-items:center;gap:10px;margin-right:auto;color:#586e7d;font-size:12px}.history-page-size select{padding:9px 12px;border:1px solid #ded3c0;border-radius:10px;background:#fffdf8;color:#17384b;min-width:75px}.history-pagination{flex-wrap:wrap}@media(max-width:560px){.history-page-size{flex-basis:100%;justify-content:center;margin:0 0 8px}.history-pagination{gap:12px}}
.customer-visit-area{margin:28px 0}.customer-visit-heading,.customer-visit-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.customer-visit-heading h3{margin:8px 0}.customer-visit-card{border:1px solid #e4dbc9;border-radius:20px;background:white;padding:23px;margin:18px 0;box-shadow:0 6px 20px #17384b06}.customer-visit-top h3{font-size:22px;margin:8px 0}.customer-visit-top>strong{font:24px Georgia,serif;color:#98743d;white-space:nowrap}.customer-visit-tags{display:flex;align-items:center;gap:12px;margin:10px 0 19px;color:#637583;font-size:11px}.customer-visit-lines{border-top:1px solid #eee5d7;border-bottom:1px solid #eee5d7;padding:12px 0}.customer-visit-lines>div{display:flex;justify-content:space-between;gap:16px;padding:5px 0}.customer-visit-lines small{display:block;color:#71808b}.customer-visit-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:19px 0}.customer-visit-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#997a4a}.customer-visit-facts dd{margin:4px 0;font-size:12px}.customer-visit-payments p{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:11px}.customer-visit-payments small{color:#71808b}.customer-visit-appointments{padding:14px 0;font-size:12px}.customer-visit-appointments summary,.customer-previous-notes summary{cursor:pointer;color:#536f7f}.customer-visit-notes{background:#f8f5ee;border-radius:12px;padding:15px;margin:15px 0}.customer-visit-notes h4{margin:0 0 12px;font-size:12px}.customer-visit-notes small{display:block;color:#8f774f;font-size:10px}.customer-visit-notes strong{display:block;font-size:12px;margin-top:5px}.customer-visit-notes p{font-size:12px;white-space:normal;overflow-wrap:anywhere}.customer-visit-actions{display:flex;flex-wrap:wrap;gap:8px}.customer-previous-notes{margin:20px 0}@media(max-width:560px){.customer-visit-card{padding:17px}.customer-visit-top h3{font-size:19px}.customer-visit-facts{grid-template-columns:1fr}.customer-visit-top>strong{font-size:21px}}

/* Cash close: clear physical allocation and generous touch targets. */
.closing-allocation{margin:24px 0;padding:24px;border:1px solid #d7c297;border-radius:18px;background:linear-gradient(135deg,#fcfaf5,#f1f5f8)}.closing-allocation h3{margin:8px 0 20px}.closing-allocation .field input,.closing-allocation .field select{min-height:50px;font-size:17px}.closing-allocation .count-state{padding:16px;border-radius:12px;background:white;color:#153a50;font-size:17px;font-weight:600;line-height:1.6}.tip-balance-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #e3e8ed}.tip-balance-row p{margin:8px 0}.tip-balance-row small{color:#647483}.tip-balance-row button{min-height:48px;flex-shrink:0}#confirmPhysicalRemoval{width:24px;height:24px;flex-shrink:0}.closing-allocation .check-field{align-items:center;line-height:1.6}@media(max-width:620px){.closing-allocation{padding:18px}.tip-balance-row{align-items:stretch;flex-direction:column}.tip-balance-row button{width:100%}}

.server-app .customer-name-link{display:inline-flex;align-items:center;gap:14px;max-width:100%;min-height:48px;padding:4px 8px 4px 0;border:0;border-radius:10px;background:transparent;color:var(--pos-ink);text-align:left;cursor:pointer}.server-app .customer-name-link strong{overflow-wrap:anywhere}.server-app .customer-name-link:hover{color:#8c692e;background:#faf7ef}.server-app .customer-name-link:hover strong{text-decoration:underline;text-underline-offset:4px}.server-app .customer-name-link:focus-visible{outline:3px solid var(--pos-gold);outline-offset:4px}

.server-app .history-correction-row>td{background:#fff5f3;border-bottom-color:#edc4bf}.server-app .history-correction-row>td:first-child{border-left:4px solid #be4c42}.server-app .history-correction-row:hover>td{background:#ffede9}.server-app .history-correction-row>td:nth-child(4),.server-app .history-correction-row>td:nth-child(5){color:#8e2924;font-weight:700}.server-app .history-correction-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #dc9890;border-radius:8px;background:#fbe1dc;color:#8e2924;font-size:13px;font-weight:700;line-height:1.45;white-space:normal}.server-app .history-correction-chip>span{font-size:18px;line-height:1}

.server-app .voucher-number-link{display:inline-block;max-width:100%;min-height:40px;padding:8px 10px;margin-left:-10px;border:0;border-radius:8px;background:transparent;color:var(--pos-ink);font-weight:700;text-align:left;overflow-wrap:anywhere;cursor:pointer}.server-app .voucher-number-link:hover{background:#faf4e8;color:#896529;text-decoration:underline;text-underline-offset:4px}.server-app .voucher-number-link:focus-visible{outline:3px solid var(--pos-gold);outline-offset:3px}.server-app .voucher-issued-by{color:#405d70;font-size:13px;line-height:1.6}

.server-app .voucher-register-exports{margin-top:20px;gap:12px}.server-app .voucher-register-exports button{min-height:46px}

.server-app .customer-metrics>button{display:block;width:100%;background:#f7f4ed;padding:18px;border:1px solid transparent;border-radius:12px;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.server-app .customer-metrics>button:hover{background:#f0e7d5;border-color:#d2b780}.server-app .customer-metrics>button:focus-visible{outline:3px solid var(--pos-gold);outline-offset:3px}.server-app .customer-section-target{scroll-margin-top:22px}.server-app .customer-section-target:focus{outline:none;text-decoration:underline;text-decoration-color:#bd9455;text-underline-offset:8px;text-decoration-thickness:2px}

.server-app .close-float-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.server-app .close-float-heading h3{margin:8px 0}.server-app .close-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0 20px}.server-app .close-mode-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.server-app .close-choice{position:relative;display:block;cursor:pointer}.server-app .close-choice input[type=radio]{position:absolute;width:1px;height:1px;min-height:0;opacity:0;padding:0}.server-app .close-choice>span{display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:76px;height:100%;padding:17px 18px;border:1px solid #d6dfe3;border-radius:13px;background:#fff;color:#345065;font-size:15px;line-height:1.4;transition:background .15s,border-color .15s}.server-app .close-choice small{font-size:12px;color:#728391}.server-app .close-choice input:checked+span{background:#173b50;border-color:#173b50;color:#fff;box-shadow:0 5px 15px #13364b15}.server-app .close-choice input:checked+span small{color:#d5e0e6}.server-app .close-choice input:focus-visible+span{outline:3px solid #bd9455;outline-offset:3px}.server-app .close-choice:hover>span{border-color:#b69a63}.server-app .close-allocation-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:23px;background:white;border:1px solid #dcc69c;border-radius:14px;margin:22px 0;color:#173b50;font-weight:600}.server-app .close-allocation-summary span{display:block;font-size:12px;color:#758391;font-weight:400;margin-bottom:8px}.server-app .close-allocation-summary strong{font:32px Georgia,serif}.server-app .close-allocation-summary>div:first-child strong{color:#99723b}.server-app .float-quick-values{display:flex;gap:8px;flex-wrap:wrap}.server-app .float-quick-values button{min-height:44px}.server-app #closing>.eyebrow{margin-bottom:8px}.server-app .cash-admin-panel>#cashAdminOpen{margin-left:10px}@media(max-width:600px){.server-app .close-mode-choices{grid-template-columns:1fr}.server-app .close-allocation-summary{padding:16px;gap:12px}.server-app .close-allocation-summary strong{font-size:26px}.server-app .close-choice-grid{grid-template-columns:1fr}.server-app .cash-admin-panel>#cashAdminOpen{margin-left:0;margin-top:10px}}

.server-app .denomination-option{margin:24px 0;padding:20px;border:1px solid #ddc99f;border-radius:15px;background:#fbf9f3}.server-app .denomination-option>summary{font-weight:600;cursor:pointer;font-size:15px}.server-app .denomination-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}.server-app .denomination-tile{min-width:0;padding:10px;border:1px solid #e2ded4;border-radius:12px;background:white;text-align:center}.server-app .denomination-tile.has-count{border-color:#b99a5c;background:#fffdf6}.server-app .denomination-tile .cash-note{min-height:82px;width:100%;height:82px;margin:0}.server-app .denomination-tile .cash-note strong{font-size:30px}.server-app .denomination-tile .cash-note small{font-size:9px}.server-app .denomination-coin{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:4px auto 6px;border:5px double #bb9449;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff5cc,#e6c26b);color:#6d5021;box-shadow:0 3px 7px #17384b15}.server-app .denomination-coin.coin-large{background:radial-gradient(circle at 35% 30%,#fff,#d4dde2);border-color:#bba35e;color:#365162}.server-app .denomination-counter{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:4px;margin-top:10px}.server-app .denomination-counter button{min-height:38px;border:1px solid #d9dcd7;background:#f6f5f1;border-radius:8px;font-size:20px}.server-app .denomination-counter input{width:100%;padding:7px 2px;min-height:38px;text-align:center;font-size:16px;appearance:textfield}.server-app .denomination-counter input::-webkit-inner-spin-button{appearance:none}.server-app .denomination-count-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.server-app .denomination-tile>small{display:block;color:#6a7c88;margin-top:8px}.server-app .denomination-total{padding:14px;background:#fff2eb;border-radius:10px;color:#8d452c;font-weight:600;line-height:1.6}.server-app .denomination-total.is-valid{background:#eaf4ed;color:#2d6d4b}.server-app .retained-denominations{margin:22px 0;padding:20px;border:1px solid #d8c39a;border-radius:14px;background:#fffdf8}.server-app .retained-denominations h4{margin:8px 0 16px;font:22px Georgia,serif}.server-app .retained-denomination-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:10px}.server-app .retained-denomination{padding:12px;border:1px solid #ded3bc;border-radius:10px;background:#f5f0e5;text-align:center}.server-app .retained-denomination.is-coin{background:#f1f4f5;border-color:#d3dde2}.server-app .retained-denomination span,.server-app .retained-denomination small{display:block;color:#667b88}.server-app .retained-denomination strong{display:block;font-size:23px;color:#14394e;margin:6px 0}@media(max-width:500px){.server-app .denomination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.server-app .denomination-option{padding:14px}}

.server-app .retained-denomination .cash-note{width:100%;min-height:62px;height:62px;padding:10px;display:flex;align-items:center;justify-content:center;margin:0 0 8px;font-size:21px}.server-app .retained-denomination .denomination-coin{width:62px;height:62px;font-size:14px;margin:0 auto 8px}

.server-app .denomination-total{position:sticky;bottom:0;z-index:2;border:1px solid #dbc7a3;box-shadow:0 -3px 18px #17384b16;font-size:17px}.server-app .denomination-total.is-valid{border-color:#b9d7c2}

.server-app .float-history-entry{cursor:pointer}.server-app .float-history-entry:hover{background:#f7f2e8}.server-app .float-history-link{border:0;background:none;color:#163e57;text-align:left;font:inherit;text-decoration:underline;text-underline-offset:4px;padding:0;min-height:44px}.server-app .float-audit-heading{margin:24px 0}.server-app .float-audit-heading h2{font:30px Georgia,serif;margin:8px 0;color:#14394e}.server-app .float-audit-meta,.server-app .float-audit-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.server-app .float-audit-meta>div{padding:14px 0;border-bottom:1px solid #e4dac8;overflow-wrap:anywhere}.server-app .float-audit-meta span{display:block;color:#6a7c88;font-size:12px;margin-bottom:8px}.server-app .float-audit-comparison>section{padding:22px;border:1px solid #e0d9cc;border-radius:14px;background:#f7f6f2}.server-app .float-audit-comparison>section.is-new{background:#f5efdf;border-color:#c5a76b}.server-app .float-audit-comparison h3{font:32px Georgia,serif;margin:14px 0;color:#14394e}.server-app .float-audit-difference{padding:14px;border-radius:10px;background:#edf3f5;color:#254d63}.server-app .float-audit-pieces{overflow:auto}.server-app .float-audit-pieces small{display:block;color:#6a7c88}.server-app .float-audit-pieces .piece-changed{background:#faf4e7}@media(max-width:520px){.server-app .float-audit-meta,.server-app .float-audit-comparison{grid-template-columns:1fr}}

.server-app .daily-preview-header{display:flex;gap:18px;align-items:center;margin:10px 0 22px}.server-app .daily-preview-check{display:grid;place-items:center;flex:0 0 56px;height:56px;border-radius:50%;background:#e1f0e4;color:#338052;font-size:32px}.server-app .daily-preview-header h2{font:28px Georgia,serif;margin:8px 0}.server-app .daily-preview-header p{font-size:13px}.server-app .daily-preview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.server-app .daily-preview-stats>div{padding:16px;background:#f8f4eb;border:1px solid #e5d8bc;border-radius:12px}.server-app .daily-preview-stats span{display:block;font-size:12px;color:#667c88;margin-bottom:8px}.server-app .daily-preview-stats strong{font-size:22px;color:#163b52}.server-app .daily-preview-formats{display:flex;gap:10px;margin:20px 0}.server-app .daily-preview-formats button[aria-pressed=true]{background:#173e56;color:white;border-color:#173e56}.server-app #dailyReportFrame.daily-preview-frame{display:block;width:100%;height:65vh;min-height:380px;margin:18px auto;background:white;border:1px solid #dfd6c6;border-radius:10px}.server-app #dailyReportFrame.daily-preview-frame.is-bon{max-width:390px}

.server-app .product-editor-intro,.server-app .product-scan-intro{padding:22px;background:linear-gradient(125deg,#17394e,#234e5f);border-radius:16px;color:#fff;margin-bottom:24px}.server-app .product-editor-intro h2,.server-app .product-scan-intro h2{color:#fff;font:27px Georgia,serif;margin:10px 0}.server-app .product-editor-intro p,.server-app .product-scan-intro p{font-size:13px;line-height:1.65;margin:8px 0 0;color:#e1ebee}.server-app .product-editor .product-form-section{font:19px Georgia,serif;color:#173d54;padding:16px 0 10px;border-bottom:1px solid #dfcda9;margin:8px 0}.server-app .product-editor .form-grid{gap:20px 18px}.server-app .product-editor textarea{min-height:105px}.server-app .product-editor .dialog-footer{position:sticky;bottom:0;background:#fffcf7;padding:16px 0;border-top:1px solid #e2d9c8;z-index:2}.server-app .product-editor .dialog-footer button{flex:1}.server-app .scan-product-card{padding:22px;border:1px solid #d5bf94;border-radius:14px;background:#faf5e9;margin:16px 0}.server-app .scan-product-card h3{font:25px Georgia,serif;margin:12px 0}.server-app .scan-product-card small{color:#687d89;overflow-wrap:anywhere}.server-app #productScanStatus{padding:12px 0;line-height:1.6}

.server-app .scan-photo-button{display:inline-flex;align-items:center;min-height:44px;padding:10px 15px;cursor:pointer;border:1px solid #dbc9a8;border-radius:12px;background:#fffcf7;color:#254e66}.server-app #productScanVideo{margin-top:20px;border:2px solid #c7ad72;background:#17394e}

.server-app .product-import-image{width:110px;height:110px;object-fit:contain;background:white;border:1px solid #e2d6bd;border-radius:12px;padding:8px;margin-bottom:10px}

.server-app .product-price-preview{padding:14px;border:1px solid #dfd1b5;border-radius:12px;background:#f7f2e7;color:#24475d;font-size:13px;line-height:1.7;margin:0}.server-app .purchase-price-basis{display:grid;gap:8px}.server-app .purchase-price-basis label{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px;border:1px solid #dac9a7;border-radius:10px;background:#fffdf8}.server-app .purchase-price-basis input{width:auto;min-height:0}.server-app .purchase-price-basis label:has(input:checked){background:#edf3f5;border-color:#31566c}

.server-app .product-selection-bar{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:16px 20px;margin:0 0 20px;background:#f9f5eb;border:1px solid #decda9;border-radius:14px}.server-app .product-selection-bar label{display:flex;align-items:center;gap:9px}.server-app .product-selection-bar input,.server-app .product-select-box{width:21px;height:21px;accent-color:#224b63}.server-app .product-selection-bar span{margin-right:auto;color:#526f7f}.server-app .product-row-actions{display:flex;flex-wrap:wrap;gap:8px}.server-app .product-danger-button{background:#a13f37;border:1px solid #a13f37;color:white;border-radius:12px;min-height:44px;padding:11px 18px;font:inherit;cursor:pointer}.server-app .product-danger-outline{background:#fff6f2;color:#9b3c32;border:1px solid #dfb6a9;border-radius:12px;min-height:42px;padding:10px 15px;font:inherit;cursor:pointer}.server-app .product-danger-button:disabled{opacity:.45;cursor:default}.server-app .product-delete-heading{padding:20px;background:#fcf1ec;border-radius:14px;border:1px solid #e6cbbd}.server-app .product-delete-heading h2{font:26px Georgia,serif;color:#173d54}.server-app .product-delete-list{padding:0;list-style:none;max-height:240px;overflow:auto;margin:20px 0}.server-app .product-delete-list li{padding:12px 4px;border-bottom:1px solid #e5ddd0}.server-app .product-delete-list small{display:block;margin-top:5px;color:#76868d}.server-app .product-delete-note{padding:16px;background:#edf3f5;border-radius:12px;color:#34566a;font-size:13px;line-height:1.7}

.master-admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.server-app .master-admin button[aria-pressed=true]{background:var(--blue,#152d4c);color:white;border-color:var(--gold,#b89a66)}.master-admin-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0}.master-admin-row small{display:block;margin-top:6px;color:#64748b}.master-admin-note{padding:16px;border-left:3px solid #b89a66;background:#f7f4ed;border-radius:8px}.master-admin-history{display:grid;width:100%;text-align:left;gap:8px;cursor:pointer;margin:12px 0}.master-admin-details{display:grid;grid-template-columns:130px 1fr;gap:14px}.master-admin-details dt{color:#64748b}.master-admin-details dd{margin:0;overflow-wrap:anywhere}#masterChangeError{padding:14px;color:#8c2431;background:#fff1f2;border-radius:10px}
/* Team profiles and discreet celebrations */
.team-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:22px}.team-profile-card{padding:28px;border:1px solid #e7ded0;border-radius:24px;background:linear-gradient(145deg,#fffdf9,#fff);box-shadow:0 14px 35px #102f4610}.team-profile-heading{display:flex;gap:18px;align-items:center;margin-bottom:24px}.team-profile-heading h2{font-size:26px;margin:0 0 7px}.team-role-label{font-size:12px;letter-spacing:.05em;color:#8d703f}.team-profile-card dl{display:grid;grid-template-columns:1fr 1.15fr;gap:14px;margin:0}.team-profile-card dt{color:#74818a;font-size:13px}.team-profile-card dd{margin:0;font-weight:600;overflow-wrap:anywhere}.team-profile-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #eee5d9;margin-top:24px;padding-top:20px}.team-profile-footer span{font-size:11px;color:#8f784f}.team-unlinked{margin-top:24px}.team-editor-welcome{display:flex;gap:20px;align-items:center;padding:12px 0 25px}.team-editor-welcome h2{margin:6px 0;font-size:30px}.team-editor-welcome p{color:#74818a}.team-rights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:22px}.team-rights-grid fieldset{margin:0;padding:18px;border:1px solid #e7ded0;border-radius:18px;background:#fffdf9}.team-rights-grid legend{font-weight:700;color:#9d7d48;padding:0 8px}.team-rights-grid .check-field{align-items:flex-start;line-height:1.55;margin:12px 0}.team-rights-grid input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;margin-top:2px;accent-color:#173e51}.team-pin-explanation,.team-rights-note{padding:18px 20px;line-height:1.65;background:#f5f4ef;border-left:3px solid #c3a267;border-radius:12px;color:#586b79}.team-activation-card{text-align:center;padding:20px}.team-activation-symbol{display:block;font-size:50px;color:#b79a62;margin-bottom:18px}.team-activation-card .field{text-align:left}.team-activation-code{font-family:monospace;font-size:19px;letter-spacing:.06em;text-align:center}.team-self-setup{max-width:610px;margin:35px auto;padding:42px;border:1px solid #e8dcc9;border-radius:28px;background:#fffdf9;box-shadow:0 24px 60px #16384b14}.team-self-setup h1{font-family:Georgia,serif;font-size:46px;line-height:1.15;margin:20px 0;color:#173e51}.team-self-setup p{color:#6b7e89;line-height:1.7}.team-self-setup button{margin-top:12px}.team-setting-preview{padding:24px;border-radius:16px;background:linear-gradient(110deg,#173e51,#2c5360);color:#eed8ae;margin-bottom:24px}.salon-celebration{position:relative;display:flex;align-items:center;gap:24px;flex-wrap:wrap;border:1px solid #e0ccab;border-radius:22px;padding:26px 30px;margin:22px 0;background:linear-gradient(105deg,#fffdf7,#f8f0e3);overflow:hidden;box-shadow:0 8px 22px #16394b08}.celebration-emblem{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border:1px solid #d4b87e;border-radius:50%;font-size:40px;color:#b28a42;background:#fffaf0}.celebration-copy{flex:1;min-width:230px}.celebration-copy h2{font-family:Georgia,serif;font-weight:400;font-size:27px;line-height:1.3;margin:5px 0 12px;color:#173e51}.celebration-copy p{font-size:13px;color:#77838a;margin:12px 0 0}.birthday-names{display:flex;flex-wrap:wrap;gap:8px}.birthday-names strong{font-size:16px;color:#1f4558;padding:7px 15px;border-radius:30px;border:1px solid #d9c199;background:#fffaf3}.celebration-ornaments{display:flex;gap:13px;align-items:center;color:#b8965c;font-size:30px;opacity:.75}.theme-christmas{background:linear-gradient(105deg,#f7faf7,#e9f0e9);border-color:#b4c8b8}.theme-christmas .celebration-emblem{color:#496f57;background:#f8faf5;border-color:#9db7a4}.theme-easter{background:linear-gradient(105deg,#fbfaf5,#eef4e9);border-color:#c4d1b4}.theme-easter .celebration-ornaments i{display:block;width:26px;height:36px;border-radius:55% 55% 48% 48%;background:repeating-linear-gradient(25deg,#e9d6ba 0 7px,#f9f1df 7px 12px);transform:rotate(15deg)}.theme-easter .celebration-ornaments i:nth-child(2){background:repeating-linear-gradient(-25deg,#bdcdb2 0 7px,#e8eedc 7px 12px);transform:rotate(-12deg)}.salon-christmas .pos-hero,.salon-christmas .workspace-header{border-bottom:4px solid #bda06c;background:linear-gradient(115deg,#173e38,#244f4b)}.salon-easter .pos-hero,.salon-easter .workspace-header{border-bottom:4px solid #c6b58e}.birthday-confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:50}.birthday-confetti i{position:absolute;left:0;top:0;width:7px;height:13px;background:#c7a66a;border-radius:2px;animation:hera-confetti-fall 6s linear var(--delay) both}.birthday-confetti i:nth-child(3n){background:#d4a5a0;width:9px;height:9px;border-radius:50%}.birthday-confetti i:nth-child(4n){background:#8eb4ae}.birthday-confetti i:nth-child(5n){background:#eedcb7}@keyframes hera-confetti-fall{from{transform:translate3d(var(--x),-12vh,0) rotate(0);opacity:0}10%{opacity:.85}90%{opacity:.8}to{transform:translate3d(calc(var(--x) + var(--drift)),105vh,0) rotate(650deg);opacity:0}}@media(prefers-reduced-motion:reduce){.birthday-confetti{display:none}.salon-celebration *{animation:none!important}}@media(max-width:650px){.team-rights-grid,.team-profile-grid{grid-template-columns:1fr}.team-self-setup{padding:26px 20px}.team-self-setup h1{font-size:35px}.team-profile-footer{flex-wrap:wrap}.salon-celebration{padding:22px;gap:15px}.celebration-ornaments{display:none}.celebration-copy h2{font-size:24px}}@media print{.salon-celebration,.birthday-confetti{display:none!important}}
.server-app #detailDialog:has(#teamProfileForm){width:min(920px,calc(100vw - 32px))}.server-app #detailDialog:has(#teamProfileForm) .dialog-head{top:-30px;margin:-30px -30px 24px;padding:24px 30px 18px;border-bottom:1px solid #e7ded0;box-shadow:0 7px 12px #fffaf4}.server-app #detailDialog:has(#teamProfileForm) .dialog-footer{position:sticky;bottom:-30px;margin:24px -30px -30px;padding:20px 30px;background:#fffaf4;border-top:1px solid #e7ded0;z-index:10}@media(max-width:560px){.server-app #detailDialog:has(#teamProfileForm) .dialog-head{top:-23px;margin:-23px -18px 20px;padding:20px 18px 14px}.server-app #detailDialog:has(#teamProfileForm) .dialog-footer{bottom:-23px;margin:20px -18px -23px;padding:18px}}

/* Teamfoto 54 */
.server-app .staff-avatar.staff-photo{overflow:hidden;width:80px;height:80px;box-shadow:0 6px 18px #17394b10;border:2px solid #ddc89f;background:#f4efe5}
.server-app .staff-photo img{display:block;width:100%;height:100%;object-fit:cover}
.server-app .team-photo-picker{padding:20px 24px;background:linear-gradient(120deg,#faf7ef,#fff);border:1px solid #e6dbc7;border-radius:18px;margin:0 0 24px}
.server-app .team-photo-picker strong{color:#173e51;font-size:16px}.server-app .team-photo-picker p{font-size:12px;line-height:1.6;color:#71808a;margin:8px 0 14px}.server-app .team-photo-picker #teamPhotoStatus{margin-bottom:0}
/* Inventur 55: quiet working surfaces, clear steps and generous touch targets. */
.server-app .inventory-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.inventory-metrics>div{padding:24px;border:1px solid #e4d9c6;border-radius:18px;background:linear-gradient(135deg,#fffdf8,#f9f5ed)}.inventory-metrics span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8d744b}.inventory-metrics strong{display:block;font:32px Georgia,serif;color:#173e51;margin:13px 0 9px}.inventory-metrics small{display:block;font-size:11px;color:#7f8b90}.inventory-guide{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:27px 30px;background:#183d50;color:#f8f3e7;border-radius:20px;margin:30px 0}.inventory-guide h2{font:28px Georgia,serif;margin:9px 0 13px}.inventory-guide p{color:#d0dce0;font-size:12px;line-height:1.8}.inventory-guide .eyebrow{color:#d5b57b}.server-app .inventory-guide .secondary{background:transparent;color:#ecd6b0;border-color:#9c927e}.inventory-filter{padding:22px;background:#faf7f0;border:1px solid #e5d9c3;border-radius:18px;margin:18px 0}.inventory-filter .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-subline{display:block;color:#80909a;font-size:10px;margin-top:8px;line-height:1.6}.inventory-status{display:inline-block;padding:8px 13px;border:1px solid #dfd2ba;border-radius:30px;font-size:11px;background:#f8f2e8;color:#8b6e3e;white-space:nowrap}.inventory-status.is-approved{color:#416d58;border-color:#bbd1c0;background:#eff7f0}.inventory-status.is-counting{color:#315c71;background:#edf4f7;border-color:#bdd2de}.inventory-status.is-cancelled{color:#9a6657;background:#fcf0e9;border-color:#e3c9bb}.inventory-status.is-review{background:#faf0da;border-color:#d9bc76}.server-app .inventory-text-link{border:0;background:none;padding:0;color:#183e52;text-decoration:underline;text-decoration-color:#c7a76a;text-underline-offset:5px;font-weight:700;text-align:left}.inventory-warning{padding:18px 21px;background:#faf3e5;border:1px solid #e3cc9e;border-left:3px solid #be9755;border-radius:12px;line-height:1.8;color:#796340;font-size:12px}.inventory-open{color:#9b7a48;font-size:11px}.inventory-difference{color:#a15e4d}.server-app dialog:has(.inventory-workspace),.server-app dialog:has(.inventory-print-frame){width:min(1150px,calc(100vw - 32px))}.inventory-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.inventory-intro h2{font:30px Georgia;margin:10px 0}.inventory-intro p{color:#7c8b95;font-size:12px;line-height:1.7}.inventory-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.inventory-bottom-actions{border-top:1px solid #e5dbc9;padding-top:24px;margin-top:30px}.inventory-export{padding:28px;background:linear-gradient(120deg,#173e51,#2a5263);color:#f5f1e6;border-radius:20px;margin-top:28px}.inventory-export h2{font:30px Georgia}.inventory-export p,.inventory-export small{color:#d3dfe3;line-height:1.7}.inventory-export .eyebrow{color:#d2b67f}.server-app .inventory-export .secondary{background:transparent;color:#f1e2c3;border-color:#9ba19a}.inventory-help{line-height:1.9}.inventory-help li{margin-bottom:20px;padding-left:8px}.inventory-editor h2{font:29px Georgia;margin:12px 0 20px}.inventory-editor>p{line-height:1.8}.inventory-print-frame{display:block;width:100%;height:65vh;border:1px solid #e3d9c6;background:#fff;border-radius:10px}.server-app #stockSearch{max-width:290px}.inventory-workspace .table-wrap{padding:0}.inventory-workspace td{padding:17px 9px}.inventory-workspace .history-actions{min-width:130px}.inventory-workspace .secondary{font-size:11px}@media(max-width:700px){.server-app .inventory-metrics{grid-template-columns:1fr}.inventory-metrics>div{padding:18px}.inventory-metrics strong{font-size:27px}.inventory-guide{display:block;padding:24px}.inventory-filter .form-grid{grid-template-columns:1fr}.inventory-intro{display:block}.inventory-guide button{margin-top:15px}.inventory-actions button{flex:1}.inventory-workspace .table-wrap{overflow-x:auto}}
.server-app .inventory-log-field{padding:10px 0;border-bottom:1px solid #eee5d7;line-height:1.7}.inventory-log-field>strong{display:block;color:#927343;font-size:11px;margin-bottom:4px}.inventory-log-field .inventory-log-field{margin-left:15px}

.server-app .inventory-confirm-choice{padding:26px 28px;border:1px solid #d8c6a5;background:linear-gradient(115deg,#fbf6e9,#fffdf8);border-radius:20px;margin:25px 0}.inventory-confirm-choice h2{font:28px Georgia,serif;margin:10px 0 15px}.inventory-confirm-choice p{line-height:1.8;color:#637681;font-size:12px}.inventory-confirm-choice small{display:block;font-size:11px;line-height:1.7;color:#8b795b;margin-top:15px}

/* Feldhilfe 57: accessible touch/keyboard explanations, no change to entered values. */
.server-app .field-help-caption{display:inline-flex;align-items:center;gap:8px;max-width:100%;line-height:1.5}.server-app .field-help-trigger{position:relative;display:inline-grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border:1px solid #c6a56b;border-radius:50%;background:#fbf6e9;color:#8a6936;font:italic 700 15px Georgia,serif;cursor:pointer;user-select:none}.field-help-trigger:before{content:"";position:absolute;inset:-5px}.server-app .field-help-trigger:hover,.server-app .field-help-trigger[aria-expanded=true]{background:#183e51;color:#f2dbac;border-color:#183e51}.server-app .field-help-trigger:focus-visible{outline:3px solid #c8aa74;outline-offset:4px}.server-app .field-help-popover{position:fixed;inset:auto;margin:0;padding:23px;border:1px solid #cbb07d;border-radius:17px;background:#fffdf8;color:#183d50;box-shadow:0 18px 65px #102e4338;max-height:calc(100vh - 24px);overflow:auto;z-index:10000;font:13px Arial,sans-serif;line-height:1.75}.server-app .field-help-popover[hidden]{display:none!important}.field-help-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:13px;border-bottom:1px solid #e7dcc8}.field-help-heading>strong{font:21px Georgia,serif;color:#173d51;line-height:1.3}.server-app .field-help-close{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;border:1px solid #e0d2ba;border-radius:8px;background:#fff;color:#57717e;font-size:22px;cursor:pointer}.field-help-popover>p{margin:17px 0 0}.field-help-example{margin-top:18px;background:#f6f0e4;padding:15px 17px;border-radius:10px;border-left:3px solid #be9c5c}.field-help-example>strong{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#94713c}.field-help-example p{margin:6px 0 0;font-size:12px;line-height:1.75}@media print{.field-help-trigger,.field-help-popover{display:none!important}}

/* Supplier planning · HERA */
.purchase-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.purchase-overview>div{display:flex;flex-direction:column;padding:24px;border:1px solid #dce3e5;border-radius:20px;background:linear-gradient(135deg,#fff,#f4f4ef)}.purchase-overview span,.purchase-overview small{color:#536a73}.purchase-overview span{font-size:.72rem;letter-spacing:.12em;font-weight:700}.purchase-overview strong{font:42px Georgia,serif;color:#173e51;margin:8px 0}.purchase-tabs,.purchase-filter{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.purchase-card{background:#fff;border:1px solid #dce3e5;border-radius:20px;padding:24px;margin:16px 0;box-shadow:0 8px 28px #173e5107}.purchase-card h3,.purchase-dialog-intro h3{font-family:Georgia,serif;font-size:1.6rem;margin:10px 0;color:#173e51}.purchase-card-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.purchase-summary-line{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #edf0ef}.purchase-summary-line small,.purchase-edit-line small{display:block;color:#657680;font-size:.85rem;margin-top:5px}.purchase-critical{background:#f8e5e2;color:#9c372e;display:inline-block;padding:4px 9px;border-radius:8px;font-size:.75rem;margin:0 6px}.purchase-due{border-left:4px solid #c6a165}.purchase-dialog-intro{background:linear-gradient(120deg,#f3f6f5,#faf6ee);padding:24px;border-radius:16px;margin-bottom:20px}.purchase-edit-line{display:grid;grid-template-columns:1fr 120px 44px;gap:14px;align-items:center;border-bottom:1px solid #e5e9e8;padding:15px 0}.purchase-remove{border:1px solid #e9cecb;background:#fff7f5;color:#a1483d;border-radius:12px;font-size:1.6rem;min-height:44px}.purchase-choice-grid{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.purchase-choice-grid button{min-height:52px;flex:1;min-width:150px}.purchase-rest{border:1px solid #e1ded1;padding:20px;border-radius:16px;margin:20px 0}.purchase-message,.purchase-history-detail{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:#f6f7f4;border:1px solid #e1e5e2;border-radius:14px;padding:20px;max-height:420px;overflow:auto}.purchase-total{display:flex;justify-content:space-between;padding:20px 0}.purchase-tabs button,.purchase-filter button{min-height:46px}#purchaseSearchResults{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}#purchaseLines{margin-bottom:24px}@media(max-width:700px){.purchase-overview{grid-template-columns:1fr}.purchase-card-head{align-items:stretch;flex-direction:column}.purchase-edit-line{grid-template-columns:1fr 85px 40px}.purchase-card{padding:18px}.purchase-dialog-intro{padding:18px}}

.purchase-scan-panel{margin:18px 0;padding:22px;background:linear-gradient(120deg,#f0f5f5,#faf5ea);border:1px solid #d6e0de;border-radius:18px}.purchase-scan-panel[hidden]{display:none}.purchase-scan-panel video{width:100%;max-height:280px;border-radius:14px;margin-top:16px}.purchase-scan-panel [data-scan-status]{color:#173e51;font-weight:600;overflow-wrap:anywhere}

.report-controls{padding:28px;background:#fffdf8;border:1px solid #e5dfd0;border-radius:22px;margin:24px 0}.report-category-buttons,.report-period-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.report-category-buttons button,.report-period-buttons button{min-height:46px}.report-date-row{display:flex;align-items:center;gap:22px}.report-date-row>.field{max-width:430px;flex:1}.report-start{padding:48px;border:1px dashed #c9b58f;border-radius:22px;text-align:center;background:#faf8f3}.report-start h2,.report-result h2,.report-result h3{font-family:Georgia,serif;color:#173e51}.report-result-head{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:28px 0}.report-result h2{font-size:2rem;margin:10px 0}.report-export{display:flex;gap:10px;flex-wrap:wrap}.report-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.report-stat{padding:25px;background:#fffdf9;border:1px solid #e3ded2;border-radius:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 7px 24px #173e5105}.report-stat>span{font-size:.9rem;font-weight:600;color:#335567}.report-stat>strong{font-size:2rem;font-weight:500;font-family:Georgia,serif;color:#173e51}.report-stat:first-child{background:linear-gradient(125deg,#15394b,#24566a);border-color:#173e51}.report-stat:first-child>strong,.report-stat:first-child>span{color:#fff}.report-stat:first-child>small{color:#d4e1e6}.report-stat small,.report-data-table th small,.report-detail-list small{font-size:.78rem;font-weight:400;line-height:1.6;color:#647984;display:block}.report-secondary .report-stat{box-shadow:none;padding:20px}.report-secondary .report-stat:first-child{background:#fffdf9}.report-secondary .report-stat:first-child>strong,.report-secondary .report-stat:first-child>span{color:#173e51}.report-secondary .report-stat:first-child>small{color:#647984}.report-secondary .report-stat>strong{font-size:1.6rem}.report-section{background:#fff;border:1px solid #e4e7e5;border-radius:20px;padding:26px;margin:24px 0}.report-section-title h3{font-size:1.5rem;margin:0 0 8px}.report-section-title p{font-size:.88rem;color:#637783;margin:0 0 22px}.report-table-scroll{overflow-x:auto}.report-data-table{width:100%;border-collapse:collapse;min-width:650px}.report-data-table th{text-align:left;padding:16px 14px;background:#f3f6f5;color:#173e51;min-width:120px;vertical-align:top}.report-data-table td{padding:18px 14px;border-bottom:1px solid #e6ecea;vertical-align:top}.report-empty{padding:22px;background:#f5f5ef;border-radius:12px;color:#5e7078;margin-bottom:18px}.report-saved-note{margin-top:30px;padding:24px;border-top:2px solid #c6a165;background:#f5f4ed;border-radius:0 0 18px 18px;color:#546c78;font-size:.88rem}.report-saved-note>strong{color:#173e51}.report-saved-note small{display:block;margin-top:18px}.report-hash{overflow-wrap:anywhere}.report-detail-list{min-width:250px;max-width:600px;margin:15px 0}.report-detail-list>div{padding:12px 0;border-bottom:1px solid #e3e8e5}.report-detail-list dt{font-weight:600}.report-detail-list dd{margin:8px 0;overflow-wrap:anywhere}.report-row-detail>summary{cursor:pointer;white-space:nowrap;color:#173e51}.report-pagination{display:flex;gap:20px;align-items:center;margin-top:20px}@media(max-width:1000px){.report-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-result-head{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.report-stat-grid{grid-template-columns:1fr}.report-controls,.report-section{padding:18px}.report-date-row{align-items:stretch;flex-direction:column}.report-stat>strong{font-size:1.8rem}.report-start{padding:28px}}

.report-data-table th small{text-transform:none;letter-spacing:normal}.report-result-head{position:static;height:auto;min-height:0;background:transparent;color:inherit;box-shadow:none;inset:auto;z-index:auto}

.report-secondary .report-stat.report-correction{background:#fff6f3;border-color:#efd6cf}.report-secondary .report-stat.report-correction strong{color:#963d32}

/* Restzahlungen: ruhige Übersicht und gut bedienbare Auswahl */
.debt-dashboard{max-width:1400px;margin:auto}.debt-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.debt-overview article{padding:24px;background:white;border:1px solid #e5dccb;border-radius:20px}.debt-overview strong{display:block;font:32px Georgia,serif;color:#17384a;margin-top:12px}.debt-overview small{color:#64717a}.debt-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.debt-filters,.debt-reasons{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.debt-filters [aria-pressed=true],.debt-reasons [aria-pressed=true]{background:#193d50!important;color:white!important;border-color:#193d50!important}.debt-card{border:1px solid #e6ddcc;border-radius:18px;padding:24px;background:#fff;flex-wrap:wrap}.debt-card>div{min-width:0}.debt-card strong{margin:10px 0}.debt-card small{display:block;overflow-wrap:anywhere}.debt-card button{margin-top:12px}.debt-badge{display:inline-block;padding:6px 12px;background:#f6efdf;color:#795c22;border-radius:20px;font-size:12px;font-weight:700}.debt-state-overdue .debt-badge{background:#f9e8e5;color:#9b3a32}.debt-state-paid .debt-badge{background:#eaf3ed;color:#286447}.debt-name{border:0;background:transparent;color:#18394b;font:24px Georgia,serif;padding:0;text-align:left;text-decoration:underline;text-decoration-color:#bca270;text-underline-offset:5px;cursor:pointer;overflow-wrap:anywhere}.debt-explainer{padding:22px 26px;border:1px solid #dfd3b9;background:#faf7ef;border-radius:18px;line-height:1.65;margin:22px 0}.debt-empty{text-align:center;padding:40px 20px;background:#faf9f5;border-radius:18px}.debt-notes{white-space:pre-wrap;background:#f7f4ed;padding:18px;border-radius:12px}.debt-create h3{margin-top:28px}.debt-create .field input{min-height:48px}.debt-reasons button{min-height:48px}.debt-card p{line-height:1.6}.debt-doc-row strong{overflow-wrap:anywhere}@media(max-width:650px){.debt-overview{grid-template-columns:1fr;gap:10px}.debt-overview article{padding:18px;display:flex;justify-content:space-between;align-items:center}.debt-overview strong{font-size:26px;margin:0}.debt-toolbar{align-items:start;flex-direction:column}.debt-card{padding:18px}.debt-card>div:last-child{text-align:left}.debt-card>div{width:100%}.debt-name{font-size:22px}.debt-amounts{grid-template-columns:1fr}.debt-amounts article{display:flex;align-items:center;justify-content:space-between}.debt-amounts strong{margin:0}}

.debt-dashboard .form-grid{grid-template-columns:minmax(200px,2fr) repeat(2,minmax(150px,1fr))}@media(max-width:750px){.debt-dashboard .form-grid{grid-template-columns:1fr}}

.business-layout>.debt-explainer{grid-column:1/-1;margin:0 0 18px}.business-layout>.debt-explainer p{margin:10px 0}.debt-explainer button{min-height:46px}

/* Kundenkarte: HERA-blauer Namensbalken; andere Dialoge bleiben unverändert. */
.server-app #detailContent:has(>.customer-profile)>.dialog-head{background:linear-gradient(115deg,#102e43 0%,#21495f 100%);border:1px solid #315568;border-left:4px solid #c9a76d;border-radius:14px;padding:22px 24px;margin-bottom:22px;box-shadow:0 8px 22px #102e4314;gap:18px;align-items:center}
.server-app #detailContent:has(>.customer-profile)>.dialog-head h2{color:#fffaf1;margin:8px 0 0;overflow-wrap:anywhere}
.server-app #detailContent:has(>.customer-profile)>.dialog-head .eyebrow{color:#e3c995}
.server-app #detailContent:has(>.customer-profile)>.dialog-head .icon-button{background:#ffffff0d;border-color:#ffffff55;color:#fff;flex-shrink:0}
.server-app #detailContent:has(>.customer-profile)>.dialog-head .icon-button:hover{background:#ffffff20}
@media(max-width:600px){.server-app #detailContent:has(>.customer-profile)>.dialog-head{padding:18px 16px;gap:12px}.server-app #detailContent:has(>.customer-profile)>.dialog-head h2{font-size:26px}}

/* HERA POS 92: compact cash tiles, reversible visual trial. */
body.server-app #products.pos-products{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px}
body.server-app #products .pos-product{min-height:158px;padding:14px;gap:9px;border-radius:13px}
body.server-app #products .pos-product-image{width:44px;height:44px}
body.server-app #products .pos-product strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
body.server-app #products .pos-product-bottom b{font-size:21px}
@media(max-width:560px){body.server-app #products.pos-products{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:9px}body.server-app #products .pos-product{padding:12px;min-height:152px}body.server-app #products .pos-product-bottom b{font-size:19px}}

/* HERA POS 93 PAYMENT START */
body.server-app #paymentDialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;inset:0;border-radius:0;padding:22px;overflow:auto;box-sizing:border-box}
body.server-app #paymentContent{padding:12px 16px;max-width:1800px;margin:auto;min-width:0}
body.server-app #paymentDialog .payment-window-controls{top:0}
body.server-app #paymentCloseTop{margin:0 4px 0 0}
@media(min-width:1100px){
 body.server-app #paymentContent{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(600px,1.6fr);column-gap:36px;align-content:start;align-items:start}
 body.server-app #paymentContent>*{grid-column:1;min-width:0}
 body.server-app #paymentContent>#payment{grid-column:2;grid-row:1/span 16;margin:0;padding:16px 22px;background:#fffdf8;border:1px solid #e2d6c0;border-radius:18px;align-content:start;gap:10px 16px}
 body.server-app #paymentContent>.hero-total{font-size:46px;margin:10px 0}
 body.server-app #paymentContent .methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.server-app #paymentContent #payment .field{margin:5px 0;gap:5px}
 body.server-app #paymentContent #payment .cash-choice-panel,body.server-app #paymentContent #payment .touch-payment-pad{margin-top:4px}
 body.server-app #paymentContent #payment .cash-choice-panel{padding:14px}
 body.server-app #paymentContent #payment .cash-note{min-height:70px;padding-top:8px}
 body.server-app #paymentContent #payment .cash-note-grid{gap:7px;margin-bottom:10px}
 body.server-app #paymentContent #payment .touch-pad-keys button{min-height:44px}
 body.server-app #paymentContent #payment .touch-pad-display{padding:10px 12px;margin-bottom:8px}
 body.server-app #paymentContent #payment .touch-pad-inner{padding:0 12px 12px}
 body.server-app #paymentContent #payment .touch-pad-targets{margin-bottom:8px}
 body.server-app #paymentContent #payment>p{margin:5px 0}
}
@media(max-width:1099px){body.server-app #paymentDialog{padding:16px}body.server-app #paymentContent{padding:12px 8px}}
/* HERA POS 93 PAYMENT END */
