@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2) format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Cdzp-HQs.woff2) format("woff2"),url(/assets/cinzel-latin-600-normal-Ue3O2IYg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #3b0a16;--surface: #561322;--gold: #d4af37;--gold-muted: #b8963a;--text: #f5ede0}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.gold{color:var(--gold)}.splash{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:var(--bg)}.splash img{width:160px;height:160px;object-fit:contain}.splash h1{margin:0;font-size:2rem;letter-spacing:.08em}.screen{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem 1rem}.login-screen{background:radial-gradient(ellipse at 50% 40%,#3b0a160d,#14030873 65%,#080103d9),linear-gradient(180deg,#3b0a1640,#08010399),url(/login-bg.jpg) 32% center / cover no-repeat,var(--bg)}.login-screen .form{padding:1.25rem;border-radius:14px;background:#1e040b8c;border:1px solid rgba(212,175,55,.25);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.brand-title{font-family:Cinzel,Georgia,Times New Roman,serif;font-weight:600;font-size:clamp(2rem,9vw,2.75rem);letter-spacing:.12em;text-transform:uppercase;text-align:center;background:linear-gradient(100deg,#8a6a1f,#d4af37 25%,#fff3c4 45%,#d4af37 60%,#9c7a24 85%,#d4af37);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold);filter:drop-shadow(0 0 10px rgba(212,175,55,.35));animation:brand-shine 6s ease-in-out infinite}@keyframes brand-shine{0%,to{background-position:100% 0}50%{background-position:0% 0}}@media(prefers-reduced-motion:reduce){.brand-title{animation:none}}.screen .logo{width:96px;height:96px;object-fit:contain}.screen h1{margin:0}.form{width:100%;max-width:320px;display:flex;flex-direction:column;gap:.5rem}.form input{padding:.7rem;border-radius:8px;border:1px solid var(--gold-muted);background:var(--surface);color:var(--text);font-size:1rem}.btn-gold{margin-top:.5rem;padding:.75rem 1.5rem;border:0;border-radius:8px;background:var(--gold);color:var(--bg);font-weight:700;font-size:1rem;cursor:pointer}.btn-gold:disabled{opacity:.6}.link{background:none;border:0;color:var(--gold-muted);text-decoration:underline;cursor:pointer}.error{margin:0;color:#ffb4a8}.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:420px}.chip{padding:.6rem 1rem;border-radius:999px;border:1px solid var(--gold);background:var(--surface);color:var(--text);cursor:pointer}.chip-add{color:var(--gold);border-style:dashed}.lang-toggle{position:absolute;top:1rem;right:1rem;display:flex;gap:.25rem}.lang-toggle button{padding:.3rem .6rem;border:1px solid var(--gold-muted);border-radius:6px;background:transparent;color:var(--text);cursor:pointer}.lang-toggle button[aria-pressed=true]{background:var(--gold);color:var(--bg)}.shell{min-height:100%;display:flex;flex-direction:column}.shell-logo{width:40px;height:40px;object-fit:contain}.shell-name{font-weight:700;overflow-wrap:anywhere}.shell-role{font-size:.85rem;color:var(--gold-muted)}.shell-content{flex:1;min-width:0;display:flex;flex-direction:column}.shell-main{flex:1;min-width:0;padding:1rem}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--surface);border-bottom:1px solid var(--gold-muted)}.topbar .shell-name{flex:1;min-width:0}.menu-btn,.menu-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--gold);cursor:pointer}.menu-btn:focus-visible,.menu-close:focus-visible,.menu-item:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0000008c}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:40;width:min(280px,85vw);display:flex;flex-direction:column;overflow-y:auto;background:var(--surface);border-right:1px solid var(--gold-muted);transform:translate(-100%);visibility:hidden;transition:transform .2s ease,visibility 0s linear .2s}.sidebar.open{transform:none;visibility:visible;transition:transform .2s ease}.sidebar-head{display:flex;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid rgba(212,175,55,.25)}.sidebar-head .shell-logo{display:none}.sidebar-who{flex:1;min-width:0}.sidebar-head .avatar{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--gold);color:var(--bg);font-weight:700}.menu-list{flex:1;display:flex;flex-direction:column;gap:.25rem;margin:0;padding:.75rem;list-style:none}.menu-item{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.5rem .75rem;border-radius:8px;color:var(--text);text-decoration:none}.menu-item .icon{flex:none;color:var(--gold)}.menu-item.active{background:var(--gold);color:var(--bg);font-weight:600}.menu-item.active .icon{color:var(--bg)}.menu-bottom{margin-top:auto;padding-top:.5rem;border-top:1px solid rgba(212,175,55,.25)}.card{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;border-radius:10px;background:var(--surface)}.card h3{margin:0}.card .form{max-width:none}.card .lang-toggle{position:static}.hint{margin:0}.ok{margin:0;color:var(--gold)}@media(min-width:900px){.topbar,.menu-backdrop,.menu-close{display:none}.sidebar{width:240px;transform:none;visibility:visible;transition:none}.sidebar-head{flex-direction:column;align-items:flex-start}.sidebar-head .shell-logo{display:block;width:56px;height:56px}.shell-content{margin-left:240px}.shell-main{padding:1.5rem 2rem;max-width:720px}}.sch-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}.sch-toolbar .link{font-size:1.1rem}.sch-filter{position:static;margin-bottom:.75rem}.sch-grid-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:1rem;border-radius:10px}.sch-grid{border-collapse:collapse;font-size:.85rem}.sch-grid th,.sch-grid td{padding:.25rem;border:1px solid var(--surface);vertical-align:top}.sch-grid thead th{color:var(--gold);white-space:nowrap;font-weight:600}.sch-grid tbody th{position:sticky;left:0;z-index:1;background:var(--bg);text-align:left;min-width:6.5rem;max-width:8rem;overflow-wrap:anywhere}.sch-cell{display:flex;flex-direction:column;gap:.2rem;width:100%;min-width:5.5rem;min-height:2.75rem;padding:.35rem;border:0;border-radius:6px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.sch-shift{white-space:nowrap}.sch-shift .chip{font-size:.7rem;padding:0 .35rem}.sch-off{color:var(--gold-muted)}.rep-wrap{max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.rep-table{border-collapse:collapse;font-size:.85rem}.rep-table th,.rep-table td{padding:5px 6px;white-space:nowrap;text-align:right;border-bottom:1px solid var(--bg)}.rep-table thead th{color:var(--gold);font-weight:600}.rep-table th:first-child,.rep-table td:first-child{position:sticky;left:0;z-index:1;background:var(--surface);text-align:left;max-width:9rem;overflow:hidden;text-overflow:ellipsis}.rep-table tbody tr:hover td,.rep-table tbody tr[aria-selected=true] td{background:var(--bg)}.shift-line{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.my-days{list-style:none;margin:0;padding:0}.my-days li{display:flex;justify-content:space-between;gap:.75rem;padding:.4rem 0;border-bottom:1px solid var(--bg)}.my-days li>span{display:flex;flex-direction:column;align-items:flex-end}.backup-banner{display:block;margin:0 0 12px;padding:10px 14px;border-radius:8px;background:var(--gold);color:#3b0a16;font-weight:600;text-align:center;text-decoration:none}.sync-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin-bottom:.5rem}.sch-absent{color:var(--gold);font-style:italic;white-space:nowrap}.sch-hint{font-size:.7rem;color:var(--gold-muted)}.sch-worked{display:block;font-size:.75rem;color:#9fd8a4;white-space:nowrap}.evo-name{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem}.evo-name label{display:flex;flex-direction:column;flex:1 1 10rem;min-width:0}.evo-name input{width:100%;box-sizing:border-box}.evo-name .error{flex-basis:100%}.btn-big{width:100%;min-height:56px;margin-top:.25rem;font-size:1.2rem}.att-error{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.att-history{list-style:none;margin:0;padding:0}.att-history li{display:flex;flex-direction:column;gap:.35rem;padding:.5rem 0;border-bottom:1px solid var(--bg)}.att-line{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;min-width:0}.badge{padding:.1rem .5rem;border-radius:999px;border:1px solid var(--gold-muted);color:var(--gold);font-size:.75rem;white-space:nowrap}.att-form{max-width:none}.att-form label{display:flex;flex-direction:column;gap:.25rem}.att-form textarea{padding:.7rem;border-radius:8px;border:1px solid var(--gold-muted);background:var(--surface);color:var(--text);font:inherit;resize:vertical;box-sizing:border-box;width:100%}.att-form input{box-sizing:border-box;width:100%}.toast{position:fixed;left:1rem;right:1rem;bottom:4.5rem;z-index:20;padding:.75rem 1rem;border-radius:8px;background:var(--gold);color:var(--bg);font-weight:700;text-align:center}@media(min-width:900px){.toast{left:auto;right:2rem;bottom:2rem;max-width:420px}}.badge-alert{border-color:var(--gold);background:var(--gold);color:var(--bg)}.sch-loc{display:block;font-weight:600;color:var(--gold);overflow-wrap:anywhere}.day-location{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.day-location .lang-toggle{position:static;flex-wrap:wrap}.locations a{overflow-wrap:anywhere}.sch-filter{flex-wrap:wrap}.lang-toggle button[aria-pressed=true] .badge{color:var(--bg);border-color:var(--bg)}.alarms{display:flex;flex-direction:column;gap:.75rem;min-width:0}.alarm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.alarm-row{display:flex;flex-direction:column;gap:.35rem;min-width:0;padding-bottom:.5rem;border-bottom:1px solid var(--bg)}.alarm-row .btn-gold,.alarm-row .link{align-self:flex-start}.alarm-name{font-weight:600;overflow-wrap:anywhere}.badge-free{border-color:#4caf6a;color:#7fd69a}.badge-busy{border-color:#e0524f;background:#e0524f;color:#fff}.badge-wrap{white-space:normal}.durations{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0}.durations .btn-gold[aria-pressed=false]{opacity:.55}.home{display:flex;flex-direction:column;gap:.75rem;min-width:0}.home-card,.home-tile{display:flex;flex-direction:column;gap:.4rem;min-width:0;padding:1rem;border-radius:12px;background:var(--surface);border:1px solid var(--gold-muted);box-shadow:0 4px 14px #0000004d;animation:home-in .35s ease-out both}.home-card h2,.home-card h3,.home-card p{margin:0;overflow-wrap:anywhere}.home-date{opacity:.85}.home-date:first-letter{text-transform:uppercase}.home-big{font-size:1.15rem;font-weight:600}.home-muted{opacity:.75}.home-btn{align-self:flex-start;text-align:center;text-decoration:none;box-sizing:border-box}.home-error{font-size:.85rem}.home-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.75rem;min-width:0}.home-tile{text-decoration:none;color:var(--text);align-items:flex-start}.home-tile-n{font-size:1.8rem;font-weight:700;line-height:1}.home-tile-l{font-size:.9rem;overflow-wrap:anywhere}.home-birthdays{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.home-birthdays li{display:flex;align-items:center;gap:.6rem;min-width:0}.home-bname{flex:1;min-width:0;overflow-wrap:anywhere}.home-birthdays .avatar{flex:none;width:2.2rem;height:2.2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:var(--bg);font-weight:700;font-size:.85rem}@keyframes home-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.home-card,.home-tile{animation:none}}
