:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#202a43;background:#f5f5fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{outline-offset:5px}button{cursor:pointer}button:disabled{cursor:default}.shell{max-width:860px;margin:auto;padding:24px 24px 110px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 32px}.brand{font-size:14px;font-weight:800;letter-spacing:.09em;color:#7545bb}.top-actions{display:flex;gap:10px;align-items:center}.text-button{border:1px solid #dfe0eb;border-radius:12px;padding:10px 14px;background:white;color:#343b53}.test-note{background:#fff2d9;color:#6b4a10;padding:12px 18px;border-radius:12px;font-size:13px;line-height:1.5}.eyebrow{font-size:12px;color:#7b829a;letter-spacing:.1em;text-transform:uppercase;margin:32px 0 8px}h1{font-size:clamp(28px,5vw,38px);letter-spacing:-.025em;margin:8px 0 12px}h2{font-size:20px;margin:0 0 10px}.muted{color:#727b91;line-height:1.6}.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:190px;padding:24px;border:0;border-radius:22px;transition:transform .15s,box-shadow .15s}.tile:hover{transform:translateY(-3px);box-shadow:0 10px 20px #23304a0a}.tile strong{font-size:23px;margin-top:20px}.tile small{margin-top:8px;font-size:14px;line-height:1.45}.tile .symbol{font-size:25px}.mint{background:#e3f3eb;color:#246b53}.blue{background:#e8edfb;color:#365f9b}.sand{background:#fff0d8;color:#94610f}.purple{background:#eee5fc;color:#7545ad}.nav{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-around;gap:16px;padding:18px 24px;background:#ffffffee;backdrop-filter:blur(10px);border:1px solid #e7e7f0;border-radius:18px;box-shadow:0 8px 35px #1c25400d;width:min(560px,calc(100% - 32px));font-size:14px;z-index:5}.nav .active{color:#7545bb;font-weight:700}.nav button{background:none;border:0;color:#727b91}.panel{background:white;border:1px solid #e9e9f2;padding:24px;border-radius:20px;margin:20px 0}.menu{display:grid;gap:10px;margin-top:24px}.menu a,.menu button{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:white;border:1px solid #e9e9f2;border-radius:16px;padding:20px;color:#202a43;font-weight:650}.badge{font-size:12px;border-radius:20px;padding:5px 10px;background:#f0e8fb;color:#7545ad;font-weight:400}.arrow{color:#7545bb}.schedule-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}input[type=month]{border:1px solid #dedee9;background:#fafafe;border-radius:10px;padding:9px}.shift{display:flex;gap:20px;justify-content:space-between;padding:16px 0;border-bottom:1px solid #eeeeF5}.shift:last-child{border:0}.shift span{color:#727b91}.error{color:#9b2936;line-height:1.5}dialog{max-width:440px;width:calc(100% - 40px);border:0;border-radius:22px;padding:28px;color:#202a43;box-shadow:0 20px 100px #15213e40}dialog::backdrop{background:#202a4360}dialog button{margin-top:12px;border:0;border-radius:12px;background:#7545bb;color:white;padding:12px 22px}[hidden]{display:none!important}@media(max-width:520px){.shell{padding:16px 18px 110px}.topbar{margin-bottom:20px}.cards{gap:12px}.tile{min-height:170px;padding:20px}.tile strong{font-size:20px}.top-actions{gap:6px}.text-button{padding:8px 10px;font-size:12px}.panel{padding:20px}}

.notice-count{display:inline-block;background:#7545bb;color:white;font-size:10px;line-height:16px;min-width:16px;text-align:center;border-radius:12px;padding:0 4px;margin-left:4px}

/* Shared compact header: brand remains centered independently of side controls. */
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin:8px 0 22px;min-height:42px}.topbar .brand{grid-column:2;text-align:center;white-space:nowrap}.topbar .top-actions{justify-self:end}.header-back{display:flex;align-items:center;gap:7px;font-size:13px;color:#727b91;min-width:0;padding:10px 0}.header-back>span:first-child{font-size:22px}.admin-entry{display:block;width:fit-content;margin:0 0 16px auto;font-size:12px}.compact-title{font-size:25px;margin:8px 0 18px}.menu{margin-top:16px;gap:8px}.menu a,.menu button{padding:17px 18px}.shell{padding-top:16px}@media(max-width:520px){.topbar{margin:0 0 18px}.back-label{display:none}.header-back{width:40px}.compact-title{font-size:23px}.topbar .text-button{font-size:12px;padding:8px 10px}.topbar .brand{font-size:14px}}
