:root{--brand: #0f3d5e;--accent: #e07a1f;--bg: #f3f5f8;--card: #ffffff;--text: #1d2430;--muted: #64707f;--border: #d5dbe3;--ok: #1f7a4d;--warn: #9a5b00;--err: #b42318;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #11161d;--card: #1b222c;--text: #e6eaf0;--muted: #98a3b3;--border: #2e3846;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}main{max-width:640px;margin:0 auto;padding:16px}h1,h2{margin:16px 0 8px}h2{font-size:1.1rem}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top));background:var(--brand);color:#fff}.site{display:flex;flex-direction:column;align-items:flex-start;background:none;border:0;color:inherit;padding:4px 0;text-align:left;min-width:0}.site small{opacity:.75;font-size:.75rem}.site span{font-size:1.15rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70vw}.syncbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 16px;font-size:.9rem;border-bottom:1px solid var(--border)}.syncbar.ok{background:color-mix(in srgb,var(--ok) 12%,var(--card))}.syncbar.waiting{background:color-mix(in srgb,var(--warn) 14%,var(--card))}.syncbar.offline{background:color-mix(in srgb,var(--muted) 20%,var(--card))}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}.form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.form h2{margin:0}label{display:flex;flex-direction:column;gap:4px;font-size:.9rem;color:var(--muted)}input,textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px;min-height:44px;width:100%}textarea{resize:vertical}fieldset{border:1px solid var(--border);border-radius:8px;padding:8px 12px 12px;display:flex;flex-direction:column;gap:8px}legend{color:var(--muted);font-size:.9rem;padding:0 4px}.row.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.break{display:grid;grid-template-columns:1fr auto auto auto auto;gap:6px;align-items:center}.break input[type=time]{width:7.2rem}button{font:inherit;min-height:44px;padding:0 16px;border-radius:8px;border:0;background:var(--brand);color:#fff;font-weight:600;cursor:pointer}button:disabled{opacity:.5;cursor:default}button.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}button.link{background:none;color:inherit;text-decoration:underline;padding:0 4px;min-height:32px;font-weight:500}button.icon{background:none;color:var(--muted);font-size:1.4rem;padding:0 8px}.primary-wide{width:100%;background:var(--accent);font-size:1.05rem;min-height:52px}.actions{display:flex;gap:8px;align-items:center}.actions .total{margin-right:auto;font-size:1.2rem}.list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.item{display:flex;justify-content:space-between;gap:12px;cursor:pointer;padding:12px}.item .right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.badge{font-size:.75rem;border-radius:999px;padding:2px 8px}.badge.pending{background:color-mix(in srgb,var(--warn) 20%,transparent);color:var(--warn)}.badge.synced{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.badge.rejected{background:color-mix(in srgb,var(--err) 18%,transparent);color:var(--err)}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--err);font-size:.9rem;margin:0}.error.banner{padding:6px 16px}.login{max-width:420px}.site-edit{display:flex;gap:8px;flex:1}.site-edit input{background:#fff;color:#1d2430}.site-edit button{background:var(--accent)}.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-actions a.link{color:inherit;text-decoration:underline}.platform-login{margin-top:16px;color:var(--muted)}.admin{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-nav{background:var(--brand);color:#fff;display:flex;flex-direction:column;padding:16px 12px;gap:16px}.admin-brand{display:flex;flex-direction:column;padding:0 8px}.admin-brand small{opacity:.75}.admin-nav nav{display:flex;flex-direction:column;gap:2px}.admin-nav nav a{color:#fff;text-decoration:none;padding:8px;border-radius:8px;opacity:.85}.admin-nav nav a:hover{background:#ffffff14;opacity:1}.admin-nav nav a.active{background:#ffffff29;opacity:1;font-weight:600}.admin-nav-footer{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:0 8px;font-size:.9rem}.admin-nav-footer a,.admin-nav-footer .muted{color:#fff;opacity:.8}.admin-main{padding:24px 32px;max-width:1200px;width:100%}.admin-loading{padding:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.page-header h1{margin:0 0 4px;font-size:1.5rem}.page-actions{display:flex;gap:8px}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.tile{text-decoration:none;color:var(--text);min-height:80px;display:flex;align-items:center}.tile:hover{border-color:var(--brand)}.table-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--border);border-radius:12px}.data-table{width:100%;border-collapse:collapse;font-size:.95rem}.data-table th{text-align:left;font-weight:600;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:10px 12px;border-bottom:1px solid var(--border)}.data-table tr:last-child td{border-bottom:0}.data-table tr.clickable{cursor:pointer}.data-table tr.clickable:hover td{background:color-mix(in srgb,var(--brand) 6%,transparent)}.field{display:flex;flex-direction:column;gap:4px}@media(max-width:800px){.admin{grid-template-columns:1fr}.admin-nav{padding:12px}.admin-nav nav{flex-direction:row;flex-wrap:wrap}.admin-nav-footer{flex-direction:row;flex-wrap:wrap;align-items:center;margin-top:0}.admin-main{padding:16px}}.dialog{border:1px solid var(--border);border-radius:12px;padding:20px;width:min(560px,calc(100vw - 32px));background:var(--card);color:var(--text)}.dialog::backdrop{background:#00000073}.dialog h2{margin:0 0 12px}.dialog-body{display:flex;flex-direction:column;gap:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.secret{display:flex;flex-direction:column;gap:4px}.secret-row{display:flex;gap:8px;align-items:center}.secret-row code{flex:1;padding:8px;background:var(--bg);border:1px solid var(--border);border-radius:8px;overflow-wrap:anywhere}.secret-row input{flex:1}.row-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.row-actions button{min-height:36px;padding:0 10px;font-size:.9rem}.data-table .badge{margin-left:6px}.check{display:flex;flex-direction:row;align-items:center;gap:8px;color:var(--text);font-size:.95rem}.check input{width:auto;min-height:0}.check.indent{padding-left:24px}.qr{align-self:center;width:240px;height:240px;image-rendering:pixelated;background:#fff;padding:8px;border-radius:8px}
