:root{--ink:#19332f;--muted:#687b76;--green:#14584c;--green-dark:#0b423a;--mint:#e7f1ed;--mint-2:#f0f5f2;--peach:#f4c9ad;--line:#dce7e2;--white:#fff;--canvas:#f5f8f6;--shadow:0 18px 55px rgba(25,51,47,.09);--radius:22px;--font-body:'DM Sans',sans-serif;--font-head:'Manrope',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.55 var(--font-body)}button,input,select{font:inherit}button{cursor:pointer}.site-header{height:82px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(25,51,47,.07);background:rgba(255,255,255,.62)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font:800 23px var(--font-head);position:relative}.brand-mark span{position:absolute;color:var(--peach);font-size:12px;right:-3px;top:-2px}.brand-name{font:800 19px var(--font-head);letter-spacing:-.6px}.brand-name small{display:block;font:600 8px var(--font-body);letter-spacing:1.75px;color:#74908a;margin-top:1px}.header-right{display:flex;align-items:center;gap:29px}.live-indicator{font-size:12px;color:#608078;display:flex;gap:8px;align-items:center}.live-indicator i{width:8px;height:8px;border-radius:50%;background:#41ad79;box-shadow:0 0 0 4px rgba(65,173,121,.12)}.live-indicator.offline i{background:#d68e5e;box-shadow:0 0 0 4px rgba(214,142,94,.14)}.staff-link,.back-link{font-size:12px;font-weight:700;color:var(--green);text-decoration:none}.staff-link span{font-size:15px;margin-left:4px}.patient-shell{max-width:1120px;margin:auto;padding:37px 26px 22px}.hero-panel{height:300px;background:#daeae3;border-radius:26px;overflow:hidden;position:relative;display:flex;align-items:center;padding:40px 7%;isolation:isolate}.hero-panel:after{content:"";position:absolute;inset:0 0 0 53%;background:#d0e3da;clip-path:ellipse(74% 100% at 80% 54%);z-index:-1}.hero-copy{max-width:470px;z-index:2}.eyebrow{margin:0 0 10px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.9px;color:#6a8d82}.hero-copy h1,.login-content h1,.dashboard-titlebar h1{font:700 clamp(35px,4vw,49px)/1.08 var(--font-head);letter-spacing:-2.3px;margin:0;color:var(--ink)}.hero-copy h1 em{font-style:normal;color:var(--green)}.hero-text{max-width:435px;color:#60766e;font-size:14px;margin:16px 0}.hero-note{display:flex;align-items:center;gap:9px;font-size:11px;color:#56776d;margin-top:21px}.note-icon{color:#be7b59;font-size:19px}.hero-art{position:absolute;width:380px;height:270px;right:5%;bottom:-12px}.sun-disc{position:absolute;width:186px;height:186px;border-radius:50%;background:#f7d7bf;right:80px;top:26px}.tooth-shape{position:absolute;width:126px;height:151px;background:#fffaf4;right:105px;top:58px;border-radius:46% 49% 36% 39% / 29% 29% 54% 51%;transform:rotate(8deg);box-shadow:inset -12px -8px 0 #f1e6d9,0 17px 40px #67928438}.tooth-shape:before,.tooth-shape:after{content:"";position:absolute;bottom:-18px;width:35px;height:62px;background:#fffaf4;border-radius:0 0 17px 23px;z-index:-1}.tooth-shape:before{left:23px;transform:rotate(8deg)}.tooth-shape:after{right:25px;transform:rotate(-8deg)}.tooth-shape span{font:800 71px var(--font-head);color:#a8c7b9;position:absolute;left:37px;top:32px}.spark{position:absolute;color:#7eaa98}.spark-one{font-size:26px;right:42px;top:40px}.spark-two{font-size:36px;left:66px;top:71px;color:#d09470}.art-caption{position:absolute;right:8px;bottom:44px;font-size:10px;letter-spacing:1.7px;line-height:1.45;color:#628376}.art-caption b{font-size:13px;color:var(--green)}.card{background:var(--white);border:1px solid rgba(25,51,47,.06);border-radius:var(--radius);box-shadow:0 9px 32px rgba(25,51,47,.035)}.lookup-card{padding:27px 31px;margin-top:22px}.card-heading,.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.card-heading>div,.section-intro>div{display:flex;align-items:center;gap:12px}.section-number{font:700 11px var(--font-head);color:#99b5aa;border:1px solid #c8dad1;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;flex:none}.card-heading h2,.section-intro h2,.admin-toolbar h2,.staff-panel h2{font:700 20px var(--font-head);letter-spacing:-.6px;margin:0}.card-heading p,.section-intro p{font-size:11px;color:var(--muted);margin:0;max-width:420px}.lookup-form{display:grid;grid-template-columns:1.25fr .8fr 1fr auto;align-items:end;gap:12px}label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#49645c}input,select{width:100%;height:43px;border:1px solid #dce6e1;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink);outline:0;font-size:13px;transition:border .18s,box-shadow .18s}input:focus,select:focus{border-color:#75a394;box-shadow:0 0 0 3px #dcece5}.button{border:0;border-radius:10px;min-height:43px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:13px;font-size:12px;font-weight:700;transition:transform .18s,background .18s,box-shadow .18s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.48;cursor:not-allowed}.button-primary{background:var(--green);color:#fff;box-shadow:0 5px 13px #14584c20}.button-primary:hover:not(:disabled){background:var(--green-dark)}.button-outline{background:#fff;border:1px solid #cfddd7;color:var(--green)}.button-soft{background:var(--mint);color:var(--green)}.button span{font-size:16px;line-height:1}.lookup-results:empty{display:none}.lookup-results{margin-top:17px;border-top:1px solid var(--line);padding-top:15px}.lookup-results h3{font:700 12px var(--font-head);margin:0 0 9px}.lookup-row{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f7f9f7;border-radius:12px;padding:12px 14px;margin-top:8px}.lookup-row div{font-size:12px}.lookup-row small{display:block;color:var(--muted);font-size:10px}.button-danger{border:1px solid #e8c7bb;color:#a45439;background:#fff9f6;min-height:35px;padding:0 13px;font-size:11px}.booking-area{padding-top:36px}.section-intro{margin-bottom:18px}.booking-groups{display:grid;gap:15px}.booking-group{background:#fff;border:1px solid rgba(25,51,47,.07);border-radius:20px;padding:22px 25px 24px;box-shadow:0 8px 27px rgba(25,51,47,.035)}.group-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.group-title{display:flex;align-items:center;gap:11px}.group-index{background:var(--green);color:#fff;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.group-head h3{font:700 16px var(--font-head);margin:0;letter-spacing:-.3px}.group-head p{font-size:10px;color:var(--muted);margin:2px 0 0}.text-button{border:0;background:none;color:var(--green);font-weight:700;font-size:11px;padding:5px}.text-button:disabled{opacity:.4;cursor:not-allowed}.patient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.patient-form{background:#f7f9f7;border-radius:13px;padding:14px;display:grid;grid-template-columns:1.35fr .8fr;gap:10px}.patient-form h4{grid-column:1/-1;font:700 11px var(--font-head);margin:0;color:#628076}.patient-form label{font-size:10px}.patient-form input,.patient-form select{height:39px;font-size:12px}.patient-form .wide{grid-column:1/-1}.slot-picker{margin-top:21px;padding-top:17px;border-top:1px solid #e7eeea}.slot-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.slot-picker-head h4{margin:0;font:700 12px var(--font-head)}.hold-countdown{font-size:10px;font-weight:700;color:#b76542}.date-strip{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 10px;scrollbar-width:thin}.date-pill{flex:none;min-width:91px;border:1px solid #dce8e2;border-radius:11px;background:#fff;padding:7px 12px;color:#58766c;text-align:left}.date-pill strong,.date-pill span{display:block}.date-pill span{font-size:9px;text-transform:uppercase;letter-spacing:.6px}.date-pill strong{font:700 12px var(--font-head);margin-top:1px}.date-pill.selected{border-color:var(--green);background:#e9f3ee;color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(117px,1fr));gap:8px}.slot-card{min-height:55px;border:1px solid #d8e8df;background:#f6fbf7;border-radius:11px;color:#215d49;text-align:left;padding:8px 10px;position:relative;transition:.15s}.slot-card strong{display:block;font:700 13px var(--font-head)}.slot-card small{display:block;font-size:9px;color:#719085;margin-top:2px}.slot-card:hover:not(:disabled){border-color:#4d9379;transform:translateY(-1px);box-shadow:0 5px 14px #14584c12}.slot-card.selected{background:var(--green);color:white;border-color:var(--green)}.slot-card.selected small{color:#d4eae1}.slot-card.occupied{background:#e8ece9;border-color:#e0e5e2;color:#88938f;cursor:not-allowed}.slot-card.occupied small{color:#a0aaa5}.slot-card.unavailable-double{opacity:.62}.double-tag{position:absolute;right:6px;top:6px;color:#7c6959;background:#f4eadf;border-radius:5px;padding:1px 4px;font-size:8px;font-weight:700}.no-slots,.empty-state{padding:20px;color:#778a83;text-align:center;font-size:12px;background:#f7f9f7;border-radius:12px}.add-group-button{margin:15px 0 20px;width:100%;border:1px dashed #b6cbc1;border-radius:15px;background:#f9fbf9;color:var(--green);padding:14px;font-size:12px;font-weight:700}.add-group-button span{font-size:17px;vertical-align:-1px;margin-right:5px}.add-group-button small{font-size:10px;font-weight:500;color:#82958e;margin-left:6px}.add-group-button:disabled{opacity:.45;cursor:not-allowed}.confirm-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#eaf2ed;border-radius:17px;padding:15px 17px}.confirm-info{display:flex;align-items:center;gap:10px;font-size:11px;color:#60766e}.secure-icon{color:var(--green);font-size:20px}.confirm-info b{color:var(--green)}.confirm-bar .button{min-width:190px}.patient-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dde7e2;margin-top:31px;padding:18px 1px;color:#84958e;font-size:10px}.success-dialog,.admin-booking-dialog{border:0;border-radius:23px;padding:35px;width:min(475px,calc(100vw - 28px));box-shadow:0 25px 90px #0b423a33;color:var(--ink)}.success-dialog::backdrop,.admin-booking-dialog::backdrop{background:#102a2580;backdrop-filter:blur(3px)}.success-dialog{text-align:center}.success-mark{width:51px;height:51px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#e6f3ec;color:#368665;font-size:24px;font-weight:700}.success-dialog h2{font:700 29px var(--font-head);letter-spacing:-1px;margin:0}.success-lead{color:var(--muted);font-size:12px}.success-details{margin:19px 0;text-align:left}.success-detail{background:#f4f8f5;border-radius:12px;padding:13px 15px;margin:8px 0}.success-detail strong{font:700 13px var(--font-head)}.success-detail span{display:block;color:#6f8279;font-size:11px;margin-top:4px}.button-wide{width:100%}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#193d35;color:#fff;border-radius:11px;padding:11px 17px;font-size:12px;box-shadow:var(--shadow);transition:.22s;z-index:20;max-width:min(90vw,500px)}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:#8f4936}.admin-body{background:#f5f7f5}.admin-shell{max-width:1190px;margin:auto;padding:46px 25px}.login-panel{max-width:875px;margin:30px auto;min-height:510px;display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden}.login-decoration{background:#e3efe9;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;isolation:isolate}.login-decoration:before,.login-decoration:after{content:"";position:absolute;background:#d2e5db;border-radius:50%;z-index:-1}.login-decoration:before{width:310px;height:310px;top:-95px;left:-90px}.login-decoration:after{width:245px;height:245px;bottom:-120px;right:-50px}.login-glyph{font:800 150px/1 var(--font-head);color:var(--green);position:relative}.login-glyph span{font-size:37px;color:#cc9071;position:absolute;right:-28px;top:5px}.login-decoration p{font-size:12px;letter-spacing:2px;text-align:center;color:#668478;line-height:1.7}.login-decoration b{font-size:9px;color:#819d91}.login-content{padding:50px 54px;align-self:center}.login-content h1{font-size:34px}.muted{color:#7a8c85;font-size:12px}.login-form{margin-top:23px;display:grid;gap:15px}.login-form label:not(.remember-row){font-size:11px}.login-form input{height:45px}.remember-row{display:flex;flex-direction:row;align-items:center;gap:9px;font-size:10px;color:#6c8078;font-weight:500;cursor:pointer}.remember-row input{position:absolute;opacity:0;width:1px;height:1px}.custom-check{width:16px;height:16px;border:1px solid #bdcec5;border-radius:4px;position:relative}.remember-row input:checked+.custom-check{background:var(--green);border-color:var(--green)}.remember-row input:checked+.custom-check:after{content:"✓";position:absolute;color:#fff;font-size:11px;left:2px;top:-1px}.form-error{color:#a9543c;font-size:11px;min-height:14px;margin:0}.back-link{display:inline-block;margin-top:18px;font-size:10px}.hidden{display:none!important}.dashboard{animation:fade-in .28s}@keyframes fade-in{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.dashboard-titlebar{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.dashboard-titlebar .eyebrow{margin-bottom:4px}.dashboard-titlebar h1{font-size:35px;letter-spacing:-1.4px}.dashboard-titlebar .muted{margin:3px 0 0}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid #e4ece7;border-radius:15px;padding:16px 19px}.stat-card span{display:block;color:#789087;font-size:10px}.stat-card strong{display:block;font:700 25px var(--font-head);color:var(--green);margin-top:3px}.admin-toolbar{padding:19px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.admin-toolbar h2{font-size:17px}.admin-toolbar p{font-size:10px;color:#7b8d85;margin:3px 0 0}.toolbar-actions{display:flex;align-items:center;gap:8px}.toolbar-actions .button{min-height:39px;padding:0 13px;font-size:10px}.compact-date{font-size:9px}.compact-date input{height:39px;font-size:11px}.admin-agenda{display:grid;gap:13px}.admin-day{background:#fff;border:1px solid #e4ece7;border-radius:17px;overflow:hidden}.admin-day-head{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f9fbf9;padding:14px 17px;border-bottom:1px solid #e8efeb}.admin-day-title{display:flex;align-items:center;gap:10px}.day-dot{width:8px;height:8px;border-radius:50%;background:#d6a579}.day-dot.confirmed{background:#56a980}.day-dot.cancelled{background:#be7970}.admin-day-title h3{font:700 14px var(--font-head);margin:0;text-transform:capitalize}.admin-day-title small{display:block;color:#879990;font-size:9px;margin-top:1px}.day-actions{display:flex;gap:7px}.mini-button{height:31px;border:1px solid #d6e3dc;background:#fff;border-radius:8px;padding:0 10px;color:var(--green);font-size:9px;font-weight:700}.mini-button:hover{background:#edf5f0}.mini-button.danger{color:#a45943;border-color:#ead1c8}.admin-slots{padding:13px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px}.admin-slot{border:1px solid #e3ebe6;border-radius:12px;padding:11px 12px;background:#fff}.admin-slot.open{background:#f8fcf9;border-color:#d8e9de}.admin-slot.blocked{background:#f6f6f5;opacity:.72}.admin-slot.held{background:#fff8ef;border-color:#efdbba}.admin-slot.booked{background:#f0f2ef;border-color:#e2e7e3}.slot-admin-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.slot-admin-top strong{font:700 13px var(--font-head)}.state-chip{border-radius:6px;padding:3px 6px;font-size:8px;font-weight:700;background:#ecf3ee;color:#56816b}.blocked .state-chip{background:#eceeed;color:#7b8681}.held .state-chip{background:#fff0d7;color:#9b7442}.booked .state-chip{background:#e3e8e4;color:#5e7068}.slot-patients{font-size:10px;color:#49645c;margin-top:7px}.slot-patients small{display:block;color:#889990;font-size:9px;margin-top:2px}.slot-admin-actions{display:flex;gap:6px;margin-top:8px}.slot-admin-actions .mini-button{height:27px;font-size:8px}.patient-visible-note{font-size:9px;color:#758980;margin-top:6px}.staff-panel{padding:21px 23px;margin-top:23px}.staff-panel h2{font-size:18px}.staff-panel p{margin:4px 0 0}.staff-form{display:grid;grid-template-columns:1.3fr .8fr auto;align-items:end;gap:10px;margin:17px 0}.staff-form .button{height:42px;font-size:10px}.staff-list{border-top:1px solid #e7eeea;padding-top:10px}.staff-row{display:flex;align-items:center;justify-content:space-between;padding:8px 2px;font-size:11px}.staff-role{color:#81938b;font-size:10px}.staff-booking-dialog{width:min(590px,calc(100vw - 28px));position:relative}.admin-booking-dialog form{display:grid;gap:13px}.admin-booking-dialog h2{margin:0;font:700 23px var(--font-head)}.admin-booking-dialog .eyebrow{margin:0}.admin-booking-dialog .muted{margin:0}.dialog-close{position:absolute;right:17px;top:13px;border:0;background:none;font-size:25px;color:#6b7c74}.admin-patient{border:1px solid #e1eae5;border-radius:12px;padding:13px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.admin-patient h3{grid-column:1/-1;margin:0;font:700 11px var(--font-head)}.admin-patient label{font-size:9px}.admin-patient input,.admin-patient select{height:38px;font-size:11px}.admin-booking-dialog .text-button{justify-self:start}.admin-booking-dialog .button{margin-top:3px}.empty-agenda{padding:36px;text-align:center;background:#fff;border:1px dashed #d3e1d8;border-radius:18px;color:#72877e;font-size:12px}
@media(max-width:850px){.hero-art{right:-7%;transform:scale(.82);transform-origin:right bottom}.hero-panel{padding-left:5%}.hero-copy{max-width:390px}.lookup-form{grid-template-columns:repeat(2,1fr)}.lookup-form .button{grid-column:2}.admin-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%;flex-wrap:wrap}.toolbar-actions .compact-date{flex:1}.toolbar-actions .compact-date input{min-width:150px}.login-panel{max-width:680px}.login-content{padding:40px 34px}}
@media(max-width:600px){.site-header{height:67px;padding:0 17px}.brand-mark{width:34px;height:34px;font-size:20px}.brand-name{font-size:17px}.header-right{gap:13px}.live-indicator{font-size:0}.live-indicator i{width:9px;height:9px}.staff-link{font-size:10px}.patient-shell{padding:17px 13px}.hero-panel{height:390px;align-items:flex-start;padding:28px 23px}.hero-panel:after{inset:40% 0 0 0;clip-path:ellipse(83% 72% at 57% 82%)}.hero-copy h1{font-size:39px}.hero-text{max-width:350px;font-size:12px}.hero-note{font-size:10px;max-width:320px}.hero-art{right:-17%;bottom:-30px;transform:scale(.73)}.lookup-card{padding:20px 17px;margin-top:14px}.card-heading,.section-intro{align-items:flex-start;flex-direction:column;gap:8px}.card-heading h2,.section-intro h2{font-size:18px}.lookup-form{grid-template-columns:1fr;gap:10px}.lookup-form .button{grid-column:auto}.lookup-form label{font-size:10px}.booking-area{padding-top:27px}.section-intro{margin-bottom:13px}.section-intro p{padding-left:40px}.booking-group{padding:17px 14px}.patient-list{grid-template-columns:1fr}.patient-form{grid-template-columns:1fr 1fr;padding:11px}.slot-grid{grid-template-columns:repeat(3,1fr);gap:6px}.slot-card{min-height:51px;padding:7px}.slot-card strong{font-size:12px}.slot-card small{font-size:8px}.double-tag{font-size:7px}.confirm-bar{align-items:stretch;flex-direction:column;padding:13px}.confirm-bar .button{width:100%}.patient-footer{flex-direction:column;gap:4px;font-size:9px}.lookup-row{align-items:flex-start;flex-direction:column}.login-panel{grid-template-columns:1fr;margin:12px 0;min-height:0}.login-decoration{height:142px}.login-decoration:before{width:180px;height:180px;top:-90px}.login-decoration:after{width:140px;height:140px;bottom:-85px}.login-glyph{font-size:72px}.login-decoration p{font-size:9px;margin:2px}.login-glyph span{font-size:20px;right:-18px}.login-content{padding:26px 22px 30px}.login-content h1{font-size:30px}.admin-shell{padding:25px 14px}.dashboard-titlebar{align-items:flex-start}.dashboard-titlebar h1{font-size:28px}.dashboard-titlebar>.button{padding:0 10px;font-size:9px;min-height:36px}.dashboard-titlebar .muted{font-size:10px}.admin-stats{gap:6px}.stat-card{padding:11px}.stat-card strong{font-size:20px}.stat-card span{font-size:8px}.toolbar-actions{display:grid;grid-template-columns:1fr auto}.toolbar-actions #generate-schedule{grid-column:1/-1}.toolbar-actions .compact-date{grid-column:1}.admin-day-head{align-items:flex-start;padding:12px}.admin-day-title h3{font-size:12px}.day-actions{flex-direction:column}.mini-button{font-size:8px;padding:0 7px;height:28px}.admin-slots{grid-template-columns:1fr 1fr;padding:9px;gap:7px}.admin-slot{padding:9px}.slot-admin-top{align-items:flex-start;flex-direction:column;gap:4px}.slot-admin-top strong{font-size:12px}.staff-form{grid-template-columns:1fr}.staff-form .button{width:100%}.staff-row{gap:10px}.admin-patient{grid-template-columns:1fr 1fr;padding:10px;gap:7px}.admin-booking-dialog{padding:29px 20px}.patient-footer{margin-top:22px}}
 .patient-form h4,.admin-patient h3{display:flex;align-items:center;justify-content:space-between}.remove-person{margin-left:auto;padding:2px 6px;border:0;background:transparent;color:#a06754;font-size:9px;font-weight:600}.remove-person:hover{text-decoration:underline}
/* Controls for preparing a custom day before publication. */
.schedule-add-group{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.schedule-add-group .compact-date{flex:1 1 115px}
@media(max-width:600px){.toolbar-actions{display:flex;flex-direction:column;align-items:stretch}.schedule-add-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-add-group .compact-date{min-width:0}.schedule-add-group .compact-date input{min-width:0;width:100%}.schedule-add-group button{grid-column:1/-1}}
