:root{color-scheme:light;font:16px/1.55 system-ui,-apple-system,'Segoe UI',sans-serif;color:#183445;background:#f2f5f6}*{box-sizing:border-box}body{margin:0}main{max-width:760px;margin:auto;padding:24px 14px 60px}h1{font-size:30px;margin:0 0 16px}h2{font-size:23px;margin:22px 0 14px}nav{display:flex;flex-wrap:wrap;gap:8px}nav a{border:1px solid #b5c8d0;border-radius:10px;padding:10px 13px;text-decoration:none;color:#244a60;background:#fff;min-height:44px}nav a[aria-current]{color:white;background:#285d75;border-color:#285d75}details{border-radius:12px;overflow:hidden;margin:14px 0;border:1px solid #b8c9d2}summary{padding:16px;cursor:pointer;font-weight:700;list-style:none;min-height:54px}summary::-webkit-details-marker{display:none}summary:after{content:'+';float:right;margin-left:8px}details[open]>summary:after{content:'−'}small{font-weight:400;opacity:.65;margin-left:6px}ul{list-style:none;padding:0 14px 12px;margin:0}.level{border-left-width:5px}.l1{background:#d8f0fa;border-color:#3687a8}.l2{background:#ffe9bc;border-color:#b77917}.l3{background:#ead8fa;border-color:#8550ac}.spell{padding:14px 0;border-top:1px solid #18344526}.spell-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.spell-title a{font-weight:700;text-decoration:none;color:#173e57;overflow-wrap:anywhere}.save{flex:0 0 44px;height:44px;font-size:25px;border:1px solid #688699;border-radius:10px;background:#ffffffaa;color:#2d5368;cursor:pointer;touch-action:manipulation}.save[aria-pressed=true]{background:#ffd15c;color:#493704;border-color:#a18120}.save:disabled{opacity:.4}p{margin:8px 0}.meta{font-size:13px;color:#425b6a}.selection{padding:15px;background:white;border:1px solid #c2d0d7;border-radius:12px}.limit-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.limit-row label{font-size:14px}input{font:inherit;max-width:100%;padding:10px;border:1px solid #9bb6c4;border-radius:8px;background:white;color:#183445;min-height:44px}#modifier{width:72px}.search-label{display:block;margin:18px 0}.search-label input{width:100%}.saved{background:#eff5f5;margin-bottom:0}.automatic{background:#e3f1e7;border-color:#83ac92}.other-group ul{padding:0}.other-group .meta,.group-note{padding:10px 0}.other-group details{border:0}.other-group summary{padding-left:0}.saved .spell{padding:12px;border:0;border-left:4px solid;border-radius:8px;margin:10px 0}.saved [data-level='1']{background:#d8f0fa;border-color:#3687a8}.saved [data-level='2']{background:#ffe9bc;border-color:#b77917}.saved [data-level='3']{background:#ead8fa;border-color:#8550ac}#message{border-radius:8px;background:#fff0d1;padding:12px;font-size:14px}[hidden]{display:none!important}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #457e9b;outline-offset:2px}

.automatic-info{padding:0 14px 6px;font-size:14px}.cast-cost{font-size:13px;color:#234d3d;background:#ffffff85;padding:7px 9px;border-radius:6px}
.saved-level{display:block;width:fit-content;margin-top:4px;padding:2px 7px;border-radius:5px;background:#ffffffa6;color:#29495c;font-size:12px;font-weight:600;line-height:1.5}
.l0,.saved [data-level='0']{background:#d9eee5;border-color:#358065}.cantrip-note{padding:0 14px;font-size:13px}.cantrip-pool{margin:12px;border-color:#7ba992;background:#ffffff45}.cantrip-pool summary{padding:14px}.fixed-cantrip{border-left:3px solid #358065;padding-left:10px}.pool-counter,#cantrip-counter{white-space:nowrap;font-size:13px}

#saved-list{padding:0 12px 12px}#saved-list>.level{margin:10px 0 0}.saved-empty{padding:4px 4px 0;font-size:14px}.saved .level .spell{border-left:0;padding:12px 0;border-top:1px solid #18344526;border-radius:0;margin:0}.saved .level ul{padding-bottom:6px}
#saved-cantrip-counter{display:inline-block;background:#d9eee5;color:#245f49;border:1px solid #7ba992;border-radius:6px;padding:2px 8px;margin:4px 8px;font-size:13px;font-weight:600;opacity:1;white-space:nowrap}

.saved-counters{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}.saved-counters #saved-cantrip-counter{margin:0;padding:0;border:0;background:none;font:inherit;color:#245f49}.selection>.automatic{margin-bottom:0}
.saved>.automatic{margin:0 12px 12px}.spellbook{background:#f4eddf;border-color:#b79b65}.spellbook #book-list{padding:0 12px 12px}.save{flex:0 0 auto;min-width:44px;max-width:155px;height:auto;min-height:44px;padding:6px 10px;font-size:14px;font-weight:600}.book-remove{font:inherit;font-size:13px;color:#6d4835;background:#fff9;border:1px solid #b79b65;border-radius:8px;min-height:44px;padding:7px 10px;cursor:pointer}.book-remove:disabled{opacity:.4}
