:root{color-scheme:light dark;--bg:#071720;--surface:#102631;--raised:#17333f;--soft:#213e49;--ink:#edf2f1;--muted:#98a9ae;--line:#31505a;--gold:#d0a55b;--red:#d05b51;--green:#3c9b78;--paper:#f4efdf;--paper2:#fffaf0;--pInk:#17252b;--pMuted:#697276;--shadow:0 18px 45px rgba(0,0,0,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 15% -10%,#173849 0,transparent 35rem),var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}.topbar{height:62px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,env(safe-area-inset-left));background:rgba(8,28,39,.93);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px)}button{cursor:pointer}.brand{display:flex;align-items:center;gap:10px;border:0;background:none;color:#fff}.brand span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #6d8995;border-radius:50%;font-size:10px}.top-actions{display:flex;align-items:center;gap:8px}.top-actions span{color:var(--muted);font-size:11px}.top-actions button{border:1px solid var(--line);border-radius:9px;padding:8px 11px;background:var(--surface);color:var(--ink)}.persistent{position:sticky;top:62px;z-index:40;display:grid;grid-template-columns:minmax(150px,1.3fr) repeat(3,minmax(75px,.45fr)) minmax(330px,2fr);background:rgba(16,38,49,.97);box-shadow:0 8px 22px rgba(0,0,0,.2);transition:.2s}.identity,.vital,.abilities{border:0;border-right:1px solid var(--line);padding:10px 14px;background:none;color:var(--ink);text-align:left}.identity small,.vital small{display:block;color:var(--red);font-size:9px;font-weight:900;letter-spacing:.11em}.identity strong{display:block;font-size:16px}.identity span,.vital span{color:var(--muted);font-size:10px}.identity i,.vital i{font-style:normal}.vital strong{display:block;font-size:21px}.abilities{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;border:0}.ability-chip{text-align:center;padding:6px 2px;border-radius:8px;background:var(--soft)}.ability-chip span{display:block;color:var(--muted);font-size:8px;font-weight:900}.ability-chip strong{font-size:15px}.collapse{display:none;position:absolute;right:5px;bottom:-16px;width:32px;height:18px;border:0;border-radius:0 0 8px 8px;background:var(--surface);color:var(--muted)}main{max-width:1160px;margin:auto;padding:34px 22px 105px}.view{display:none}.view.active{display:block}.hero small,.view-head small,.sheet-head small,dialog header small,.rest-card header small{color:var(--red);font-size:10px;letter-spacing:.14em;font-weight:900}.hero h1,.view-head h1,.sheet-head h1{margin:5px 0 7px;font:700 clamp(34px,5vw,52px)/1.05 Georgia,serif}.hero p,.sheet-head p{margin:0;color:var(--muted)}.modes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:26px}.mode{min-height:130px;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--surface),#132d39);color:var(--ink);text-align:left;box-shadow:var(--shadow)}.mode.combat{background:linear-gradient(145deg,#163d55,#112c3d)}.mode.magic{border-color:#6c5838}.mode b,.mode strong,.mode span{display:block}.mode b{color:var(--gold);font-size:23px;margin-bottom:17px}.mode strong{font-size:17px}.mode span{color:var(--muted);font-size:12px;margin-top:4px}.home-grid,.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.panel{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:15px;background:rgba(16,38,49,.9);box-shadow:0 8px 24px rgba(0,0,0,.1)}.home-grid .panel,.game-grid .panel{margin:0}.panel header,.view-head,.sheet-head,dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel h2,dialog h2{margin:0;font:700 24px Georgia,serif}.panel header button{border:0;background:none;color:var(--red);font-weight:800}.panel p{color:var(--muted);line-height:1.5}.primary,.secondary,.heal,.damage,.add{border:0;border-radius:9px;padding:11px 14px;font-weight:850}.primary{background:var(--gold);color:#17252b}.secondary{background:var(--soft);color:var(--ink)}.heal{background:var(--green);color:#fff}.damage{background:var(--red);color:#fff}.two-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.view-head{margin-bottom:18px}.switch,.filter,.more-tabs{display:flex;gap:4px;padding:4px;border-radius:10px;background:var(--surface)}.switch button,.filter button,.more-tabs button{border:0;border-radius:7px;padding:8px 11px;background:none;color:var(--muted);font-weight:800}.switch .active,.filter .active,.more-tabs .active{background:var(--gold);color:#17252b}.roundbar{display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.roundbar button{width:30px;height:30px;border:0;border-radius:7px;background:var(--soft);color:var(--ink)}.roundbar label{margin-left:auto;color:var(--muted);font-size:11px}.roundbar input{width:52px;margin-left:5px;padding:6px;border:1px solid var(--line);border-radius:6px;background:var(--soft);color:var(--ink)}.card-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.card-row:last-child{border:0}.card-row small,.card-row strong{display:block}.card-row small{color:var(--muted);margin-top:3px}.card-actions{display:flex;align-items:center;gap:6px}.card-actions button,.stepper button{border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--soft);color:var(--ink)}.roll{color:var(--gold)!important;font-weight:900}.stepper{display:flex;align-items:center;gap:8px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.chip{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:transparent;color:var(--ink)}.chip.active{background:var(--red);border-color:var(--red)}.health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.health-grid div{padding:10px;border-radius:9px;background:var(--soft);text-align:center}.health-grid small,.health-grid b{display:block}.health-grid small{color:var(--muted);font-size:9px}.death-saves{margin-top:12px}.death-saves div{display:flex;justify-content:space-between;margin-top:7px}.death-saves button{width:24px;height:24px;border:2px solid var(--line);border-radius:50%;background:none}.death-saves button.active{background:var(--red)}.death-saves .success button.active{background:var(--green)}.magic-stats{display:grid;grid-template-columns:120px 120px 1fr;gap:9px}.magic-stats div{padding:13px;border-radius:11px;background:var(--surface)}.magic-stats small,.magic-stats strong{display:block}.magic-stats small{color:var(--muted);font-size:9px}.magic-stats strong{font-size:19px;margin-top:3px}.slot-line{display:flex;align-items:center;gap:12px;margin:11px 0}.slot-row{display:flex;flex-wrap:wrap;gap:6px}.slot{width:32px;height:32px;border:2px solid var(--gold);border-radius:50%;background:none}.slot.used{background:var(--gold)}.spell-card{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid var(--line);padding:12px 3px;background:none;color:var(--ink);text-align:left}.spell-card span,.spell-card small,.spell-card strong{display:block}.spell-card small{color:var(--red);font-size:9px;font-weight:900;text-transform:uppercase}.spell-card strong{margin-top:3px}.spell-flags{color:var(--gold);font-size:12px}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.skill-card{display:flex;align-items:center;justify-content:space-between;border:0;border-radius:9px;padding:11px;background:var(--soft);color:var(--ink);text-align:left}.skill-card i{display:block;color:var(--gold);font-size:8px;font-style:normal;text-transform:uppercase}.skill-card strong{font-size:18px}.facts div,.coins{display:flex;justify-content:space-between;gap:8px}.facts small{color:var(--muted)}.more-tabs{width:max-content;margin-bottom:8px}.story dt{color:var(--red);font-size:9px;font-weight:900;text-transform:uppercase}.story dd{margin:3px 0 15px;white-space:pre-line}.inventory-item{padding:10px 0;border-bottom:1px solid var(--line)}.coins{margin-top:15px}.coins span{padding:8px;border-radius:8px;background:var(--soft)}
.sheet-view{max-width:1020px;margin:auto}.sheet-head{margin-bottom:18px}.sheet-index{position:sticky;top:174px;z-index:35;display:flex;gap:5px;align-items:center;overflow-x:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:rgba(16,38,49,.96);box-shadow:0 10px 25px rgba(0,0,0,.2);backdrop-filter:blur(16px)}.sheet-index span,.sheet-index button{flex:0 0 auto}.sheet-index span{padding:0 7px;color:var(--muted);font-size:9px;font-weight:900}.sheet-index button{border:0;border-radius:7px;padding:8px 10px;background:none;color:var(--ink);font-weight:750}.sheet-index button:hover{background:var(--soft)}.paper{margin-top:14px;padding:24px;border-radius:17px;background:linear-gradient(145deg,var(--paper2),var(--paper));color:var(--pInk);box-shadow:var(--shadow);scroll-margin-top:235px}.paper-title{display:flex;align-items:center;gap:11px;margin-bottom:20px;padding:13px 15px;border-radius:11px;background:linear-gradient(100deg,#102a3d,#1b4c65);color:#fff}.paper-title span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #76909b;border-radius:50%;font-size:10px;color:#e7c57f}.paper-title h2{margin:0;font:700 20px Georgia,serif}.paper h3{margin:24px 0 12px;padding-bottom:7px;border-bottom:1px solid #bdb59f;color:#15364a;font-size:13px;text-transform:uppercase;letter-spacing:.1em;scroll-margin-top:235px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wide{grid-column:1/-1}.paper label{color:var(--pMuted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.paper input,.paper textarea,.paper select{display:block;width:100%;margin-top:4px;padding:9px;border:1px solid #c7c0ad;border-radius:7px;background:rgba(255,255,255,.72);color:var(--pInk)}.paper input:focus,.paper textarea:focus,.paper select:focus{outline:0;border-color:#b98a40;box-shadow:0 0 0 3px rgba(208,165,91,.25)}.paper input[readonly]{border:0;background:#173a50;color:#fff;font-weight:900}.ability-inputs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.ability-input{padding:10px;border-top:3px solid #173a50;border-radius:8px;background:rgba(255,255,255,.5)}.ability-name{margin-bottom:7px;font:800 12px Georgia,serif}.skill-inputs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.skill-input-row{display:grid;grid-template-columns:1fr auto 58px 38px;align-items:center;gap:7px;padding:8px;border:1px solid #d0c8b4;border-radius:8px;background:rgba(255,255,255,.42)}.skill-input-row small,.skill-input-row strong{display:block}.skill-input-row small{color:var(--pMuted);font-size:8px}.check{display:flex;align-items:center;gap:4px}.check input{width:17px;height:17px;margin:0}.extra input{padding:5px}.skill-input-row output{font-size:17px;font-weight:900;color:#173a50}.editor-row,.spell-edit{margin-bottom:7px;border:1px solid #d0c8b4;border-radius:9px;background:rgba(255,255,255,.4)}.editor-row summary,.spell-edit summary{display:flex;align-items:center;justify-content:space-between;padding:11px;cursor:pointer}.editor-fields,.spell-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 11px 11px}.remove{border:0;background:none;color:#b74740;text-align:left;font-weight:850}.add{margin-top:5px;background:#173a50;color:#fff}.spell-level{margin-top:12px;border:1px solid #c8c0ab;border-radius:10px;overflow:hidden}.spell-level[hidden]{display:none}.spell-level-head{display:flex;align-items:center;justify-content:space-between;padding:11px;background:rgba(20,57,77,.09)}.spell-level-head h4{margin:0;font:700 17px Georgia,serif}.slot-editor{display:flex;gap:6px}.slot-editor input{width:58px;padding:5px}.spell-editor-list{padding:8px}.spell-options{display:flex;gap:10px}.spell-options label{display:flex;align-items:center;gap:4px}.spell-options input{width:16px;height:16px;margin:0}dialog{width:min(92vw,460px);padding:0;border:0;border-radius:17px;background:var(--surface);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.5)}dialog::backdrop{background:rgba(2,12,18,.72)}dialog form{padding:20px}dialog header button{border:0;background:none;color:var(--muted);font-size:27px}.hp-display{text-align:center;margin:18px}.hp-display b{font-size:55px}.hp-display span{font-size:24px;color:var(--muted)}.hp-display small{display:block;color:var(--gold)}dialog label{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}dialog input,dialog select{width:100%;margin:5px 0 13px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--ink)}.full{width:100%;margin-top:10px}.roll-result{display:flex;align-items:center;justify-content:center;gap:12px;margin:25px 0;font-size:27px}.roll-result strong{font-size:45px;color:var(--gold)}#spellDialogBody dl{display:grid;grid-template-columns:1fr 1fr;gap:7px}#spellDialogBody dl div{padding:9px;border-radius:8px;background:var(--soft)}#spellDialogBody dt{color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase}#spellDialogBody dd{margin:3px 0 0}#spellDialogBody p{line-height:1.5;white-space:pre-line}#castControls{padding-top:10px}.bottom-nav{display:none;position:fixed;z-index:60;left:0;right:0;bottom:0;grid-template-columns:repeat(5,1fr);padding:7px 5px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(16,38,49,.98)}.bottom-nav button{border:0;background:none;color:var(--muted);font-size:9px}.bottom-nav b{display:block;font-size:18px}.bottom-nav .active{color:var(--gold)}#toast{position:fixed;z-index:90;left:50%;bottom:85px;transform:translate(-50%,15px);padding:10px 14px;border-radius:9px;background:var(--gold);color:#17252b;font-weight:850;opacity:0;transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.topbar{height:56px}.persistent{top:56px;grid-template-columns:1.4fr repeat(3,.62fr)}.identity,.vital{padding:8px}.abilities{grid-column:1/-1;padding:6px 9px;border-top:1px solid var(--line)}.collapse{display:block}.persistent.compact .identity span,.persistent.compact .vital span,.persistent.compact .abilities{display:none}.persistent.compact{grid-template-columns:1.5fr repeat(3,1fr)}main{padding:25px 13px 95px}.bottom-nav{display:grid}.modes{grid-template-columns:1fr 1fr;gap:8px}.mode{min-height:108px;padding:14px}.mode b{margin-bottom:9px}.home-grid,.game-grid{grid-template-columns:1fr}.skill-grid{grid-template-columns:1fr 1fr}.sheet-index{top:166px}.persistent.compact~main .sheet-index{top:112px}.paper{padding:15px;scroll-margin-top:225px}.paper h3{scroll-margin-top:225px}.ability-inputs{grid-template-columns:repeat(3,1fr)}.skill-inputs{grid-template-columns:1fr}.editor-fields,.spell-fields{grid-template-columns:1fr}.magic-stats{grid-template-columns:80px 90px 1fr}.filter button{padding:7px;font-size:10px}}
@media(max-width:430px){.identity{grid-column:1/3}.persistent{grid-template-columns:repeat(3,1fr)}.vital{text-align:center;border-top:1px solid var(--line)}.persistent.compact{grid-template-columns:1.6fr repeat(3,1fr)}.persistent.compact .identity{grid-column:auto}.persistent.compact .vital{border-top:0}.abilities{gap:4px}.hero h1,.view-head h1,.sheet-head h1{font-size:34px}.view-head{align-items:flex-end}.panel{padding:14px}.sheet-head p{max-width:230px}.sheet-index{top:212px}.persistent.compact~main .sheet-index{top:111px}.sheet-index span{display:none}.sheet-index button{padding:7px 9px;font-size:11px}.paper{padding:11px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.ability-inputs{grid-template-columns:1fr 1fr}.skill-input-row{grid-template-columns:1fr 48px 48px 34px;gap:5px;padding:7px}.check{font-size:0}.check:after{content:'PROF';font-size:7px}.spell-level-head{align-items:flex-start}.spell-level-head>div{max-width:65%}.magic-stats strong{font-size:14px}.coins{display:grid;grid-template-columns:1fr 1fr}}
.save-quick{display:grid!important;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:13px}.save-quick button{width:auto!important;height:auto!important;padding:7px 2px!important;border:1px solid var(--line)!important;border-radius:7px!important;background:var(--soft)!important;color:var(--ink)!important;font-size:10px!important}
.manager{padding:20px}.character-choice{display:flex;justify-content:space-between;width:100%;margin-top:7px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--ink);text-align:left}.character-choice.active{border-color:var(--gold)}.character-choice small{color:var(--muted)}
@media(max-width:800px){.home-grid .rest-card{padding:12px}.home-grid .rest-card p{display:none}.home-grid .rest-card h2{font-size:20px}.home-grid .rest-card .two-actions{margin-top:9px}}

/* Dragon chronicle visual system */
:root{--bg:#09080b;--surface:#181318;--raised:#24191c;--soft:#2d2224;--ink:#f3ead9;--muted:#b7a99a;--line:#564039;--gold:#c9a45c;--red:#a52d3d;--green:#4b916f;--paper:#e8dbc0;--paper2:#f7eed9;--pInk:#241b18;--pMuted:#77685c;--shadow:0 22px 50px rgba(0,0,0,.38)}
body{background-color:var(--bg);background-image:radial-gradient(circle at 50% -8%,rgba(135,35,48,.24),transparent 32rem),linear-gradient(30deg,rgba(201,164,92,.025) 12%,transparent 12.5%,transparent 87%,rgba(201,164,92,.025) 87.5%),linear-gradient(150deg,rgba(201,164,92,.025) 12%,transparent 12.5%,transparent 87%,rgba(201,164,92,.025) 87.5%);background-size:auto,38px 66px,38px 66px}
.topbar{background:linear-gradient(90deg,rgba(13,9,12,.98),rgba(42,15,21,.97),rgba(13,9,12,.98));border-bottom:1px solid #705344;box-shadow:0 5px 24px rgba(0,0,0,.45)}.topbar:after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:3px;background:linear-gradient(90deg,transparent,var(--gold),var(--red),var(--gold),transparent);opacity:.55}.brand span{width:40px;height:40px;border:0;border-radius:0;background:url('dragon-sigil.svg') center/contain no-repeat;font-size:0}.brand b{font:700 17px Georgia,serif;letter-spacing:.035em}.top-actions button{border-color:#654b3f;background:linear-gradient(#251a1d,#171114)}
.persistent{background:linear-gradient(100deg,rgba(25,17,20,.98),rgba(38,20,24,.98),rgba(18,14,16,.98));border-bottom:1px solid #65483d}.identity,.vital,.abilities{border-color:#533c35}.identity small,.vital small{color:#d36a72}.ability-chip{position:relative;background:linear-gradient(145deg,#312326,#21191b);border:1px solid #4e3933;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}.ability-chip:after{content:'';position:absolute;inset:3px;border-top:1px solid rgba(201,164,92,.26);pointer-events:none}.collapse{background:#2a1c20;border:1px solid #65483d;color:var(--gold)}
.hero{position:relative;min-height:175px;padding:25px 220px 20px 4px;display:flex;flex-direction:column;justify-content:center}.hero:after{content:'';position:absolute;right:20px;top:-10px;width:190px;height:190px;background:url('dragon-sigil.svg') center/contain no-repeat;filter:drop-shadow(0 0 22px rgba(201,164,92,.12));opacity:.62}.hero small,.view-head small,.sheet-head small{color:#d85b68}.hero h1,.view-head h1,.sheet-head h1{font-weight:700;text-shadow:0 2px 15px rgba(0,0,0,.5)}
.mode{position:relative;overflow:hidden;border-color:#634b40;border-radius:3px;background:linear-gradient(145deg,#21181b,#120f12);clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px)}.mode:after{content:'';position:absolute;inset:5px;border:1px solid rgba(201,164,92,.16);clip-path:inherit;pointer-events:none}.mode.combat{background:radial-gradient(circle at 100% 0,rgba(165,45,61,.28),transparent 55%),linear-gradient(145deg,#29181d,#120f12)}.mode.magic{background:radial-gradient(circle at 100% 0,rgba(74,72,143,.3),transparent 55%),linear-gradient(145deg,#201a29,#120f12)}.mode b{color:#dfbd72;text-shadow:0 0 12px rgba(201,164,92,.35)}
.panel{position:relative;border-color:#5f463b;border-radius:4px;background:linear-gradient(145deg,rgba(35,25,28,.96),rgba(19,15,17,.96));box-shadow:inset 0 0 0 3px rgba(201,164,92,.025),0 14px 32px rgba(0,0,0,.24)}.panel:before{content:'◆';position:absolute;left:10px;top:8px;color:rgba(201,164,92,.35);font-size:7px}.panel h2,dialog h2{color:#f0dec0}.primary{border:1px solid #e1bf76;border-radius:3px;background:linear-gradient(#d5b46c,#ad813d);box-shadow:inset 0 1px rgba(255,255,255,.3),0 4px 12px rgba(0,0,0,.2)}.secondary{border:1px solid #5b453c;border-radius:3px;background:linear-gradient(#312428,#20191b)}.switch,.filter,.more-tabs{border:1px solid #5b433b;border-radius:3px;background:#120f11}.switch button,.filter button,.more-tabs button{border-radius:1px}.switch .active,.filter .active,.more-tabs .active{background:linear-gradient(#c7a25b,#a77b39)}.roundbar{border-radius:3px;border-color:#5f463b;background:linear-gradient(90deg,#21171a,#171215)}
.card-row{border-color:#4c3833}.card-actions button,.stepper button{border-radius:3px;border-color:#60483e;background:#2b2022}.chip{border-radius:3px;border-color:#5d453c;background:linear-gradient(#271c20,#191416)}.chip.active{background:linear-gradient(#b63a49,#7e1e2c);border-color:#d26972}.health-grid div,.facts div,.coins span,#spellDialogBody dl div{border:1px solid #503b35;border-radius:2px;background:linear-gradient(#2a2022,#20191b)}.slot{position:relative;border-color:#c8a45c;box-shadow:inset 0 0 0 3px #161114}.slot.used{background:radial-gradient(circle,#d8bb79 0 28%,#8e642c 31% 55%,#2a1c1e 58%)}.spell-card{border-color:#4f3934}.spell-flags{color:#d3ac62}.skill-card{border:1px solid #4f3a34;border-radius:2px;background:linear-gradient(145deg,#2b2022,#1d1719)}
.sheet-index{border-color:#765649;border-radius:2px;background:linear-gradient(90deg,rgba(27,18,21,.98),rgba(48,25,30,.98),rgba(27,18,21,.98))}.sheet-index button{border-radius:1px}.sheet-index button:hover{background:#3a282b;color:#e4bd70}.paper{position:relative;border:1px solid #b49c73;border-radius:2px;background-color:var(--paper);background-image:radial-gradient(circle at 10% 10%,rgba(112,75,45,.08),transparent 22rem),repeating-linear-gradient(0deg,rgba(70,45,30,.018) 0,rgba(70,45,30,.018) 1px,transparent 1px,transparent 4px);box-shadow:inset 0 0 0 5px rgba(115,83,49,.08),0 22px 50px rgba(0,0,0,.38)}.paper:after{content:'❧';position:absolute;right:14px;bottom:9px;color:#9e7f4e;font-size:20px}.paper-title{border-radius:0;background:linear-gradient(90deg,#2c171c,#762532 50%,#2c171c);border-top:1px solid #d0aa61;border-bottom:1px solid #d0aa61}.paper-title span{border-color:#d6b56f}.paper h3{border-color:#a89470;color:#702633}.paper input,.paper textarea,.paper select{border-radius:2px;border-color:#b9a888;background:rgba(255,252,240,.64)}.paper input:focus,.paper textarea:focus,.paper select:focus{border-color:#8f2632;box-shadow:0 0 0 2px rgba(143,38,50,.18)}.ability-input{border-radius:2px;border-top-color:#812b37;background:rgba(255,250,236,.6)}.ability-input input[readonly],.paper input[readonly]{background:linear-gradient(#462029,#2b171c)}.skill-input-row,.editor-row,.spell-edit,.spell-level{border-radius:2px;border-color:#b5a17d;background:rgba(255,250,236,.38)}.add{border:1px solid #7f3340;border-radius:2px;background:linear-gradient(#7f2a37,#4b1d25)}
dialog{border:1px solid #755448;border-radius:3px;background:linear-gradient(145deg,#261b1f,#151114);box-shadow:0 35px 90px rgba(0,0,0,.7)}dialog:before{content:'';position:absolute;inset:5px;border:1px solid rgba(201,164,92,.16);pointer-events:none}.bottom-nav{background:linear-gradient(#21171b,#100d0f);border-color:#5a4038}.bottom-nav .active{color:#e0b968}.bottom-nav button b{text-shadow:0 0 10px rgba(201,164,92,.3)}#toast{border:1px solid #dfbd72;border-radius:2px;background:linear-gradient(#cba85f,#a77936)}
@media(max-width:800px){.hero{min-height:135px;padding:10px 125px 10px 0}.hero:after{right:0;width:125px;height:125px}.mode{clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px)}}
@media(max-width:430px){.hero{min-height:125px;padding-right:105px}.hero:after{width:110px;height:110px;right:-8px;top:5px}.hero h1{font-size:31px}.brand b{font-size:15px}.brand span{width:34px;height:34px}.mode{min-height:104px}.paper-title{margin:-2px -2px 18px}}
/* Portale di accesso */
.auth-gate{min-height:100dvh;display:grid;grid-template-columns:minmax(280px,540px) minmax(300px,430px);place-content:center;align-items:center;gap:clamp(32px,7vw,100px);padding:32px;background:radial-gradient(circle at 20% 20%,rgba(179,126,48,.18),transparent 32%),linear-gradient(135deg,#06121b,#102b3b 58%,#07131d);color:#f4ead3}
.auth-gate[hidden]{display:none}.auth-crest{text-align:center}.auth-crest img{width:min(260px,55vw);filter:drop-shadow(0 18px 42px rgba(0,0,0,.55))}.auth-crest small{display:block;letter-spacing:.28em;color:#d6ad62;margin-top:18px}.auth-crest h1{font-size:clamp(2.2rem,6vw,4.6rem);line-height:.95;margin:14px 0}.auth-crest p{max-width:480px;margin:auto;color:#c8c1b2}
.auth-card{background:linear-gradient(145deg,rgba(251,242,219,.98),rgba(222,201,158,.96));color:#18212a;padding:clamp(24px,5vw,42px);border:1px solid #d6ad62;border-radius:4px 28px 4px 28px;box-shadow:0 30px 80px rgba(0,0,0,.5);position:relative}.auth-card:before{content:"";position:absolute;inset:8px;border:1px solid rgba(84,57,26,.2);border-radius:2px 22px 2px 22px;pointer-events:none}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:28px}.auth-tabs button{border:0;border-bottom:2px solid rgba(31,42,49,.2);padding:12px;background:transparent;color:#665d50}.auth-tabs button.active{color:#173444;border-color:#9c642e}.auth-card label{display:grid;gap:8px;margin:16px 0;font-weight:700}.auth-card input{position:relative;width:100%;padding:14px;border:1px solid #a89776;border-radius:8px;background:rgba(255,255,255,.55);font:inherit}.auth-card .primary{margin-top:22px}.auth-message{min-height:42px;color:#685b49;font-size:.88rem;margin:14px 0 0}
@media(max-width:760px){.auth-gate{grid-template-columns:1fr;padding:22px;align-content:start}.auth-crest img{width:120px}.auth-crest h1{font-size:2.25rem}.auth-crest p{display:none}.auth-card{padding:24px;margin:auto;width:min(100%,430px)}}
.auth-tabs{grid-template-columns:1fr}

/* Update 2 — login fantasy e adattamento telefono/tablet */
:root{--tap:44px}
button,input,select,textarea{touch-action:manipulation}
.auth-gate{position:relative;overflow:hidden;background:
 radial-gradient(circle at 18% 20%,rgba(155,42,55,.34),transparent 28rem),
 radial-gradient(circle at 82% 82%,rgba(201,164,92,.13),transparent 25rem),
 repeating-linear-gradient(60deg,rgba(201,164,92,.025) 0 1px,transparent 1px 18px),#09080b}
.auth-gate:before,.auth-gate:after{content:"";position:absolute;width:42vw;aspect-ratio:1;border:1px solid rgba(201,164,92,.11);transform:rotate(45deg);pointer-events:none}
.auth-gate:before{left:-25vw;top:-22vw}.auth-gate:after{right:-27vw;bottom:-25vw}
.auth-crest,.auth-card{z-index:1}.auth-crest img{filter:drop-shadow(0 0 28px rgba(201,164,92,.2)) drop-shadow(0 24px 38px rgba(0,0,0,.65))}
.auth-crest h1{font-family:Georgia,serif;color:#f4e4c6;text-shadow:0 3px 22px #000}.auth-crest small{color:#d7ad61}.auth-crest p{color:#b9aa9b}
.auth-card{border-radius:2px;background-color:#eadfc8;background-image:radial-gradient(circle at 10% 5%,rgba(126,48,53,.1),transparent 18rem),repeating-linear-gradient(0deg,rgba(74,48,31,.025) 0 1px,transparent 1px 4px);border-color:#b99b63;box-shadow:inset 0 0 0 5px rgba(91,57,34,.08),0 34px 90px rgba(0,0,0,.62)}
.auth-card:before{inset:7px;border-radius:0;border-color:rgba(115,77,43,.28)}.auth-card:after{content:"◆";position:absolute;left:50%;top:12px;transform:translateX(-50%);color:#8d2c39;font-size:10px}
.auth-tabs button{min-height:var(--tap);font-family:Georgia,serif;font-size:17px;color:#672530;border-color:#8d2c39}.auth-card label{color:#6d5d50;letter-spacing:.07em;text-transform:uppercase;font-size:10px}.auth-card input{min-height:48px;border-radius:2px;border-color:#ad9874;background:rgba(255,251,239,.74);color:#241b18}.auth-card input:focus{outline:0;border-color:#8d2c39;box-shadow:0 0 0 3px rgba(141,44,57,.17)}.auth-card .primary{min-height:50px;background:linear-gradient(#d1ad64,#a97c39);border-color:#e4c47d}.auth-message{text-align:center}

@media (min-width:801px) and (max-width:1100px){
 .persistent{grid-template-columns:minmax(150px,1.2fr) repeat(3,minmax(68px,.45fr));}
 .persistent .abilities{grid-column:1/-1;padding:7px 14px;border-top:1px solid var(--line)}
 .modes{grid-template-columns:repeat(2,1fr)}.mode{min-height:110px}
 .ability-inputs{grid-template-columns:repeat(3,1fr)}
 .sheet-index{top:169px}
}

@media (max-width:600px){
 body{font-size:15px}.topbar{padding-inline:8px;height:54px}.brand b,.top-actions>span{display:none}.brand span{width:36px;height:36px}
 .top-actions{gap:5px}.top-actions button{min-width:var(--tap);min-height:38px;padding:7px 9px;font-size:12px}.top-actions button[title="Annulla"]{font-size:18px}
 .persistent{top:54px;grid-template-columns:1.65fr repeat(3,1fr)}.identity{grid-column:auto!important}.identity span{display:none}.identity,.vital{min-width:0;padding:7px 5px;text-align:center;border-top:0}.identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.vital strong{font-size:18px}.vital span{font-size:8px}
 .abilities{grid-column:1/-1;padding:5px 7px;gap:4px}.ability-chip{padding:4px 1px}.ability-chip strong{font-size:14px}.collapse{display:none}
 main{padding:18px 10px 92px}.hero{min-height:112px;padding:7px 92px 7px 1px}.hero:after{width:94px;height:94px}.hero h1,.view-head h1,.sheet-head h1{font-size:29px}.hero p{font-size:12px}
 .modes{margin-top:15px}.mode{min-height:96px;padding:13px}.mode b{font-size:20px;margin-bottom:7px}.mode strong{font-size:15px}.mode span{font-size:11px}
 .panel{padding:13px}.panel h2,dialog h2{font-size:21px}.panel header button,.switch button,.filter button,.more-tabs button{min-height:var(--tap)}
 .view-head{align-items:center;gap:7px}.switch{flex:0 0 auto}.switch button{padding:7px 9px}
 .roundbar{padding:8px}.roundbar button,.card-actions button,.stepper button{min-width:var(--tap);min-height:var(--tap)}.roundbar label{font-size:9px}.roundbar input{min-height:38px}
 .card-row{align-items:flex-start}.card-actions{flex-wrap:wrap;justify-content:flex-end}.chips{gap:6px}.chip{min-height:var(--tap);padding:8px 10px}
 .magic-stats{grid-template-columns:1fr 1fr}.magic-stats div:last-child{grid-column:1/-1}.slot{width:38px;height:38px}.filter{max-width:100%;overflow-x:auto}.filter button{flex:0 0 auto}
 .skill-grid{grid-template-columns:1fr}.skill-card{min-height:var(--tap)}.more-tabs{width:100%;overflow-x:auto}.more-tabs button{flex:1 0 auto}
 .sheet-head{align-items:flex-start}.sheet-head p{font-size:11px}.sheet-head .primary{min-height:var(--tap)}.sheet-index{top:145px;margin-inline:-2px;padding:5px}.sheet-index button{min-height:40px}
 .paper{padding:10px;scroll-margin-top:200px}.paper h3{scroll-margin-top:200px}.paper-title{padding:10px;margin:-1px -1px 15px}.paper input,.paper textarea,.paper select{min-height:44px;font-size:16px}.ability-inputs{grid-template-columns:repeat(2,1fr)}.skill-input-row{grid-template-columns:minmax(105px,1fr) 44px 48px 38px}.skill-input-row output{font-size:15px}.editor-row summary,.spell-edit summary{min-height:var(--tap)}.spell-options{flex-wrap:wrap}.spell-options label{min-height:36px}
 dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 20px);overflow:auto}dialog form{padding:16px}.two-actions button,.primary,.secondary,.heal,.damage,.add{min-height:var(--tap)}
 .bottom-nav button{min-height:51px}.auth-gate{padding:18px;gap:15px;align-content:center}.auth-crest img{width:96px}.auth-crest small{margin-top:7px}.auth-crest h1{margin:7px 0;font-size:1.9rem}.auth-card{padding:23px 20px 20px}.auth-tabs{margin-bottom:18px}.auth-card label{margin:12px 0}.auth-card .primary{margin-top:15px}.auth-message{margin-top:10px;min-height:32px}
}

@media (max-width:370px){
 .top-actions button{padding:6px 7px}.persistent{grid-template-columns:1.45fr repeat(3,1fr)}.identity small,.vital small{font-size:7px}.identity strong{font-size:12px}.vital strong{font-size:16px}.mode{padding:11px}.sheet-index{top:141px}.skill-input-row{grid-template-columns:minmax(86px,1fr) 40px 43px 32px;gap:3px}
}

@media (orientation:landscape) and (max-height:520px){
 .auth-gate{grid-template-columns:minmax(180px,300px) minmax(300px,420px);padding:14px}.auth-crest img{width:92px}.auth-crest h1{font-size:1.75rem}.auth-crest p{display:none}.auth-card{padding:18px 22px}.auth-card label{margin:8px 0}.auth-card input{min-height:42px}.auth-card .primary{min-height:44px;margin-top:10px}
}
.spell-tools{display:grid;grid-template-columns:minmax(180px,1fr) 130px;gap:9px;margin:14px 0 5px}.spell-tools label{display:grid;gap:5px;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.spell-tools input,.spell-tools select{min-height:42px;width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:2px;background:#130f11;color:var(--ink)}.spell-tools input:focus,.spell-tools select:focus{outline:2px solid rgba(201,164,92,.35);border-color:var(--gold)}
.character-list{display:grid;gap:7px;margin:15px 0}.character-entry{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);background:var(--soft)}.character-entry.active{border-color:var(--gold);box-shadow:inset 3px 0 var(--gold)}.character-entry .character-choice{margin:0;border:0;background:transparent}.character-entry>div{display:flex;padding-right:6px}.character-entry>div button{width:40px;height:40px;border:0;background:transparent;color:var(--muted);font-size:18px}.character-entry>div button:hover{color:var(--gold)}.character-choice strong,.character-choice small{display:block}.manager>label.secondary{display:block;text-align:center;cursor:pointer}
@media(max-width:600px){.spell-tools{grid-template-columns:1fr 105px}.spell-tools input,.spell-tools select{font-size:16px}.character-entry>div button{width:38px}.manager{padding:15px}}
.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.dashboard-grid .panel{margin:0}.dashboard-wide{grid-column:1/-1}.quick-line{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.quick-line:last-child{border-bottom:0}.quick-line span,.quick-line strong,.quick-line small{display:block}.quick-line small{margin-top:3px;color:var(--muted);font-size:10px}.quick-line>b{color:var(--gold);font-size:18px}.quick-line .stepper{margin-left:auto}
.attack-command{width:100%;display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:10px;min-height:64px;padding:11px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.attack-command:last-child{border-bottom:0}.attack-command span>*{display:block}.attack-command small{color:var(--red);font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.attack-command strong{margin:3px 0;font-size:16px}.attack-command i{color:var(--muted);font-size:11px;font-style:normal}.attack-command>b{color:var(--gold);font-size:20px}.attack-command em{color:var(--muted);font-style:normal}.three-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.three-actions button{min-height:48px;border:1px solid var(--line);background:var(--soft);color:var(--ink)}#attackDialog h3{margin:18px 0 7px;font:700 15px Georgia,serif;color:var(--gold)}
@media(max-width:800px){.dashboard-grid{grid-template-columns:1fr}.dashboard-wide{grid-column:auto}}
@media(max-width:430px){.three-actions{grid-template-columns:1fr}.three-actions button{min-height:44px}}
.rank select{display:block;max-width:112px;margin-top:3px;padding:5px!important;font-size:11px!important}.skill-input-row:has(.rank){grid-template-columns:1fr 118px 58px 38px}@media(max-width:600px){.skill-input-row:has(.rank){grid-template-columns:minmax(92px,1fr) 90px 43px 34px}.rank select{max-width:90px;font-size:10px!important;padding:4px!important}}
.dashboard-link{cursor:pointer;transition:border-color .18s,transform .18s,background .18s}.dashboard-link:hover,.dashboard-link:focus-visible{border-color:var(--gold);background:linear-gradient(145deg,rgba(48,31,34,.98),rgba(24,17,19,.98));transform:translateY(-2px);outline:0}.dashboard-link:active{transform:translateY(0)}
.skill-search{display:grid;gap:5px;margin:14px 0 10px;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.skill-search input{min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:2px;background:#130f11;color:var(--ink);font-size:16px}.skill-search input:focus{outline:2px solid rgba(201,164,92,.32);border-color:var(--gold)}
.spell-create{display:grid;grid-template-columns:1fr 150px 160px;align-items:end;gap:10px;margin:22px 0 12px;padding:15px;border:1px solid #a98f66;background:linear-gradient(100deg,rgba(121,39,51,.1),rgba(255,250,236,.42))}.spell-create strong,.spell-create small{display:block}.spell-create strong{font:700 18px Georgia,serif;color:#702633}.spell-create small{margin-top:4px;color:var(--pMuted)}.spell-create select{min-height:44px;padding:8px;border:1px solid #b9a888;background:#fffaf0;color:var(--pInk)}.spell-create .add{min-height:44px;margin:0}.spell-overview{display:flex;gap:7px;overflow-x:auto;padding:4px 0 8px}.spell-overview button{flex:0 0 auto;min-width:88px;display:flex;align-items:center;gap:7px;padding:8px;border:1px solid #b5a17d;background:rgba(255,250,236,.46);color:var(--pInk)}.spell-overview b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#702633;color:#fff}.spell-overview span{font-size:10px;font-weight:800}
@media(max-width:700px){.spell-create{grid-template-columns:1fr 1fr}.spell-create>div{grid-column:1/-1}.spell-create select,.spell-create .add{width:100%}}
@media(max-width:430px){.spell-create{grid-template-columns:1fr;padding:12px}.spell-create>div{grid-column:auto}}
/* Su Mac e iPad orizzontale la barra resta visibile, compatta e centrata. */
@media(min-width:801px){.bottom-nav{display:grid;left:50%;right:auto;width:min(720px,calc(100vw - 32px));transform:translateX(-50%);border:1px solid #5a4038;border-bottom:0;border-radius:14px 14px 0 0;box-shadow:0 -10px 35px rgba(0,0,0,.35)}.bottom-nav button{min-height:54px;font-size:10px}}
.dice-preview{display:flex;gap:8px;margin-top:12px}.dice-preview span{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #664a3e;background:#171113;color:var(--gold);font-size:15px}.dice-preview b{color:var(--ink);font-size:10px}.dice-list{display:grid;gap:6px;margin:16px 0}.die-choice{width:100%;min-height:66px;display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:11px;padding:7px 10px;border:1px solid var(--line);border-radius:2px;background:linear-gradient(100deg,#1a1316,#2b1b1f);color:var(--ink);text-align:left}.die-choice:hover,.die-choice:focus-visible{border-color:var(--gold);background:#342126;outline:0}.die-choice svg{width:46px;height:46px;filter:drop-shadow(0 4px 5px rgba(0,0,0,.35))}.die-choice svg polygon{fill:#6f2935;stroke:#d5ad63;stroke-width:2}.die-choice svg path{fill:none;stroke:#b88d4c;stroke-width:1}.die-choice svg text{fill:#fff4d9;font-size:15px;font-weight:900;text-anchor:middle}.die-choice span strong,.die-choice span small{display:block}.die-choice span strong{font:700 18px Georgia,serif;color:#ead6ad}.die-choice span small{margin-top:2px;color:var(--muted);font-size:10px}.die-choice>b{color:var(--gold);font-size:11px;text-transform:uppercase}.dice-launcher{min-height:120px}@media(max-width:430px){.die-choice{grid-template-columns:46px 1fr auto}.die-choice svg{width:42px;height:42px}.die-choice>b{font-size:9px}}

/* Cittadella Nanica — basalto, bronzo e luce di forgia */
:root{--bg:#090a0a;--surface:#17191a;--raised:#212425;--soft:#292c2d;--ink:#f0e7d5;--muted:#aaa398;--line:#5d5143;--gold:#c5863f;--red:#cf5b31;--green:#66836b;--paper:#262728;--paper2:#343536;--pInk:#f1e8d7;--pMuted:#b9aea0;--shadow:0 22px 55px rgba(0,0,0,.5)}
body{background-color:#090a0a;background-image:radial-gradient(circle at 50% -12%,rgba(221,89,24,.16),transparent 30rem),linear-gradient(135deg,rgba(255,255,255,.018) 25%,transparent 25%),linear-gradient(315deg,rgba(255,255,255,.012) 25%,transparent 25%);background-size:auto,42px 42px,42px 42px}
.topbar{background:linear-gradient(90deg,#0b0c0d,#262728 48%,#0b0c0d);border-color:#765938}.topbar:after{background:linear-gradient(90deg,transparent,#9b5c27,#ef7f31,#9b5c27,transparent)}.persistent{background:linear-gradient(100deg,#111314,#292b2c,#111314);border-color:#6a5137}.identity,.vital,.abilities{border-color:#514537}.identity small,.vital small,.hero small,.view-head small,.sheet-head small{color:#e57738}.ability-chip{background:linear-gradient(145deg,#333637,#191b1c);border-color:#67543d}.collapse{background:#242627;border-color:#765938}
.hero:after{opacity:.38;filter:sepia(1) saturate(.7) drop-shadow(0 0 22px rgba(224,111,42,.22))}.hero h1,.view-head h1,.sheet-head h1{color:#f2e6cd}.panel{border-color:#725a3f;background:linear-gradient(145deg,rgba(47,49,49,.98),rgba(17,18,19,.98));box-shadow:inset 0 0 0 3px rgba(202,133,59,.035),0 16px 38px rgba(0,0,0,.38);clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px)}.panel:before{content:'◆';color:#c9843d}.panel h2,dialog h2{color:#f0dfbd}.primary{background:linear-gradient(#d89a4c,#95551f);border-color:#e8af65;color:#17191a}.secondary,.card-actions button,.stepper button{background:linear-gradient(#393b3c,#202223);border-color:#6b5841}.switch,.filter,.more-tabs{background:#111213;border-color:#69543c}.switch .active,.filter .active,.more-tabs .active{background:linear-gradient(#cc8c42,#89501f)}.chip.active{background:linear-gradient(#d26735,#8a351c);border-color:#eb8c54}
.bottom-nav{background:linear-gradient(#292b2c,#0f1011);border-color:#725a3f}.bottom-nav .active{color:#f29a45}.bottom-nav button b{text-shadow:0 0 12px rgba(239,115,43,.45)}dialog{background:linear-gradient(145deg,#313334,#111213);border-color:#826342}dialog:before{border-color:rgba(224,137,62,.18)}
.paper{background-color:#292b2c;background-image:radial-gradient(circle at 15% 10%,rgba(223,114,40,.09),transparent 22rem),repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px);border-color:#866b49;color:var(--pInk);box-shadow:inset 0 0 0 5px rgba(0,0,0,.18),0 24px 55px rgba(0,0,0,.5)}.paper-title{background:linear-gradient(90deg,#151718,#713b1d 50%,#151718);border-color:#c4843d}.paper h3{color:#e79a50;border-color:#77664f}.paper input,.paper textarea,.paper select{background:rgba(12,13,14,.7);border-color:#6e604e;color:#f3ead9}.paper input:focus,.paper textarea:focus,.paper select:focus{border-color:#dc873c;box-shadow:0 0 0 2px rgba(220,135,60,.2)}.ability-input,.skill-input-row,.editor-row,.spell-edit,.spell-level{background:rgba(10,11,12,.35);border-color:#685944}.ability-input{border-top-color:#d27435}.ability-input input[readonly],.paper input[readonly]{background:linear-gradient(#65391f,#2b211b)}.add{background:linear-gradient(#b8642d,#693617);border-color:#dc8b49}.spell-create{border-color:#846b4c;background:linear-gradient(100deg,rgba(211,104,40,.12),rgba(20,21,22,.5))}.spell-create strong{color:#ec994e}.spell-create select{background:#161718;border-color:#746047;color:#f2e8d6}
.auth-gate{background:radial-gradient(circle at 50% 105%,rgba(235,102,31,.32),transparent 34rem),linear-gradient(135deg,#080909,#292b2c 55%,#0c0d0e)}.auth-gate:before,.auth-gate:after{border-color:rgba(198,134,63,.17)}.auth-crest h1{color:#f2e3c7}.auth-crest small{color:#db8d43}.auth-crest p{color:#b8afa2}.auth-card{color:#eee4d2;background:linear-gradient(145deg,#343636,#151718);border-color:#9b7549;box-shadow:inset 0 0 0 5px rgba(0,0,0,.22),0 34px 90px rgba(0,0,0,.72);clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px)}.auth-card:before{border-color:rgba(216,145,72,.25)}.auth-card:after{color:#ef823a}.auth-tabs button{color:#e8d5b4;border-color:#b26d35}.auth-card label{color:#c7b9a6}.auth-card input{background:#111314;border-color:#735e43;color:#f3ead9}.auth-card input:focus{border-color:#df8439;box-shadow:0 0 0 3px rgba(223,132,57,.18)}.auth-message{color:#c4b5a0}
.character-entry{background:linear-gradient(90deg,#202223,#303233);border-color:#655440}.character-entry.active{border-color:#d58a3e;box-shadow:inset 4px 0 #e37c32}.die-choice{background:linear-gradient(100deg,#17191a,#303233);border-color:#655440}.die-choice:hover,.die-choice:focus-visible{background:#3a332d}.die-choice svg polygon{fill:#4b4e4f;stroke:#dc9145}.die-choice svg path{stroke:#a86a34}.dice-preview span{background:#17191a;border-color:#71583d}
.manager-intro{margin:8px 0 14px;color:var(--muted);font-size:12px}.character-choice{min-height:54px;text-align:left;color:var(--ink)}
/* Menu come footer: compare alla fine del contenuto e non resta sopra al gioco. */
.bottom-nav{position:static;display:grid;left:auto;right:auto;bottom:auto;width:100%;transform:none;border:1px solid #725a3f;border-left:0;border-right:0;border-bottom:0;border-radius:0;padding-bottom:calc(9px + env(safe-area-inset-bottom));box-shadow:0 -12px 35px rgba(0,0,0,.3)}
main{padding-bottom:38px}
.inventory-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px}.inventory-quantity span strong,.inventory-quantity span small{display:block}.inventory-quantity span small{margin-top:3px;color:var(--muted);font-size:10px}.inventory-quantity .stepper button{min-width:40px;min-height:40px}.ammo-use{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:13px 0;padding:12px;border:1px solid #765b3c;background:linear-gradient(90deg,#1b1d1e,#30302e)}.ammo-use small,.ammo-use strong{display:block}.ammo-use small{color:#de873e;font-size:9px;letter-spacing:.1em}.ammo-use button:disabled{opacity:.42;cursor:not-allowed}
.inventory-filter{display:flex;gap:5px;overflow-x:auto;margin:12px 0;padding-bottom:4px}.inventory-filter button{flex:0 0 auto;min-height:38px;padding:7px 10px;border:1px solid var(--line);background:#181a1b;color:var(--muted)}.inventory-filter button.active{border-color:#d58a3e;background:#73401f;color:#fff}.stock-low{border-color:#d78235!important}.stock-low span small{color:#f0a054!important}.stock-empty{border-color:#9b3a28!important;opacity:.78}.stock-empty span small{color:#f06b4b!important;font-weight:900}.log-entry{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.log-entry small{color:var(--muted)}#ammoRecoveryBody label{display:block;margin:12px 0;color:var(--muted)}#ammoRecoveryBody input{margin-top:5px}.ammo-use button{min-height:42px;padding:8px 12px;border:1px solid #d58a3e;background:#27292a;color:#f4dfbd;font-weight:850}
.inventory-actions{display:flex;align-items:center;gap:7px}.inventory-actions>button{min-height:40px;padding:7px 10px;border:1px solid #d58a3e;background:#27292a;color:#f4dfbd;font-weight:800}.inventory-actions>button:disabled{opacity:.4}@media(max-width:430px){.inventory-quantity{align-items:flex-start}.inventory-actions{align-items:flex-end;flex-direction:column}}
.auth-tabs{grid-template-columns:1fr 1fr}
