.confirmation-checkmark{width:80px;height:80px;margin:0 auto 1rem;border-radius:50%;background-color:#2ecc71;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff}.confirmation-button{margin-top:2rem;padding:.5rem 1rem;background-color:var(--accent-bg);border:none;border-radius:20px;color:var(--text-light);font-weight:500;font-size:1rem;cursor:pointer;box-shadow:0 1px 3px #0000001a;transition:background-color .2s ease;width:auto}.confirmation-button:hover{background-color:#d1e7ff}@media (prefers-color-scheme: dark){.confirmation-checkmark{background-color:#2ecc71;color:#fff}.confirmation-button{background-color:var(--accent-bg);color:var(--text-dark)}.confirmation-button:hover{background-color:#325d88}}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color-scheme:light dark;--bg-light: #fff;--bg-dark: #1c1c1e;--text-light: #000;--text-dark: #fff;--border-color: #ccc;--accent: #007aff;--accent-bg: #e6f0ff;--accent-dark: #3390ff;--accent-bg-dark: #264d73}html{box-sizing:border-box;margin:0;padding:0;width:100%;height:100%}body{margin:0;padding:0;background-color:var(--bg-light);color:var(--text-light);transition:all .2s ease-in-out;min-height:100dvh;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow-y:auto;-webkit-overflow-scrolling:touch}.multi-select-button{width:100%;padding:.6rem .75rem;margin:0;border-radius:6px;background-color:var(--bg-light);border:1px solid var(--border-color);font-size:.95rem;text-align:left;color:var(--text-light);transition:background-color .2s,border-color .2s;box-sizing:border-box}.multi-select-button.selected{background-color:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.expand-toggle{width:2.5rem;height:2.5rem;border-radius:6px;background-color:var(--bg-light);border:1px solid var(--border-color);font-size:0;line-height:1;padding:0;text-align:center;color:var(--text-light);transition:background-color .2s,border-color .2s;display:flex;align-items:center;justify-content:center}.expand-toggle:hover{background-color:var(--accent-bg)}.expand-toggle.selected{background-color:var(--bg-light);color:var(--text-light);border-color:var(--border-color)}@media (prefers-color-scheme: dark){:root{--accent: var(--accent-dark);--accent-bg: var(--accent-bg-dark)}body{background-color:var(--bg-dark);color:var(--text-dark)}input,select,button,.multi-select-button{background-color:#2c2c2e;color:#fff;border-color:#444}.multi-select-button:hover{background-color:#3a3a3c}.multi-select-button.selected{background-color:var(--accent-bg)!important;color:var(--accent)!important;border-color:var(--accent)!important}.expand-toggle,.expand-toggle.selected{background-color:#2c2c2e;color:#fff;border-color:#444}}.form-wrapper{width:90%;max-width:400px;min-width:300px;display:flex;flex-direction:column;gap:1.25rem;padding:2rem 1rem;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.phone-wrapper{width:90%;max-width:400px;min-width:300px;display:flex;flex-direction:column;gap:1.25rem;padding:2rem 1rem;box-sizing:border-box;margin-left:auto;margin-right:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}h1.title{font-size:1.5rem;margin:0;text-align:center}p.subtitle{font-size:1rem;margin:0 0 1rem;text-align:center;color:#666}label{display:flex;flex-direction:column;font-size:.9rem;gap:.5rem}input,select{font-size:1rem;padding:.5rem .75rem;border-radius:8px;border:1px solid var(--border-color);width:100%;box-sizing:border-box;appearance:none;background-position:right .5rem center;background-repeat:no-repeat;background-size:1rem}select.input option[disabled]{color:#888}.primary-button{background-color:var(--accent);color:#fff;border:none;padding:.75rem;border-radius:10px;font-size:1rem;cursor:pointer}.primary-button:hover{background-color:#005bb5}.multi-select-group{display:flex;flex-direction:column;gap:.25rem}select.input:invalid{color:#888}.form-step{display:flex;flex-direction:column;min-height:100dvh;padding:1rem;overflow:visible;-webkit-overflow-scrolling:touch}.step-inner{max-width:500px;width:100%;display:flex;flex-direction:column;gap:1rem;margin-inline:auto;margin-block:auto;overflow:visible;-webkit-overflow-scrolling:touch}.form-title{font-size:1.5rem;font-weight:700;text-align:center;margin:0}.form-instructions{font-size:1rem;text-align:center;color:#666;margin-bottom:1rem}.form-textarea{width:100%;font-size:1rem;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;resize:vertical;min-height:120px;background:var(--bg-light);color:var(--text-light);box-sizing:border-box}@media (prefers-color-scheme: dark){.form-textarea{background:#2c2c2e;color:#fff;border-color:#444}.form-instructions{color:#fff}}.multi-select-row{display:flex;flex-direction:column;gap:.25rem}.multi-select-pair{display:flex;align-items:center;gap:.5rem}.expand-toggle svg{width:1.3rem;height:1.3rem}.expand-details-wrapper{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .3s ease}.expand-details-wrapper.open{max-height:100px;opacity:1;margin-top:.5rem;margin-bottom:.5rem}.announcement-block{background-color:transparent;border:2px solid transparent;border-radius:16px;padding:1rem;margin-bottom:1rem;width:100%;box-sizing:border-box;text-align:left;color:var(--text-light);position:relative;background-clip:padding-box;z-index:1}.announcement-block:before{content:"";position:absolute;z-index:-1;inset:-2px;background:linear-gradient(135deg,#e6e6e6,#23292a);background-size:400% 400%;animation:animatedBorder 4s ease infinite;border-radius:18px;padding:2px;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.announcement-block>*{position:relative;z-index:1}@keyframes animatedBorder{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.announcement-title{font-size:1.2rem;font-weight:700;margin:0 0 .5rem}.announcement-subtitle{font-size:.95rem;margin:0 0 .75rem;color:#666}.announcement-icons{display:flex;justify-content:center;gap:1.5rem}.announcement-icon{display:flex;flex-direction:column;align-items:center;font-size:.85rem;color:var(--text-light)}.announcement-icon svg{font-size:1.25rem;margin-bottom:.25rem}.announcement-content{text-align:left}.announcement-icons{position:absolute;bottom:.75rem;right:.75rem;display:flex;gap:.5rem}@media (prefers-color-scheme: dark){.announcement-block{background-color:transparent;color:var(--text-dark)}.announcement-subtitle{color:#ccc}.announcement-icon{color:var(--text-dark)}}.announcement-ride-button{display:inline-block;width:fit-content;padding:.2rem .5rem;background-color:var(--accent-bg);color:var(--accent);font-size:.75rem;font-weight:500;border-radius:999px;text-decoration:none;transition:background-color .2s ease;text-align:left}.announcement-ride-button:hover{background-color:#d0e4ff}@media (prefers-color-scheme: dark){.announcement-ride-button{background-color:var(--accent-bg-dark);color:var(--accent)}.announcement-ride-button:hover{background-color:#3b618c}}.announcement-ride-button.confirmed{background-color:#c7f7c1;color:#2c662d}.link-button{display:block;text-decoration:none;cursor:pointer}.admin-wrapper{width:90%;max-width:640px;min-width:300px;display:flex;flex-direction:column;gap:1.25rem;padding:2rem 1rem 3rem;box-sizing:border-box;margin:0 auto}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-title{text-align:left;margin:0}.admin-subtitle{text-align:left;margin:-.75rem 0 0}.admin-logout{flex:none;background:none;border:1px solid var(--border-color);border-radius:8px;padding:.4rem .8rem;font-size:.85rem;color:var(--text-light);cursor:pointer}.admin-logout:hover{background-color:var(--accent-bg)}.admin-list{display:flex;flex-direction:column;gap:.9rem}.admin-row{display:grid;grid-template-columns:1.9rem 1fr;gap:.75rem;padding:1rem;border:1px solid var(--border-color);border-radius:12px;background-color:var(--bg-light)}.admin-row-order{display:flex;flex-direction:column;gap:.35rem}.admin-row-order button{width:1.9rem;height:1.9rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--bg-light);color:var(--text-light);cursor:pointer;font-size:.75rem;padding:0}.admin-row-order button:disabled{opacity:.35;cursor:not-allowed}.admin-row-fields{display:flex;flex-direction:column;gap:.6rem;grid-column:2}.admin-field{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;color:#666}.admin-field input{font-size:.95rem}.admin-path-input{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.admin-path-prefix{padding:.5rem 0 .5rem .75rem;color:#888}.admin-path-input input{border:none;border-radius:0;padding-left:.15rem}.admin-row-actions{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.25rem}.admin-toggle{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-light);cursor:pointer}.admin-toggle input{width:auto}input[type=checkbox]{appearance:auto;width:auto}.admin-click-count{font-size:.85rem;color:var(--text-light);white-space:nowrap}.admin-row-buttons{display:flex;gap:.5rem}.admin-save{padding:.45rem .9rem;font-size:.85rem;border-radius:8px;width:auto}.admin-delete{background:none;border:1px solid var(--border-color);border-radius:8px;padding:.45rem .9rem;font-size:.85rem;color:#b5482f;cursor:pointer}.admin-delete:hover{background-color:#f5e1db}.admin-row-error{grid-column:1 / -1;color:red;font-size:.82rem;margin:0}.admin-add{border:1px dashed var(--border-color);border-radius:12px;padding:1.1rem;display:flex;flex-direction:column;gap:.75rem}.admin-add-title{margin:0;font-size:1rem}@media (prefers-color-scheme: dark){.admin-row{background-color:#2c2c2e;border-color:#444}.admin-row-order button{background-color:#2c2c2e;color:#fff;border-color:#444}.admin-logout{color:#fff;border-color:#444}.admin-path-prefix,.admin-field{color:#aaa}.admin-delete{color:#e2836b;border-color:#444}.admin-delete:hover{background-color:#3a2018}.admin-add{border-color:#444}}@media (max-width: 480px){.admin-row{grid-template-columns:1fr 1.9rem;grid-template-areas:"fields order"}.admin-row-order{flex-direction:row;grid-area:order;justify-self:end;height:fit-content}.admin-row-fields,.admin-row-actions{grid-column:1}}
