@charset "UTF-8";
:root{--ink:#49372a;--dark:#52382b;--paper:#f4e8c9;--cream:#fff5d9;--paper-shade:#e4cd9f;--line:#c6a67b;--orange:#df7f35;--orange-dark:#a95225;--purple:#786181;--green:#758f54;--red:#b55337;--muted:#977c5b;--font:"Trebuchet MS","Segoe UI",sans-serif;--display:"Arial Black","Trebuchet MS",sans-serif}
*{box-sizing:border-box}body{margin:0;background:#e5d2aa;color:var(--ink);font:14px/1.45 var(--font);background-image:radial-gradient(#b2946330 .7px,transparent .7px);background-size:5px 5px}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #9f7baf;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25}h1{font-size:30px}h2{font-size:22px}h3{font-size:15px}small,.small{font-size:12px}.muted{color:var(--muted)}.site-shell{max-width:1192px;margin:auto;padding:0 27px}.site-header{height:106px;display:flex;align-items:center;gap:27px;border-bottom:2px solid #b799704f;position:relative}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;flex-shrink:0;transform:rotate(-2deg)}.brand-title{font:900 35px/.95 var(--display);letter-spacing:-2px;color:#f4a447;-webkit-text-stroke:1px #6f4328;text-shadow:0 3px 0 #704326,2px 2px 0 #704326}.brand-subtitle{display:block;max-width:63px;font-weight:bold;font-size:13px;line-height:1.1;color:#826589;border-left:2px solid #b394713d;padding-left:11px;transform:rotate(2deg)}.header-note{display:flex;align-items:center;gap:17px;flex:1}.prototype-tag{font-size:10px;white-space:nowrap;color:#977c5e;border:1px solid #b599714d;padding:3px 7px;border-radius:3px}.header-small{font-size:12px;color:#927450;margin-left:auto}.quiet-button{background:none;border:1px solid #b1946b;padding:7px 10px;border-radius:3px;font-size:12px;color:#7f6141}.quiet-button:hover{background:#f8eccf}.site-footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:10px;color:#9d8058;padding:17px 0 22px;border-top:1px solid #b397704f}.site-footer a{text-underline-offset:3px}.loading-screen{min-height:520px;display:flex;gap:14px;align-items:center;justify-content:center;color:#94744e}.loading-wheel{width:21px;height:21px;border:3px solid #cbae77;border-top-color:#a76739;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:37px;padding:8px 14px;background:#efdbaf;border:1px solid #bd9562;border-bottom:3px solid #ad8150;border-radius:4px;color:#72502e;font-weight:bold;font-size:13px;text-decoration:none;transition:transform .1s,background .1s}.button:hover:not(:disabled){background:#f8e6ba;transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(1px);border-bottom-width:1px;margin-bottom:2px}.button.primary{background:#e88a3f;color:#fff8dc;border-color:#b35e2b;border-bottom-color:#994a24;text-shadow:0 1px #ac572855}.button.primary:hover:not(:disabled){background:#f49b4d}.button.purple{background:#87718d;color:#fff2dd;border-color:#685370;border-bottom-color:#514259}.button.small{min-height:29px;padding:5px 10px;font-size:11px}.button.large{min-height:46px;padding:11px 22px;font-size:16px}.button.full-width{width:100%}.text-button{border:0;background:none;padding:0;color:#856692;text-decoration:underline;text-underline-offset:3px;font-size:12px}.section-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#ab8759;font-weight:bold}.chip{font-size:10px;display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid #bea075;border-radius:3px;color:#927248;background:#f4e4bf;white-space:nowrap}.chip.purple{color:#816588;border-color:#b7a0b9;background:#e5d7e5}.chip.green{color:#65844c;border-color:#a7b486;background:#e6e7bc}.chip.orange{color:#a9612b;border-color:#d5a16a;background:#f6dfac}.game-intro{display:flex;justify-content:space-between;align-items:end;padding:25px 0 20px;gap:20px}.game-intro h1{font:900 29px/1.15 var(--display);letter-spacing:-1px;color:#684830}.game-intro p{color:#a28359;font-size:12px;margin-top:6px}.unlimited-note{font-size:11px;color:#8f7953;display:flex;align-items:center;gap:8px;white-space:nowrap}.unlimited-symbol{font-size:30px;color:#b08a47;line-height:1}.game-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:22px;align-items:start;margin-bottom:25px}.fighter-panel{background:#f3e4c2;border:1px solid #b99461;border-radius:5px;box-shadow:0 3px 0 #b9956140;overflow:hidden}.fighter-panel-header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;background:#eed8ad;border-bottom:1px solid #c5a171;font-size:11px;color:#907042}.fighter-panel-header strong{font-size:12px;color:#81623c}.fighter-portrait{height:162px;position:relative;background:radial-gradient(ellipse at center bottom,#dfc18b 0,transparent 65%),#f9edcf;overflow:hidden;border-bottom:1px solid #ceb080}.fighter-portrait:after{content:"";position:absolute;width:106px;height:17px;border-radius:50%;background:#b9946040;left:50%;bottom:19px;transform:translateX(-50%);pointer-events:none;z-index:0}.fighter-portrait canvas{display:block;width:100%;height:100%;position:relative;z-index:1}.fighter-name{text-align:center;padding:10px 12px 3px;font:900 21px/1.1 var(--display);letter-spacing:-.5px;overflow-wrap:anywhere;color:#67452d}.fighter-record{text-align:center;font-size:11px;color:#a18156;padding-bottom:13px}.fighter-record strong{color:#75583c}.xp-block{padding:0 13px 13px}.xp-label{font-size:10px;display:flex;align-items:center;justify-content:space-between;color:#9b7b51;margin-bottom:5px}.progress-track{background:#d8c094;border:1px solid #b79a69;border-radius:3px;height:9px;overflow:hidden;box-shadow:inset 0 1px 2px #8a603527}.progress-track>span{display:block;background:#95789e;height:100%;border-radius:2px;transition:width .3s}.stats-grid{border-top:1px solid #d3b78b;padding:11px 13px;background:#ecdbb9;display:flex;flex-direction:column;gap:7px}.stat-row{display:flex;align-items:center;gap:7px;font-size:11px;color:#8c6c43}.stat-symbol{width:18px;font-family:Arial,sans-serif;color:#927354;font-size:15px;font-weight:bold;text-align:center}.stat-row .stat-label{flex:1}.stat-value{font-weight:bold;color:#765132;font-size:13px;min-width:20px;text-align:right}.mini-track{height:4px;width:55px;background:#d8bd90;border-radius:2px;overflow:hidden}.mini-track span{height:100%;display:block;background:#ba9163}.equipment{padding:12px;border-top:1px solid #d0b486}.equipment h3{font-size:11px;color:#987951;margin-bottom:8px}.weapon-row{display:flex;gap:9px;align-items:center}.weapon-icon{width:37px;height:37px;background:#f9edcf;border:1px solid #c4a16e;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.weapon-icon img{max-width:30px;max-height:30px;object-fit:contain;image-rendering:pixelated}.weapon-row strong{display:block;font-size:12px;color:#7c5736}.weapon-row small{color:#9e8057;font-size:10px}.skill-list{display:flex;flex-wrap:wrap;gap:5px}.skill-chip{background:#e5d8df;border:1px solid #baa2b7;color:#866b89;font-size:10px;border-radius:3px;padding:4px 6px}.skill-empty{font-size:11px;color:#9c815d}.sidebar-note{font-size:10px;color:#a4885b;line-height:1.5;margin:11px 4px}.main-column{min-width:0}.tabs{display:flex;gap:5px;border-bottom:2px solid #9c794e;margin-bottom:15px;padding-left:3px}.tab{padding:10px 20px 9px;background:#dcc195;border:1px solid #b99663;border-bottom:0;border-radius:5px 5px 0 0;font-weight:bold;font-size:12px;color:#997247;position:relative}.tab:hover:not(:disabled){background:#edd7ad}.tab[aria-selected=true]{color:#fff3d4;background:#ab8050;border-color:#987044}.tab .tab-index{font-size:9px;margin-right:5px;opacity:.6}.panel{border:1px solid #b99868;background:#f6e9c9;border-radius:5px;overflow:hidden;box-shadow:0 3px 0 #bca16e26}.panel-title{padding:12px 15px;background:#f3e3bd;border-bottom:1px solid #cfb386;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-title h2{font-size:16px;color:#775436}.panel-title .small{font-size:10px;color:#a17f4d}.arena-hud{display:grid;grid-template-columns:1fr 46px 1fr;align-items:center;gap:12px;padding:13px 18px 12px;background:#fbf0d2;border-bottom:1px solid #d0b48a}.combatant-name{font-size:14px;font-weight:bold;color:#795436;display:flex;align-items:center;justify-content:space-between;gap:8px}.combatant-name small{font-size:10px;color:#aa8a5f;font-weight:normal}.combatant.right .combatant-name{flex-direction:row-reverse}.health-track{height:12px;background:#dcc497;border:1px solid #b59a70;border-radius:3px;margin-top:6px;padding:1px;overflow:hidden}.health-track span{display:block;height:100%;background:#8b9d5c;border-radius:1px;transition:width .15s}.combatant.right .health-track span{margin-left:auto;background:#b17f65}.health-caption{font-size:9px;color:#ab8b59;margin-top:3px}.combatant.right .health-caption{text-align:right}.versus{font:900 19px var(--display);font-style:italic;color:#ba8d56;text-align:center;transform:rotate(-9deg)}.arena-stage{height:316px;position:relative;overflow:hidden;background:#eddaad}.arena-stage canvas{display:block;width:100%;height:100%}.arena-watermark{position:absolute;bottom:10px;right:13px;background:#f7e9c0c9;border:1px solid #9f855a4a;padding:3px 7px;font-size:9px;color:#a08150;pointer-events:none}.floating-damage{position:absolute;top:31%;left:71%;transform:translate(-50%,0);font:900 33px var(--display);color:#b33b25;text-shadow:1px 2px #fff0c6,-1px -1px #fff0c6;pointer-events:none;opacity:0;z-index:4}.floating-damage.left{left:29%}.floating-damage.heal{color:#619149}.floating-damage.dodge{font-size:19px;color:#7d6983}.floating-damage.animate{animation:damage .7s ease-out}@keyframes damage{0%{opacity:0;transform:translate(-50%,6px) scale(.8)}18%{opacity:1;transform:translate(-50%,-5px) scale(1.12)}70%{opacity:1}100%{opacity:0;transform:translate(-50%,-45px) scale(.95)}}.arena-controls{padding:12px 15px;background:#f5e4be;border-top:1px solid #c5a273;display:flex;align-items:center;justify-content:space-between;gap:14px}.arena-controls p{font-size:11px;color:#9a794d}.arena-controls strong{color:#795433}.arena-controls .button{min-width:175px}.opponents-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 11px}.opponents-heading h2{font-size:15px;color:#815d3c}.opponents-heading .text-button{font-size:10px}.opponent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.opponent-card{position:relative;border:1px solid #c3a374;border-radius:5px;background:#f0dfb9;display:flex;text-align:left;padding:7px;gap:5px;align-items:center;min-height:97px;transition:background .15s,border-color .15s}.opponent-card:hover:not(:disabled){background:#fff0cf}.opponent-card.selected{border:2px solid #be7b3e;background:#f8e4b9;padding:6px;box-shadow:0 2px 0 #be7b3e36}.opponent-card canvas{width:64px;height:82px;flex-shrink:0}.opponent-info{min-width:0;flex:1}.opponent-info strong{display:block;font-size:12px;color:#825532;overflow-wrap:anywhere}.opponent-info .level{font-size:10px;color:#ad8854;margin:2px 0 5px}.opponent-kind{font-size:8px;color:#947050;border:1px solid #c5a578;padding:2px 4px;display:inline-block;border-radius:2px;white-space:nowrap}.opponent-kind.player{color:#806387;background:#e9dce6;border-color:#baa3bb}.opponents-note{color:#a7885b;font-size:10px;margin:10px 2px 0}.battle-toolbar{padding:11px 15px;display:flex;justify-content:space-between;align-items:center;background:#e3cda3;border-bottom:1px solid #bca071;gap:12px}.battle-toolbar strong{font-size:12px;color:#85613c}.battle-toolbar .controls{display:flex;align-items:center;gap:7px}.speed-button{background:#f6e7c0;border:1px solid #b49360;border-bottom:2px solid #a88350;border-radius:3px;padding:4px 9px;font-size:11px;font-weight:bold;color:#87613b}.speed-button.active{background:#8f7497;color:#fff0dc;border-color:#6d5577}.battle-log{padding:10px 15px;background:#f7e8c3;min-height:90px;border-top:1px solid #c6a779}.battle-log p{font-size:11px;color:#a17b4b;padding:2px 0}.battle-log p:last-child{color:#78543a;font-weight:bold}.battle-log .event-number{font-size:9px;color:#b09469;margin-right:7px}.result-banner{padding:18px 21px;background:#e6dfb1;border-top:2px solid #aab175;display:flex;align-items:center;justify-content:space-between;gap:20px}.result-banner.loss{background:#ead3b0;border-color:#be916b}.result-heading{font:900 25px var(--display);letter-spacing:-1px;color:#728448}.result-banner.loss .result-heading{color:#a66f4c}.result-heading small{font:normal 11px var(--font);color:#a68a59;margin-left:9px;letter-spacing:0}.result-details{font-size:12px;color:#9b7b4f;margin-top:6px}.result-details strong{color:#8b653b}.result-rewards{font-size:11px;color:#81648b;margin-top:5px}.result-buttons{display:flex;gap:8px;flex-direction:column;flex-shrink:0}.result-buttons .button{min-width:160px}.notice{border:1px solid #b79ac0;background:#ede0e8;color:#83678b;padding:11px 14px;border-radius:4px;margin-bottom:15px;font-size:12px}.notice.error{border-color:#c48e69;background:#f0d3b0;color:#9e5934}.pending-actions{display:flex;gap:8px;margin-top:9px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:5px 0 17px}.page-heading h2{font:900 24px var(--display);color:#856140;letter-spacing:-.7px}.page-heading p{color:#ab8655;font-size:12px;margin-top:6px}.pve-progress{font-size:11px;color:#9e7d50;text-align:right;white-space:nowrap}.pve-progress strong{display:block;font:900 25px var(--display);color:#b0783e}.pve-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pve-card{border:1px solid #bd9d6b;background:#f7e8c4;border-radius:5px;overflow:hidden;position:relative}.pve-card.locked{background:#e4d2b0;border-color:#cab18c}.pve-card.locked .pve-enemy{opacity:.55;filter:sepia(.35)}.pve-card.boss{border-color:#a887a5;background:#efdfdf}.pve-card.boss .pve-card-heading{background:#a58aa6;color:#fff0da;border-color:#88708f}.pve-card.current{box-shadow:0 0 0 2px #d69851;border-color:#ac783c}.pve-card-heading{font-size:10px;font-weight:bold;display:flex;align-items:center;justify-content:space-between;gap:6px;background:#e6c997;color:#94682e;padding:6px 9px;border-bottom:1px solid #c9a76f}.pve-card .stage-number{font-family:var(--display);font-size:13px}.pve-enemy{height:117px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at bottom,#d9ba825e,transparent 70%);position:relative}.pve-enemy canvas{width:135px;height:117px}.pve-level{position:absolute;right:8px;top:8px;color:#a58a60;font-size:9px;background:#f9edcfb8;border:1px solid #c3ac8455;padding:2px 5px;border-radius:2px}.pve-card-content{padding:9px 10px 11px;border-top:1px solid #ceb28670}.pve-card h3{font-size:13px;color:#835a34}.pve-card p{font-size:10px;color:#a48356;min-height:31px;margin:4px 0 9px;line-height:1.45}.pve-card .button{width:100%;font-size:11px;min-height:30px;padding:6px}.pve-lock-reason{font-size:10px;color:#a38a68;text-align:center;min-height:29px;display:flex;align-items:center;justify-content:center}.table-wrap{border:1px solid #b99b6e;border-radius:4px;background:#f6e8c6;overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{text-align:left;padding:9px 12px;background:#dabe91;color:#916735;font-size:10px;border-bottom:1px solid #bb9964}.data-table td{padding:10px 12px;border-bottom:1px solid #d6bd95;color:#947248}.data-table tr:last-child td{border-bottom:0}.data-table tr:nth-child(even) td{background:#efdcba}.data-table tr.self td{background:#efdeb4}.table-name{display:flex;align-items:center;gap:9px}.table-name canvas{width:38px;height:47px}.table-name strong{color:#805530;font-size:12px}.rank-number{font:900 18px var(--display);color:#b58b52}.table-rating{font-weight:bold;color:#85618b!important}.record-win{font-weight:bold;color:#779249}.record-loss{font-weight:bold;color:#ad7852}.empty-state{border:1px dashed #c3a375;border-radius:5px;background:#f5e5c140;text-align:center;padding:35px 20px;color:#a38356;font-size:13px}.history-opponent{font-size:13px;color:#805735;font-weight:bold}.history-mode{font-size:10px;color:#ad8a59;margin-top:3px}.history-time{font-size:10px;color:#b08f64}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#fff0d0;border:1px solid #b89961;border-left:4px solid #849557;border-radius:4px;padding:11px 16px;max-width:min(540px,calc(100vw - 28px));width:max-content;font-size:13px;color:#85603a;box-shadow:0 8px 30px #5a371d33;z-index:50}.toast.error{border-left-color:#b76840;background:#ffe1bd;color:#a35c33}.toast[hidden]{display:none}.join-shell{max-width:880px;margin:37px auto 42px;display:grid;grid-template-columns:1.05fr 1fr;border:1px solid #b79362;border-radius:7px;box-shadow:0 5px 0 #b5956335;background:#f8ebcc;overflow:hidden}.join-visual{min-height:510px;position:relative;background:#ecd5aa;overflow:hidden;display:flex;flex-direction:column}.join-illustration{position:relative;flex:1;min-height:270px;background:linear-gradient(#b8996250,#f3dcaf00),url('/assets/labrute/ui/arena-card.webp') center/cover}.join-illustration canvas{position:absolute;width:100%;height:100%;left:0;top:0}.join-visual-copy{padding:25px 28px 28px;background:#ad83514d;border-top:1px solid #b7956355}.join-visual-copy h1{font:900 31px/1.05 var(--display);letter-spacing:-1.5px;color:#7e532e;margin-bottom:11px}.join-visual-copy p{font-size:13px;color:#ab7b46;line-height:1.6}.join-features{display:flex;gap:15px;margin-top:17px;font-size:10px;color:#a27841}.join-features strong{font-size:17px;color:#a06e33;display:block;margin-bottom:2px}.join-form-wrap{padding:28px 27px}.join-form-wrap h2{font:900 23px var(--display);color:#7e5739;letter-spacing:-.7px;margin-bottom:7px}.join-intro{font-size:12px;color:#a3855a;line-height:1.6;margin-bottom:22px}.join-form label{display:block;font-size:12px;color:#957146;font-weight:bold;margin-bottom:7px}.join-form input{width:100%;border:1px solid #bd9b69;background:#fff7dc;border-radius:3px;color:#805d3d;padding:10px 11px;font-size:14px;margin-bottom:18px}.appearance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:8px 0 18px}.appearance-card{border:1px solid #ccb18a;background:#f1ddb8;border-radius:4px;padding:0;height:90px;overflow:hidden;position:relative}.appearance-card:hover{background:#fae9c6}.appearance-card.selected{border:2px solid #b47a43;background:#ffe8b7;box-shadow:0 2px 0 #b6864c44}.appearance-card canvas{width:100%;height:100%;display:block}.appearance-card .appearance-check{position:absolute;right:4px;top:3px;width:14px;height:14px;display:grid;place-items:center;font-size:10px;background:#c78c4f;color:#fff0d0;border-radius:50%}.join-note{font-size:10px;color:#ae9066;margin-top:12px;line-height:1.5}.join-error{font-size:12px;color:#ae6338;margin:8px 0}.profile-recovery{padding-bottom:20px;margin-bottom:18px;border-bottom:1px solid #d3bb94}.profile-recovery h3{font-size:13px;color:#93704b;margin-bottom:9px}.profile-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:9px;border:1px solid #c7ad82;border-radius:3px;background:#efdfbe;padding:8px 10px;margin-top:6px;font-size:12px;color:#937045}.profile-button strong{color:#785238}.profile-button:hover{background:#fbeaca}.profile-button span{font-size:10px;color:#ab865a}.profile-caption{font-size:10px;color:#ad9069;margin-top:8px}.join-form-wrap .button.full-width{min-height:42px}.mobile-profile-button{display:none}.offline-note{font-size:11px;color:#a56f42;margin:8px 0}.progress-caption{font-size:11px;color:#9e7e55;margin-bottom:14px}.progress-caption strong{color:#8c653c}
@media(min-width:1400px){.site-shell{max-width:1250px}.game-layout{grid-template-columns:230px minmax(0,1fr);gap:27px}.arena-stage{height:354px}.fighter-portrait{height:182px}.opponent-card{min-height:110px}.opponent-card canvas{width:70px;height:93px}}
@media(max-width:1000px){.site-shell{padding:0 21px}.header-small{display:none}.header-note{justify-content:flex-end}.game-layout{grid-template-columns:197px minmax(0,1fr);gap:17px}.tab{padding:9px 15px}.tab .tab-index{display:none}.arena-stage{height:295px}.arena-hud{padding:11px 13px;gap:8px;grid-template-columns:1fr 30px 1fr}.opponent-card{flex-direction:column;align-items:center;text-align:center;padding:8px 5px;gap:0}.opponent-card.selected{padding:7px 4px}.opponent-card canvas{height:76px;width:64px}.opponent-info .level{margin:1px 0 4px}.opponent-info strong{font-size:11px}.pve-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.result-banner{padding:16px;gap:15px}.result-heading{font-size:23px}.result-heading small{display:block;margin:3px 0 0}.result-buttons .button{min-width:138px;font-size:12px}.data-table td,.data-table th{padding:9px}.table-name{gap:5px}.table-name canvas{width:31px}.fighter-name{font-size:19px}.mini-track{width:43px}.arena-controls .button{min-width:140px}.arena-controls .button.large{font-size:14px;padding:10px 16px}.join-shell{max-width:800px}.join-form-wrap{padding:25px 21px}}
@media(max-width:760px){.site-shell{padding:0 14px}.site-header{height:83px;gap:14px}.brand-title{font-size:29px}.brand-subtitle{font-size:11px;max-width:57px;padding-left:8px}.brand{gap:8px}.header-note{flex:1}.header-small{display:none}.prototype-tag{font-size:8px;padding:3px 5px}.quiet-button{font-size:10px;padding:6px 7px}.game-intro{padding:20px 0 17px;gap:10px}.game-intro h1{font-size:25px}.game-intro p{font-size:11px}.unlimited-note{font-size:10px}.unlimited-symbol{font-size:25px}.game-layout{display:flex;flex-direction:column;gap:15px}.sidebar{width:100%}.fighter-panel{display:grid;grid-template-columns:130px minmax(0,1fr) 1fr}.fighter-panel-header{grid-column:1 / -1;padding:7px 10px;font-size:10px}.fighter-panel-header strong{font-size:11px}.fighter-portrait{height:124px;grid-column:1;grid-row:2 / span 3;border:0;border-right:1px solid #cfb384}.fighter-name{grid-column:2;grid-row:2;text-align:left;font-size:18px;padding:11px 9px 2px}.fighter-record{grid-column:2;grid-row:3;text-align:left;padding:0 9px 7px;font-size:10px}.xp-block{grid-column:2;grid-row:4;padding:0 9px 12px}.stats-grid{grid-column:3;grid-row:2 / span 3;gap:5px;border-left:1px solid #d3b78b;border-top:0;padding:10px 9px}.stat-row{font-size:10px;gap:5px}.stat-symbol{font-size:13px;width:14px}.mini-track{display:none}.stat-value{font-size:12px}.equipment{grid-row:5;padding:9px 10px;border-top:1px solid #cfb080}.equipment.weapon-equipment{grid-column:1 / 3}.equipment.skills-equipment{grid-column:3}.equipment h3{font-size:9px;margin-bottom:5px}.weapon-icon{width:30px;height:30px}.weapon-icon img{max-width:25px;max-height:25px}.weapon-row strong{font-size:11px}.weapon-row small{font-size:9px}.skill-chip{font-size:9px;padding:3px 5px}.skill-empty{font-size:10px}.sidebar-note{display:none}.main-column{width:100%}.tabs{justify-content:space-between;gap:4px;margin-bottom:12px}.tab{font-size:11px;padding:9px 14px;flex:1}.arena-stage{height:290px}.arena-controls{padding:11px 13px}.arena-controls p{font-size:10px}.arena-controls .button.large{font-size:13px;padding:9px 15px;min-height:39px}.opponents-heading{margin-top:17px}.opponent-card{flex-direction:row;text-align:left;padding:6px;gap:2px;min-height:90px}.opponent-card.selected{padding:5px}.opponent-card canvas{width:52px;height:71px}.opponent-info strong{font-size:11px}.opponent-info .level{font-size:9px}.opponent-kind{font-size:7px;padding:2px 3px}.opponent-grid{gap:7px}.site-footer{font-size:9px;padding:14px 0 17px;gap:9px}.site-footer>span:last-child{display:none}.pve-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pve-enemy{height:110px}.pve-enemy canvas{height:110px;width:126px}.pve-card-content{padding:8px}.pve-card h3{font-size:12px}.pve-card p{font-size:9px}.pve-card .button{font-size:10px}.page-heading h2{font-size:23px}.page-heading p{font-size:11px}.result-heading{font-size:24px}.result-heading small{display:inline-block;margin-left:6px}.result-banner{gap:12px}.result-buttons .button{min-width:145px}.join-shell{grid-template-columns:1fr;max-width:540px;margin:22px auto 29px}.join-visual{min-height:0;display:grid;grid-template-columns:1fr 1.3fr}.join-illustration{min-height:190px}.join-visual-copy{padding:23px 20px;border-top:0;border-left:1px solid #b5936355}.join-visual-copy h1{font-size:27px}.join-visual-copy p{font-size:11px}.join-features{gap:14px;font-size:8px;margin-top:13px}.join-features strong{font-size:15px}.join-form-wrap{padding:24px}.appearance-grid{grid-template-columns:repeat(6,1fr);gap:6px}.appearance-card{height:86px}.join-intro{margin-bottom:17px}.join-form input{margin-bottom:15px}.loading-screen{min-height:440px}}
@media(max-width:460px){.site-header{height:75px;gap:10px}.brand-title{font-size:25px;letter-spacing:-1.5px}.brand-subtitle{font-size:10px;max-width:51px}.brand{gap:6px}.prototype-tag{font-size:7px;white-space:normal;max-width:69px;text-align:center}.header-note{justify-content:end}.quiet-button{padding:5px;font-size:9px}.game-intro{padding:17px 0 14px}.game-intro h1{font-size:23px}.game-intro p{font-size:10px;max-width:220px}.unlimited-note{font-size:9px;white-space:normal;max-width:90px;line-height:1.3;gap:5px}.unlimited-symbol{font-size:23px}.fighter-panel{grid-template-columns:83px minmax(0,1fr) 113px}.fighter-portrait{height:121px}.fighter-name{font-size:15px;padding:10px 8px 2px}.fighter-record{font-size:9px;padding:0 8px 7px}.xp-block{padding:0 8px 10px}.xp-label{font-size:8px}.fighter-panel-header{font-size:9px}.stats-grid{padding:10px 8px;gap:5px}.stat-row{font-size:9px}.stat-value{font-size:11px}.stat-symbol{font-size:12px;width:12px}.equipment{padding:8px}.skill-chip{font-size:8px}.weapon-icon{width:28px;height:28px}.weapon-row{gap:7px}.weapon-row strong{font-size:10px}.weapon-row small{font-size:8px}.tab{padding:8px 6px;font-size:10px}.panel-title{padding:10px 11px}.panel-title h2{font-size:14px}.panel-title .small{font-size:9px}.arena-hud{padding:10px;gap:6px;grid-template-columns:1fr 22px 1fr}.combatant-name{font-size:12px;gap:3px}.combatant-name small{font-size:8px}.versus{font-size:15px}.health-track{height:11px}.health-caption{font-size:8px}.arena-stage{height:260px}.arena-controls{padding:10px;gap:8px}.arena-controls p{font-size:9px;max-width:150px}.arena-controls .button.large{font-size:12px;padding:8px 11px;min-width:140px}.arena-watermark{font-size:8px;right:9px;bottom:7px}.opponent-card{flex-direction:column;text-align:center;min-height:129px;padding:6px 4px;gap:0}.opponent-card.selected{padding:5px 3px}.opponent-card canvas{height:73px;width:64px}.opponent-info strong{font-size:10px}.opponent-info .level{font-size:8px}.opponent-kind{font-size:7px}.opponents-heading h2{font-size:13px}.opponents-heading .text-button{font-size:9px}.opponents-note{font-size:9px}.pve-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pve-enemy{height:105px}.pve-enemy canvas{height:105px}.pve-card h3{font-size:12px}.pve-card p{font-size:10px}.pve-card .button{font-size:11px}.page-heading h2{font-size:21px}.page-heading p{font-size:10px}.pve-progress{font-size:9px}.pve-progress strong{font-size:22px}.result-banner{padding:14px;flex-direction:column;align-items:stretch;gap:12px}.result-heading{font-size:25px}.result-buttons{flex-direction:row;gap:7px}.result-buttons .button{min-width:0;flex:1;font-size:11px;padding:8px}.result-details{font-size:11px}.result-rewards{font-size:10px}.battle-toolbar{padding:9px 10px;gap:7px}.battle-toolbar strong{font-size:10px}.speed-button{font-size:10px;padding:4px 7px}.battle-toolbar .button.small{font-size:10px;padding:4px 7px}.battle-log{min-height:86px;padding:8px 11px}.battle-log p{font-size:10px}.floating-damage{font-size:28px}.floating-damage.dodge{font-size:16px}.data-table th,.data-table td{padding:8px 6px}.data-table{font-size:10px}.data-table th{font-size:9px}.table-name strong{font-size:11px}.table-name canvas{display:none}.rank-number{font-size:16px}.history-opponent{font-size:11px}.history-mode,.history-time{font-size:9px}.data-table .button.small{font-size:10px;padding:4px 6px}.join-shell{margin-top:18px}.join-visual{grid-template-columns:.85fr 1.15fr}.join-illustration{min-height:189px}.join-visual-copy{padding:20px 15px}.join-visual-copy h1{font-size:24px;margin-bottom:9px}.join-visual-copy p{font-size:10px}.join-features{gap:11px}.join-features strong{font-size:14px}.join-form-wrap{padding:20px}.join-form-wrap h2{font-size:23px}.appearance-grid{grid-template-columns:repeat(3,1fr);gap:7px}.appearance-card{height:94px}.join-intro{font-size:11px}.join-features span:last-child{display:none}.site-footer{font-size:8px}.notice{font-size:11px;padding:10px 11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Original illustrated La Brute masthead and stat pictograms. */
.site-header{height:auto;min-height:139px;aspect-ratio:930/150;background:url('/assets/labrute/ui/header.png') center center/100% 100% no-repeat;border:0;padding:15px 28px 0;gap:23px;margin-top:7px}
.header-note{align-self:center}.header-small{color:#816945;max-width:130px;font-size:11px;margin-left:10px;text-shadow:0 1px #fff4be}.prototype-tag{background:#fff5caca;border-color:#aa87494d;color:#927448}
.site-header .quiet-button{background:#f8edc2d9;border-color:#9d7d47;color:#7d623c}
.stat-symbol{width:17px;height:17px;object-fit:contain;image-rendering:auto;flex-shrink:0}
.weapon-icon>strong{font-size:6px;letter-spacing:-.2px;color:#98784e}
@media(max-width:1000px){.site-header{min-height:120px;padding:13px 24px 0}.header-small{display:none}.brand-title{font-size:32px}.header-note{justify-content:flex-start}.prototype-tag{font-size:9px}}
@media(max-width:760px){.site-header{min-height:95px;padding:10px 19px 0;gap:12px;background-size:100% 100%;margin-top:4px}.brand-title{font-size:28px}.brand-subtitle{font-size:10px}.header-note{justify-content:flex-end}.prototype-tag{font-size:8px}.stat-symbol{width:15px;height:15px}}
@media(max-width:460px){.site-header{min-height:81px;padding:10px 12px 0;gap:8px}.brand-title{font-size:23px}.brand-subtitle{font-size:9px;max-width:45px;padding-left:6px}.brand{gap:5px}.prototype-tag{font-size:7px;max-width:61px;padding:3px 4px}.site-header .quiet-button{font-size:8px;padding:5px}.stat-symbol{width:13px;height:13px}}
/* Keep the illustrated header inside the viewport at narrow widths. */
.site-header{width:100%;max-width:100%;min-width:0}.header-note{min-width:0}
@media(max-width:760px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;aspect-ratio:auto;height:95px;min-height:0}.site-header .brand{min-width:0}.header-note{min-width:0;max-width:75px;justify-content:flex-end}.site-header .quiet-button{max-width:70px}.header-small{display:none}}
@media(max-width:460px){.site-header{height:81px;grid-template-columns:minmax(0,1fr) 61px auto;gap:8px}.header-note{width:61px;max-width:61px}.site-header .quiet-button{max-width:58px;white-space:normal}.prototype-tag{white-space:normal}}
@media(max-width:359px){.site-header{grid-template-columns:minmax(0,1fr) auto}.header-note{display:none}}
/* Original inventory pixels: keep wide weapon silhouettes readable. */
.weapon-icon{width:64px;height:43px;flex-shrink:0;background:#f7e8c5}.weapon-icon img{width:auto;height:auto;max-width:56px;max-height:35px;object-fit:contain;image-rendering:pixelated}.weapon-icon.unarmed{width:48px}.weapon-icon.unarmed strong{font-size:8px;line-height:1.25;letter-spacing:.2px;color:#9b7a4d;text-align:center}
.skill-list{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.skill-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 6px;font-size:11px;line-height:1.3}.skill-chip.with-icon{padding:3px 7px 3px 3px}.skill-chip .skill-icon{display:block;width:30px;height:30px;object-fit:contain;flex-shrink:0;image-rendering:auto}.skill-chip>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.weapon-icon{width:60px;height:39px}.weapon-icon img{max-width:52px;max-height:31px}.weapon-icon.unarmed{width:43px}.skill-chip{font-size:10px;gap:4px;padding:3px 4px}.skill-chip.with-icon{padding:2px 4px 2px 2px}.skill-chip .skill-icon{width:24px;height:24px}.skill-list{gap:4px}}
@media(max-width:460px){.weapon-icon{width:54px;height:35px}.weapon-icon img{max-width:48px;max-height:29px}.weapon-icon.unarmed{width:37px}.weapon-icon.unarmed strong{font-size:7px}.skill-chip{font-size:9px;gap:4px}.skill-chip .skill-icon{width:22px;height:22px}}

/* The cell: an original-art collection and cosmetic workshop. */
.tabs{gap:4px}.tab{padding-left:12px;padding-right:12px}.tab .tab-index{margin-right:5px}
.cell-hero{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:238px;overflow:hidden;margin-bottom:17px;background:#f5e4bd}
.cell-portrait{background:transparent;border-right:1px solid #c4a577}.cell-portrait canvas{width:100%;height:100%;min-height:238px;display:block}
.cell-intro{padding:29px 26px;min-width:0}.eyebrow{font-size:10px;color:#b58a53;letter-spacing:1.5px;font-weight:bold;text-transform:uppercase}.cell-intro h2{font:900 31px var(--display);letter-spacing:-1px;color:#7e5739;margin:6px 0;overflow-wrap:anywhere}.cell-intro>p{font-size:12px;color:#96754e;line-height:1.5}.cell-intro .cell-description{margin:10px 0 15px;font-size:12px}.cell-intro small{display:block;font-size:9px;color:#a18660;margin-top:9px;line-height:1.4}
.local-talents{padding:16px;margin-bottom:17px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.section-heading h2,.collection-heading h2{font:900 19px var(--display);color:#8a603b;letter-spacing:-.6px}.section-heading>span{font-size:10px;color:#a08052;white-space:nowrap}.local-talent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.local-talent{display:flex;gap:8px;padding:9px;border:1px solid #cfb88e;border-radius:3px;background:#f6e8c8}.local-talent>img{flex-shrink:0;width:34px;height:34px}.local-talent>div{min-width:0}.local-talent h3{font-size:11px;color:#865b36;margin-bottom:3px}.local-talent p{font-size:10px;color:#9c8059;line-height:1.5}.local-talent>div>span{display:block;font-size:9px;color:#ae8b57;margin-top:5px;font-weight:bold}.local-talent.acquired{border-color:#8d9c685c;background:#eef0d044}.local-talent.acquired>div>span{color:#78904f}.local-talent.locked>img{opacity:.45;filter:grayscale(.6)}.local-talent-word{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0;font:bold 12px Georgia,serif;color:#a38863;border:1px solid #baa27c;border-radius:50%;background:#efe0bc}
.collection-panel{padding:18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);column-gap:21px;align-items:start}.collection-heading{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.collection-heading p{font-size:10px;color:#a3855b;margin-top:5px;line-height:1.5}.collection-switch{display:flex;gap:3px;padding:3px;background:#e0caa1;border:1px solid #c5a578;border-radius:4px;flex-shrink:0}.collection-switch button{border:0;background:transparent;color:#a07a4c;padding:6px 8px;border-radius:2px;font-size:10px;white-space:nowrap}.collection-switch button[aria-pressed=true]{background:#fff0cb;color:#805932;box-shadow:0 1px 2px #8c623e33}.collection-switch strong{font-size:9px;margin-left:3px}
.collection-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;width:100%;max-width:350px;grid-column:1;grid-row:2}.collection-tile{position:relative;display:grid;place-items:center;aspect-ratio:1;border:1px solid #bda47a;border-radius:3px;background:#ead8b1;padding:3px;min-width:0;transition:background .15s,border-color .15s}.collection-tile img{display:block;max-width:100%;width:34px;height:34px;object-fit:contain}.collection-tile.source img{opacity:.4;filter:grayscale(.35)}.collection-tile.local.locked img{opacity:.58}.collection-tile.acquired{border-color:#a0a165;background:#f0eec7}.collection-tile.local.locked{border-color:#ad8153}.collection-tile:hover{background:#fff0c8;border-color:#a26b3d}.collection-tile[aria-pressed=true]{outline:2px solid #956c9a;outline-offset:1px;background:#f7eaca;z-index:1}.collection-tile[aria-pressed=true] img,.collection-tile:hover img{opacity:1;filter:none}.collection-mark{position:absolute;bottom:-1px;right:-1px;width:13px;height:13px;display:grid;place-items:center;background:#8c9a60;color:#fffbd7;font-size:10px;border-radius:4px 0 2px 0}.collection-grid.weapons .collection-tile img{width:auto;height:auto;max-height:34px;image-rendering:pixelated}
.collection-legend{grid-column:1;display:flex;gap:6px 11px;flex-wrap:wrap;font-size:8px;color:#a2865a;margin-top:12px;line-height:1.4}.collection-legend>span{display:flex;align-items:center;gap:4px}.legend-dot{width:7px;height:7px;display:inline-block;border:1px solid #bca17c;border-radius:1px;background:#dac8a8}.legend-dot.acquired{background:#8c9a60;border-color:#8c9a60}.legend-dot.local{background:#dbc599;border-color:#ad8153}
.collection-detail{grid-column:2;grid-row:2/span 2;padding:16px;background:#fff1cd;border:1px solid #c7a773;border-radius:4px;min-height:244px;position:sticky;top:15px}.detail-icon{display:block;width:44px;height:44px;object-fit:contain;margin:0 0 10px}.detail-icon.is-weapon{width:auto;max-width:80px;max-height:45px;image-rendering:pixelated}.detail-heading h3{font:900 20px var(--display);color:#805333;letter-spacing:-.5px;line-height:1.15;margin:0 0 7px}.collection-status{font-size:9px;display:inline-block;padding:3px 6px;border:1px solid #d2b78b;border-radius:3px;color:#a08057;background:#f0dfb8;margin-bottom:10px}.collection-status.acquired{color:#70834d;border-color:#a1a873;background:#e8eac0}.local-effect,.source-only,.source-description,.unlock-hint{font-size:11px;color:#947349;line-height:1.65}.local-effect strong{color:#7c573b}.source-only{color:#a58a65}.source-description{padding-top:11px;margin-top:10px;border-top:1px solid #dbc49b;font-style:italic}.source-description>span{display:block;font-style:normal;text-transform:uppercase;font-size:8px;letter-spacing:.7px;font-weight:bold;margin-bottom:5px;color:#b29366}.unlock-hint{font-size:10px;color:#a77847;margin-top:9px}
.customize-join{font-size:11px;min-height:37px!important}.customize-caption{font-size:9px;color:#a08356;line-height:1.5;margin:8px 0 16px}.appearance-editor{width:min(840px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:0;border:2px solid #ac8656;border-radius:7px;background:#f8ebce;color:#846240;box-shadow:0 20px 90px #36211080;overflow:auto}.appearance-editor::backdrop{background:#312622ad;backdrop-filter:blur(2px)}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 23px;background:#e9d4ab;border-bottom:1px solid #c7a677}.editor-heading h2{font:900 26px var(--display);letter-spacing:-1px;color:#7f5937;margin-top:4px}.editor-close{border:1px solid #c1a16d;border-radius:3px;background:#f7e9c6;color:#a07849;display:grid;place-items:center;width:29px;height:29px;font-size:23px;font-weight:normal;line-height:1}.editor-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;padding:22px}.editor-preview-column{align-self:start;position:sticky;top:10px;text-align:center}.editor-preview{height:300px;background:linear-gradient(0deg,#f6e7c169,#f6e7c111),url('/assets/labrute/arena/0.jpg') center/cover;border:1px solid #c5aa7e;border-radius:4px;overflow:hidden;margin-bottom:10px}.editor-preview canvas{width:100%;height:100%;display:block}.editor-preview-column>.button{width:100%}.editor-preview-column>p{font-size:10px;color:#a8895d;line-height:1.5;margin-top:10px}.editor-options{min-width:0}.editor-options fieldset{border:0;padding:0;margin:0}.editor-options legend{font:bold 12px var(--font);color:#8d6541;margin-bottom:9px}.gender-switch{display:flex;gap:5px;margin-bottom:14px}.gender-switch button{flex:1;border:1px solid #c0a273;background:#ecd8b4;color:#9b7749;border-radius:3px;font-size:11px;padding:7px}.gender-switch button[aria-pressed=true]{background:#a780a1;border-color:#876788;color:#fff6e0}.body-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 11px}.body-controls label{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:10px;color:#9d7a51}.body-controls select{font-family:inherit;font-size:11px;color:#8d6840;background:#fff3d5;border:1px solid #c8aa7d;border-radius:3px;width:100%;padding:6px}.editor-options .color-controls{margin-top:21px}.color-control{padding:7px 0;border-bottom:1px solid #decaA522}.color-control>label{display:block;font-size:10px;color:#9a764b;margin-bottom:6px}.color-options{display:flex;align-items:center;gap:10px}.color-swatches{display:flex;flex-wrap:wrap;gap:4px;min-width:0;flex:1}.color-swatch{padding:0;width:19px;height:19px;background:var(--swatch);border:1px solid #82634655;border-radius:3px;box-shadow:inset 0 0 0 1px #ffffff20}.color-swatch[aria-pressed=true]{outline:2px solid #8f6094;outline-offset:1px;position:relative;z-index:1}.color-options input[type=color]{width:30px;height:29px;padding:2px;background:#f3dfb7;border:1px solid #bd9e6e;border-radius:3px;flex-shrink:0;cursor:pointer}.editor-footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:9px;padding:14px 22px;background:#eedab4;border-top:1px solid #c9ad80}.editor-footer .button{font-size:12px}.editor-error{margin:0;padding:0 22px 12px}.appearance-editor button:focus-visible,.appearance-editor select:focus-visible,.collection-tile:focus-visible{outline:3px solid #916b96;outline-offset:2px}
@media(min-width:1400px){.collection-grid{max-width:350px}.collection-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:1000px){.tab{padding-left:8px;padding-right:8px;font-size:11px}.cell-hero{grid-template-columns:160px minmax(0,1fr)}.cell-intro{padding:23px 18px}.cell-intro h2{font-size:27px}.collection-panel{grid-template-columns:1fr;padding:15px}.collection-grid{max-width:none;grid-template-columns:repeat(10,minmax(0,1fr))}.collection-detail{grid-column:1;grid-row:auto;position:static;margin-top:14px;min-height:0;display:flex;gap:13px;padding:14px}.detail-icon{flex-shrink:0;margin:0}.detail-copy{min-width:0}.collection-detail .source-description{margin-top:7px;padding-top:7px}.collection-legend{margin-top:10px}}
@media(max-width:760px){.tabs{flex-wrap:nowrap}.tab{font-size:10px;padding:9px 7px}.cell-hero{grid-template-columns:185px minmax(0,1fr)}.collection-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 15px}.collection-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.collection-detail{grid-column:2;grid-row:2/span 2;display:block;margin-top:0;height:100%;padding:12px}.detail-icon{margin-bottom:10px}.collection-heading{gap:10px}.collection-heading p{font-size:9px}.editor-body{grid-template-columns:205px minmax(0,1fr);gap:16px;padding:16px}.editor-preview{height:270px}.editor-heading{padding:16px}.editor-heading h2{font-size:24px}.body-controls{gap:8px}.color-swatch{width:18px;height:18px}}
@media(max-width:590px){.collection-panel{display:block}.collection-heading{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:13px}.collection-switch{align-self:stretch}.collection-switch button{flex:1}.collection-grid{max-width:350px;margin:auto}.collection-legend{justify-content:center;font-size:8px}.collection-detail{display:flex;gap:12px;margin-top:14px;min-height:170px;height:auto}.collection-detail .detail-icon{width:36px;height:36px}.detail-heading h3{font-size:19px}.local-talent-grid{grid-template-columns:1fr}.local-talent{padding:8px}.local-talent p{font-size:10px}.cell-hero{grid-template-columns:130px minmax(0,1fr);min-height:205px}.cell-portrait canvas{min-height:205px}.cell-intro{padding:20px 14px}.cell-intro h2{font-size:25px}.cell-intro>p{font-size:10px}.cell-intro .cell-description{font-size:10px;margin:8px 0 11px}.cell-intro .button{font-size:11px;padding:8px 10px}.cell-intro small{font-size:8px}.appearance-editor{width:calc(100% - 16px);max-height:calc(100dvh - 20px)}.editor-body{display:block;padding:13px}.editor-preview-column{position:static;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px;align-items:center;margin-bottom:17px}.editor-preview{grid-row:1/span 2;height:175px;margin-bottom:0}.editor-preview-column>.button{align-self:end;font-size:11px}.editor-preview-column>p{align-self:start;margin:0;font-size:9px}.editor-options .color-controls{margin-top:18px}.editor-heading{padding:12px 15px}.editor-heading h2{font-size:22px}.editor-footer{padding:12px}.editor-footer .button{font-size:11px;padding:8px 11px}.color-swatch{width:20px;height:20px}.color-options input[type=color]{width:32px;height:29px}.section-heading h2{font-size:17px}.local-talents{padding:13px}.collection-heading h2{font-size:19px}}
@media(max-width:390px){.tab{padding:9px 4px;font-size:9px}.cell-hero{grid-template-columns:115px minmax(0,1fr)}.cell-intro{padding:17px 11px}.cell-intro h2{font-size:23px}.cell-intro .button{font-size:10px}.local-effect,.source-description,.source-only{font-size:10px}.collection-panel{padding:13px}.collection-tile{padding:2px}.collection-tile img{width:32px;height:32px}}
/* The French masthead is the unmodified source image, including its logo. */
.collection-panel{margin-bottom:17px}
.source-effect{font-size:11px;color:#8e724e;line-height:1.6;margin-top:11px;padding-top:10px;border-top:1px solid #dbc49b}.source-effect>span{display:block;font-size:8px;letter-spacing:.6px;text-transform:uppercase;font-weight:bold;color:#b29366;margin-bottom:5px}.source-effect+.source-description{border-top:0;padding-top:0}.source-effect+.source-description>span{display:none}
.site-header.art-header{display:block;position:relative;width:100%;height:auto;min-height:0;max-width:100%;aspect-ratio:auto;background:none;padding:0;margin:7px 0 0}.brand.brand-art{display:block;width:100%;min-width:0}.brand-art img{display:block;width:100%;height:auto}.header-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:3px 22px 0;min-height:31px}.version-label{margin-right:auto;color:#a9824d;font-size:11px;font-weight:bold;letter-spacing:.3px}.art-header .prototype-tag{max-width:none;white-space:nowrap;font-size:8px;display:inline-block;padding:3px 5px}.art-header .quiet-button{max-width:none;white-space:nowrap;font-size:9px;padding:5px 8px}.art-header+.game-intro{padding-top:12px}
@media(max-width:460px){.header-controls{padding:3px 8px 0;gap:6px;min-height:29px}.version-label{font-size:9px}.art-header .prototype-tag{font-size:7px}.art-header .quiet-button{font-size:8px;padding:4px 6px}}

/* Persistent level choices and the owned collection. */
.arsenal-count{float:right;color:#a78a5c;font-size:9px;font-weight:normal}.sidebar-arsenal{display:flex;flex-wrap:wrap;gap:5px}.arsenal-mini{position:relative;display:grid;place-items:center;width:38px;height:33px;border:1px solid #ccb084;border-radius:3px;background:#f6e5bf}.arsenal-mini img{max-width:32px;max-height:25px;object-fit:contain;image-rendering:pixelated}.arsenal-mini small{position:absolute;right:-1px;bottom:-1px;background:#b19669;color:#fff5d4;font-size:7px;line-height:11px;min-width:11px;text-align:center;border-radius:2px 0 2px 0}.arsenal-caption{font-size:9px;color:#ab8b5e;line-height:1.5;margin-top:7px}.arsenal-explanation{font-size:11px;line-height:1.65;color:#a08155;margin:0 0 13px}.arsenal-rank{font-size:10px;min-width:23px;text-align:center;color:#9c7b44;border:1px solid #ccaf7c;border-radius:3px;background:#efe0bb;padding:5px;flex-shrink:0}
.editor-context-note{font-size:9px;color:#a3865d;line-height:1.55;margin:0 0 13px}
.level-up-panel{padding:21px;margin-bottom:18px;background:#f5e3bd;border:2px solid #a17ba0;border-radius:5px;box-shadow:0 3px 0 #9a748f25}.level-up-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.level-up-heading .eyebrow{color:#a07898}.level-up-heading h2,.level-up-panel>h2{font:900 27px var(--display);letter-spacing:-.8px;color:#7c587e;margin:5px 0}.level-up-badge{padding:8px 12px;color:#896286;background:#e5cad64d;border:1px solid #ad86a4;border-radius:4px;white-space:nowrap;font-weight:bold;font-size:15px}.level-up-intro{font-size:12px;color:#9b784c;line-height:1.6;margin:7px 0 16px}.level-up-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.level-option{min-width:0;display:flex;flex-direction:column;padding:16px;border:1px solid #c6a06f;border-radius:5px;background:#fff0d0;box-shadow:0 2px 0 #c3a07828}.level-option.selected{border-color:#9b739e;box-shadow:inset 0 0 0 1px #9b739e}.option-top{display:flex;align-items:center;gap:10px;min-height:50px;margin-bottom:10px}.choice-icon{width:44px;height:44px;object-fit:contain;flex-shrink:0}.choice-icon.stat{width:36px;height:36px;image-rendering:pixelated}.choice-icon.pet{width:57px;height:47px}.choice-weapon{display:block;flex-shrink:0}.choice-weapon .weapon-icon{width:66px;height:48px;background:#f1dfbb}.option-type{font-size:9px;color:#ac8351;font-weight:bold;text-transform:uppercase;letter-spacing:.4px;line-height:1.6}.level-option h3{font:900 20px/1.15 var(--display);color:#865934;letter-spacing:-.4px;margin:0 0 9px;overflow-wrap:anywhere}.level-option>p{font-size:11px;color:#9a794e;line-height:1.7;margin-bottom:14px;flex:1}.level-option>.button{width:100%;margin-top:auto;font-size:12px}.tier-upgrade{font-size:10px;color:#927295;margin:0 0 12px}.choice-footnote{font-size:9px;color:#a68a64;margin-top:13px;line-height:1.5}.choice-error{font-size:11px;color:#af5b3b;line-height:1.6;margin:12px 0 9px}.stat-gains{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.stat-gains>span{background:#e8d5aa;border:1px solid #d2b681;border-radius:3px;font-size:10px;color:#9b7746;padding:4px 6px}.stat-gains strong{color:#805936}.battle-panel>.level-up-panel{margin:16px}.owned-tier{display:inline-block;font-size:9px;line-height:1.3;font-weight:bold;color:#997b43;vertical-align:middle;white-space:nowrap}.tier-mark{width:17px;font-size:8px;line-height:1}.catalog-chance{font-size:10px;line-height:1.6;color:#9b794d;margin-top:12px}.catalog-chance strong{color:#8b6588;font-size:13px}.catalog-chance>span{display:block;font-size:9px;color:#b09168;line-height:1.5;margin-top:3px}.source-reference{margin-top:12px;border-top:1px solid #dbc39d;padding-top:9px}.source-reference>summary{font-size:9px;color:#ab8a63;cursor:pointer;line-height:1.5}.source-reference .source-effect{border-top:0;margin-top:7px;padding-top:0;font-size:10px}.source-reference .source-description{font-size:10px}.owned-panel{padding:16px;margin-bottom:17px}.owned-weapons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.owned-weapon{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #d0b68d;border-radius:3px;background:#f9eaca;min-width:0}.owned-weapon>div{flex:1;min-width:0}.owned-weapon h3{font-size:11px;color:#875d38;line-height:1.4;overflow-wrap:anywhere}.owned-weapon p{font-size:9px;color:#a8895c;line-height:1.5;margin-top:3px}.owned-weapon .weapon-icon{width:51px;height:37px}.owned-weapon .weapon-icon img{max-width:45px;max-height:31px}.inventory-empty{font-size:11px;color:#a1845c;line-height:1.65}.pet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pet-card{display:flex;align-items:flex-start;gap:10px;background:#f6e9c9;border:1px solid #d1b98f;border-radius:3px;padding:11px;min-width:0}.pet-card>img{width:57px;height:50px;object-fit:contain;flex-shrink:0}.pet-card>div{min-width:0}.pet-card h3{font-size:12px;color:#85603e;line-height:1.5;margin-bottom:4px}.pet-card p{font-size:10px;color:#a08155;line-height:1.6}.floating-damage.pet-impact{top:68%}.level-up-panel .button:focus-visible{outline:3px solid #96679a;outline-offset:3px}
@media(max-width:1000px){.owned-weapons{grid-template-columns:1fr}.level-up-panel{padding:17px}.level-option{padding:13px}.level-option h3{font-size:18px}.level-option>.button{font-size:11px}.option-top{gap:8px}.option-type{font-size:8px}.pet-grid{grid-template-columns:1fr}}
@media(max-width:760px){.owned-weapons,.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-up-heading h2{font-size:25px}.level-up-intro{font-size:11px}.level-up-options{gap:11px}.level-option>p{font-size:11px}.owned-panel{padding:15px}.battle-panel>.level-up-panel{margin:12px}}
@media(max-width:590px){.owned-weapons,.pet-grid{grid-template-columns:1fr}.level-up-panel{padding:14px}.level-up-heading h2{font-size:22px}.level-up-badge{font-size:13px;padding:6px 9px}.level-up-options{gap:9px}.level-option{padding:11px}.option-top{flex-wrap:wrap;align-content:flex-start;min-height:77px;gap:6px;margin-bottom:8px}.option-type{width:100%;font-size:8px}.choice-icon{width:37px;height:37px}.choice-icon.stat{width:31px;height:31px}.choice-icon.pet{width:49px;height:40px}.choice-weapon .weapon-icon{height:39px;width:58px}.level-option h3{font-size:16px}.level-option>p{font-size:10px;line-height:1.65}.level-option>.button{font-size:10px;padding:8px 5px;min-height:35px}.tier-upgrade{font-size:8px}.level-up-intro{font-size:10px;margin-bottom:12px}.choice-footnote{font-size:8px}.stat-gains{gap:4px}.stat-gains>span{font-size:9px;padding:3px 4px}.battle-panel>.level-up-panel{margin:9px}.owned-panel{padding:13px}}

/* Arena selection distinguishes player opponents from automatic training brutes. */
.arena-selection{margin:-2px 0 13px}.arena-selection-counts{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:7px}.arena-selection-counts>span{padding:4px 9px;border:1px solid #c9af87;border-radius:4px;background:#ebddbd;color:#896840;font-size:10px}.arena-selection-counts strong{font-size:13px;margin-right:3px}.arena-selection-counts .arena-player-count{background:#e0e3bc;border-color:#b3ba83;color:#67733e}.arena-selection>p{font-size:10px;line-height:1.6;color:#967c58}@media(max-width:460px){.arena-selection{margin-bottom:10px}.arena-selection-counts>span{font-size:9px;padding:3px 7px}.arena-selection-counts strong{font-size:12px}.arena-selection>p{font-size:9px}}

/* Reserved cosmetics keep the player's normal appearance available. */
.skin-wardrobe{margin-bottom:18px}.skin-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0}.skin-choice{display:flex;align-items:center;gap:12px;min-width:0;padding:10px 14px;text-align:left;background:#fff4d8;border:1px solid #c6a67b;border-radius:5px}.skin-choice[aria-pressed=true]{border:2px solid #784352;padding:9px 13px;background:#f1dfd2}.skin-thumbnail{width:64px;height:88px;flex-shrink:0}.skin-choice strong{display:block;font-size:17px}.skin-choice small{display:block;margin-top:4px;font-size:11px;color:#856a54}.skin-check{margin-left:auto;font-size:20px;color:#784352}.skin-wardrobe>p{font-size:11px;line-height:1.6;color:#806648}@media(max-width:590px){.skin-choices{grid-template-columns:1fr}.skin-thumbnail{height:76px;width:58px}}
.skin-wardrobe{padding:20px}@media(max-width:590px){.skin-wardrobe{padding:14px}}

/* The tower is paged independently from the fighter and its pending rewards. */
.tower-panel{border:1px solid #b69768;border-radius:6px;background:#f5e7c5;overflow:hidden;box-shadow:0 3px 0 #ad8b5b22}.tower-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 25px;background:linear-gradient(125deg,#efdab0,#f9ebcb);border-bottom:1px solid #cfb281}.tower-heading .section-kicker{color:#9e7446}.tower-heading h2{font:900 31px/1.2 var(--display);letter-spacing:-.8px;color:#765236;margin:5px 0 8px}.tower-heading p{font-size:12px;line-height:1.65;color:#9b7952}.tower-infinity{font:normal 102px/1 Georgia,serif;color:#af895452;transform:rotate(-8deg);padding-right:5px}.tower-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #ccb187;background:#efdfb8}.tower-summary>div{padding:14px 20px;border-right:1px solid #d1b88e}.tower-summary>div:last-child{border-right:0}.tower-summary span{display:block;font-size:10px;color:#9c7e53}.tower-summary strong{display:block;font:900 20px/1.25 var(--display);letter-spacing:-.3px;color:#876037;margin-top:3px;overflow-wrap:anywhere}.tower-summary .tower-next-boss{background:#e3cbd149}.tower-next-boss strong{color:#8b627e}.tower-route-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 20px 10px}.tower-route-tools p{font-size:11px;color:#a08055;line-height:1.65}.tower-route-tools strong{font-weight:normal;color:#8d6a43}.tower-route-tools .button{flex-shrink:0}.tower-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px}.tower-pagination>span{font-size:11px;color:#98754b;text-align:center}.tower-pagination>span strong{color:#795733}.tower-pagination .button{min-width:112px}.tower-pagination .button:disabled{opacity:.36}.tower-jump{display:flex;justify-content:center;align-items:center;gap:9px;padding:0 20px 12px;color:#a0825b;font-size:10px}.tower-jump input{width:74px;min-height:29px;border:1px solid #c9ac7b;border-radius:3px;background:#fff1d4;color:#87633f;font-size:11px;padding:4px 7px}.tower-jump .button{font-size:10px}.tower-page-status{font-size:11px;color:#8b6687;text-align:center}.tower-page-status>p{padding:7px 15px 13px}.tower-page-status .notice{margin:2px 20px 12px;text-align:left;display:flex;gap:10px;align-items:center;justify-content:space-between}.tower-page-status .button{flex-shrink:0}.tower-floors{list-style:none;margin:0;padding:0 20px;position:relative}.tower-floor{display:grid;grid-template-columns:49px 95px minmax(0,1fr) 110px;align-items:center;gap:12px;min-height:116px;position:relative;padding:8px 12px 8px 8px;border:1px solid #c9ad7c;border-radius:5px;background:#faedce;margin-bottom:9px;box-shadow:0 2px 0 #c7a87820}.tower-floor:last-child{margin-bottom:0}.tower-floor.current{border:2px solid #c38a47;padding:7px 11px 7px 7px;background:#fff0c8;box-shadow:0 2px 0 #be8b4c3b}.tower-floor.locked{background:#ebdab8;border-color:#cfb68c}.tower-floor.locked .tower-enemy{opacity:.62;filter:sepia(.18)}.tower-floor-number{align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;border-right:1px solid #d5bb8d;padding-right:8px;color:#ac8d5f;overflow-wrap:anywhere;text-align:center}.tower-floor-number>span:first-child{font-size:8px;text-transform:uppercase;letter-spacing:.7px}.tower-floor-number>strong{font:900 23px/1.3 var(--display);color:#9a7844;max-width:100%}.tower-floor.current .tower-floor-number>strong{color:#b07630}.tower-floor-mark{display:grid;place-items:center;height:17px;width:17px;font-size:12px;background:#e4cc9e;border-radius:50%;margin-top:5px;color:#a78b5b}.tower-floor.completed .tower-floor-mark{background:#dbe0b1;color:#789044}.tower-floor.current .tower-floor-mark{background:#c29353;color:#fff3d0}.tower-enemy{height:100px;min-width:0;display:flex;justify-content:center;align-items:end;background:radial-gradient(ellipse at bottom,#d0ae7433,transparent 70%)}.tower-enemy canvas{display:block;width:100%;height:100%}.tower-floor-copy{min-width:0;padding:4px 0}.tower-floor-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px;font-size:8px;color:#9d8156;line-height:1.5;letter-spacing:.4px;text-transform:uppercase}.tower-floor.current .tower-floor-status{color:#ab733c;font-weight:bold}.tower-floor-copy h3{font:900 19px/1.2 var(--display);letter-spacing:-.3px;color:#855d38;overflow-wrap:anywhere}.tower-enemy-stats{display:block;margin:4px 0 5px;font-size:9px;color:#a78c66}.tower-floor-copy p{font-size:10px;line-height:1.55;color:#a17f52;max-width:310px}.tower-floor-action{min-width:0;text-align:center}.tower-floor-action .button{width:100%;font-size:11px;min-height:34px;padding:6px 8px}.tower-lock-reason{display:block;color:#ae9470;font-size:9px;line-height:1.6}.tower-lock-reason strong{font-size:13px;font-weight:normal}.tower-floor.boss{background:linear-gradient(115deg,#e5cdd0,#f1dfd2);border-color:#aa8499;min-height:139px;box-shadow:0 2px 0 #a67b9133}.tower-floor.boss.current{border-color:#97617e;background:linear-gradient(115deg,#ddbcc9,#f4e2cf);box-shadow:0 0 0 2px #d5ba87}.tower-floor.boss.locked{background:linear-gradient(115deg,#dfc9c7,#e9d4c3);border-color:#b99aa6}.tower-floor.boss .tower-enemy{height:123px;background:radial-gradient(ellipse at bottom,#92637a22,transparent 70%)}.tower-floor.boss .tower-floor-number{border-color:#bb97a56b}.tower-floor.boss .tower-floor-number>strong{color:#986f87}.tower-floor.boss .tower-floor-mark{background:#b18b9e;color:#f6e5d5}.tower-floor.boss .tower-floor-copy h3{color:#825570;font-size:21px}.tower-boss-badge{display:inline-block;padding:2px 6px;border-radius:3px;background:#9b728b;color:#fff0de;letter-spacing:.65px;font-size:8px;font-weight:bold}.tower-floor.boss .tower-enemy-stats{color:#9e7b82}.tower-floor.boss .tower-floor-copy p{color:#9d7880}.tower-footer-note{font-size:10px;color:#ac8b5e;text-align:center;padding:1px 18px 18px}.tower-floors[aria-busy=true]{opacity:.6;pointer-events:none}
@media(max-width:1000px){.tower-heading{padding:20px}.tower-summary>div{padding:12px 14px}.tower-summary strong{font-size:18px}.tower-floors{padding:0 13px}.tower-floor{grid-template-columns:39px 75px minmax(0,1fr) 91px;gap:8px;padding-right:9px}.tower-floor.current{padding-right:8px}.tower-floor-number>strong{font-size:20px}.tower-floor-copy h3{font-size:17px}.tower-floor.boss .tower-floor-copy h3{font-size:19px}.tower-floor-action .button{font-size:10px;padding:6px}.tower-route-tools,.tower-pagination{padding-left:14px;padding-right:14px}.tower-floor-copy p{font-size:9px}}
@media(max-width:760px){.tower-floor{grid-template-columns:44px 92px minmax(0,1fr) 110px;gap:12px}.tower-floor-copy h3{font-size:19px}.tower-floor-copy p{font-size:10px}.tower-floor-action .button{font-size:11px}.tower-floors{padding:0 16px}.tower-summary>div{padding:14px 18px}}
@media(max-width:520px){.tower-heading{padding:17px}.tower-heading h2{font-size:27px}.tower-heading p{font-size:11px}.tower-infinity{font-size:75px}.tower-summary>div{padding:11px 10px}.tower-summary span{font-size:8px}.tower-summary strong{font-size:16px;margin-top:4px}.tower-route-tools{padding:13px 12px 7px;gap:8px}.tower-route-tools p{font-size:9px}.tower-route-tools .button{font-size:9px;padding:5px 7px}.tower-pagination{padding:10px 11px;gap:6px}.tower-pagination>span{font-size:9px}.tower-pagination .button{min-width:0;font-size:9px;padding:5px 7px}.tower-jump{font-size:9px;gap:7px;padding-bottom:10px}.tower-jump input{width:63px}.tower-floors{padding:0 10px}.tower-floor{grid-template-columns:33px 77px minmax(0,1fr);gap:9px;padding:8px 9px 9px 6px;min-height:137px}.tower-floor.current{padding:7px 8px 8px 5px}.tower-floor-number{grid-row:1 / 3;padding-right:7px}.tower-floor-number>strong{font-size:19px}.tower-floor-number>span:first-child{font-size:7px;letter-spacing:.3px}.tower-enemy{grid-row:1 / 3;height:106px}.tower-floor-copy{padding:3px 0 0}.tower-floor-copy h3{font-size:18px}.tower-floor-copy p{font-size:9px}.tower-floor-action{grid-column:3;text-align:left}.tower-floor-action .button{font-size:10px;min-height:29px;max-width:170px}.tower-lock-reason{font-size:9px}.tower-lock-reason br{display:none}.tower-lock-reason strong{font-size:10px;margin-left:3px}.tower-floor.boss{min-height:152px}.tower-floor.boss .tower-enemy{height:123px}.tower-floor.boss .tower-floor-copy h3{font-size:19px}.tower-floor-status{font-size:7px}.tower-boss-badge{font-size:7px}.tower-enemy-stats{font-size:8px}.tower-page-status .notice{margin-left:10px;margin-right:10px;font-size:10px}.tower-footer-note{font-size:9px;padding:2px 10px 14px}}
/* Native animal collection, including rank values and the owner's scaling. */
.tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.tabs .tab{min-width:0;padding-left:6px;padding-right:6px}.tabs .tab-index{display:none}
/* Clans use the same parchment, violet ink and portrait framing as the arena. */
.guild-welcome,.guild-create,.guild-directory-panel{padding:22px;margin-bottom:17px}.guild-welcome{background:linear-gradient(115deg,#ead3b0,#f9eaca)}.guild-welcome h2,.guild-detail-heading h2{font:900 27px/1.2 var(--display);letter-spacing:-.6px;color:#795535;margin:7px 0 9px;overflow-wrap:anywhere}.guild-welcome>p,.guild-create>p{font-size:12px;line-height:1.7;color:#95734e;max-width:570px}.guild-create h3,.guild-section-heading h3{font:900 21px/1.3 var(--display);color:#825b3a;letter-spacing:-.4px;margin:0 0 5px}.guild-create>p{margin-bottom:13px}.guild-detail{margin-bottom:17px;overflow:hidden}.guild-detail-heading{padding:22px;display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(115deg,#e6d0bd,#f5e5c5);border-bottom:1px solid #c6a87b}.guild-detail-heading>div:first-child{min-width:0}.guild-detail-heading p{font-size:11px;color:#9a7652}.guild-detail-heading h2{color:#78556d}.guild-score{border-left:1px solid #bfa2a1;padding-left:20px;flex-shrink:0;text-align:center;color:#88687f}.guild-score strong{display:block;font:900 35px/1.1 var(--display);letter-spacing:-1px}.guild-score span{font-size:9px;display:block;margin-top:6px}.guild-detail-tools{padding:12px 20px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #d0b58c;font-size:11px;color:#9a784e;background:#eddbb8}.guild-detail-tools>span:first-child{font-weight:bold;white-space:nowrap}.guild-leader-note{font-size:10px;line-height:1.6;color:#967755;padding:11px 20px 0}.guild-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding:8px 20px 16px}.guild-member{display:flex;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #d9bf98;min-width:0;flex-wrap:wrap}.guild-portrait{height:65px;width:46px;flex-shrink:0}.guild-member-copy{flex:1;min-width:0}.guild-member-copy strong{font-size:12px;color:#86613e;display:block;overflow-wrap:anywhere;line-height:1.5}.guild-member-copy small{display:block;font-size:10px;color:#a38259;margin-top:3px}.guild-member-actions{display:flex;gap:11px;width:100%;justify-content:flex-end;margin-top:-5px;padding-bottom:2px}.guild-member-actions .text-button{font-size:9px}.guild-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.guild-actions .button{white-space:normal}.guild-applications{border-top:1px solid #cdb18a;padding:16px 20px;background:#e9dec24d}.guild-applications h3{font:900 19px var(--display);color:#88657f;margin-bottom:10px}.guild-applications h3 span{font:normal 12px var(--font);color:#ac8b9d;margin-left:5px}.guild-applications>p{font-size:11px;color:#a0825d}.guild-application{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #d8bf9c}.guild-application strong{font-size:12px;color:#86613e;display:block;overflow-wrap:anywhere}.guild-application small{font-size:9px;color:#a08361;display:block;margin-top:3px}.guild-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.guild-section-heading p{font-size:10px;line-height:1.6;color:#9d7d57}.guild-section-heading>span{white-space:nowrap;color:#9d7f59;font-size:10px}.guild-search-label,.guild-form>label{display:block;font-size:10px;font-weight:bold;color:#92714b;margin:12px 0 6px}.guild-search,.guild-form input,.guild-form textarea{width:100%;border:1px solid #c5a674;border-radius:3px;background:#fff1d5;padding:9px 11px;color:#765137;font:12px var(--font);box-sizing:border-box}.guild-form textarea{resize:vertical;min-height:82px;line-height:1.65}.guild-search:focus,.guild-form input:focus,.guild-form textarea:focus{outline:2px solid #a487a1;outline-offset:2px}.guild-form input:disabled,.guild-form textarea:disabled{opacity:.55}.guild-search{margin-bottom:12px}.guild-form>.button{margin-top:11px}.guild-form>small,.guild-form>p{display:block;font-size:9px;line-height:1.6;color:#a58863;margin-top:8px}.guild-create-fields{display:flex;gap:9px}.guild-create-fields input{flex:1;min-width:0}.guild-create-fields .button{flex-shrink:0;font-size:12px}.guild-directory{list-style:none;padding:0;margin:0}.guild-directory-entry{display:flex;width:100%;gap:12px;text-align:left;align-items:center;border:1px solid #ceb289;border-radius:4px;background:#f3e4c5;padding:13px 12px;margin-top:8px;color:#a18055}.guild-directory-entry:hover:not(:disabled){background:#fff0d0;border-color:#ac8557}.guild-directory-entry.selected{background:#e9d7cb;border-color:#b18b9d;box-shadow:inset 3px 0 #967187}.guild-rank{font:900 22px var(--display);color:#b59464;width:28px;text-align:center;flex-shrink:0}.guild-directory-name{min-width:0;flex:1}.guild-directory-name strong{display:block;font-size:13px;color:#8a613e;overflow-wrap:anywhere}.guild-directory-name small{display:block;font-size:9px;margin-top:5px;line-height:1.5;color:#a2835b;overflow-wrap:anywhere}.guild-directory-numbers{flex-shrink:0;text-align:right}.guild-directory-numbers>strong{font:900 18px var(--display);display:block;color:#94718a;white-space:nowrap}.guild-directory-numbers strong small{font:normal 9px var(--font)}.guild-directory-numbers>small{display:block;font-size:9px;margin-top:4px;color:#a2835b}.guild-empty{padding:18px 6px;font-size:11px;line-height:1.7;color:#a1845c}.guild-pending{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid #af99b0;border-radius:4px;background:#e5d4d3;padding:15px 18px;margin-bottom:17px;color:#88617c}.guild-pending strong{font-size:13px;overflow-wrap:anywhere}.guild-pending p{font-size:10px;margin-top:5px;line-height:1.6}.guild-pending .button{flex-shrink:0}.guild-pending-label{color:#8e687f}.guild-confirmation{border:2px solid #b98160;background:#f3dabe;padding:17px 19px;border-radius:4px;margin-bottom:17px}.guild-confirmation h3{color:#8e553c;font-size:16px;overflow-wrap:anywhere}.guild-confirmation>p{font-size:11px;line-height:1.7;color:#976b4a;margin:7px 0 12px}.button.danger{background:#ad6f55;color:#fff0db;border-color:#8d523c}.guild-forum{border-top:1px solid #c5a77c;padding:20px;background:#f2e3c2}.guild-forum .guild-section-heading h3{font-size:21px}.guild-thread-list{border-top:1px solid #d2b58c}.guild-thread-list>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 8px;border:0;border-bottom:1px solid #d2b58c;background:transparent;color:#97734d;text-align:left}.guild-thread-list>button:hover:not(:disabled){background:#fff1d04d}.guild-thread-list>button>span:first-child{min-width:0;flex:1}.guild-thread-list strong{display:block;font-size:12px;overflow-wrap:anywhere;color:#88607d}.guild-thread-list small{display:block;font-size:9px;line-height:1.6;margin-top:4px;color:#a1835c}.guild-thread-list>button>span:last-child{text-align:right;font-size:14px}.guild-forum-back{margin:0 0 12px}.guild-thread{border:1px solid #cab18d;background:#f9ebce;border-radius:3px;overflow:hidden}.guild-thread>header{padding:15px;background:#e8d5bd;border-bottom:1px solid #c7ac88}.guild-thread h4{font-size:16px;line-height:1.4;color:#815771;overflow-wrap:anywhere}.guild-thread>header>p{font-size:9px;color:#a17e64;margin:5px 0 0}.guild-thread>header .guild-actions{margin-top:12px}.guild-posts{list-style:none;padding:0;margin:0}.guild-posts>li{padding:15px;border-bottom:1px solid #dbc39f}.guild-posts>li>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:10px;color:#875f3c}.guild-posts strong{overflow-wrap:anywhere}.guild-posts time{font-size:9px;color:#ad916b;flex-shrink:0}.guild-posts p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.75;color:#856547;margin-top:9px}.guild-thread>.guild-form{padding:0 15px 15px}.guild-forum-locked{padding:13px 15px;font-size:10px;line-height:1.6;color:#9b7d59}.guild-new-thread{margin-top:15px;border:1px dashed #bfa176;border-radius:3px;padding:12px 15px}.guild-new-thread>summary{cursor:pointer;color:#8d647d;font-size:12px;font-weight:bold}.guild-new-thread[open]>summary{margin-bottom:14px}
@media(max-width:1000px){.tabs .tab{font-size:10px;padding:9px 3px}.guild-roster{gap:0 12px;padding-left:15px;padding-right:15px}.guild-detail-heading,.guild-directory-panel,.guild-create,.guild-welcome{padding:18px}.guild-forum{padding:16px}.guild-detail-tools{padding:11px 15px}.guild-member-copy strong{font-size:11px}.guild-portrait{height:57px;width:39px}}
@media(max-width:590px){.tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;border-bottom:0}.tabs .tab{padding:9px 5px;font-size:11px;border-radius:4px}.guild-welcome,.guild-create,.guild-directory-panel{padding:15px}.guild-detail-heading{padding:16px;gap:11px}.guild-detail-heading h2{font-size:24px}.guild-detail-heading p{font-size:10px}.guild-score{padding-left:13px}.guild-score strong{font-size:29px}.guild-score span{font-size:8px}.guild-roster{grid-template-columns:1fr;padding:5px 15px 12px}.guild-member{flex-wrap:nowrap}.guild-member-actions{width:auto;display:block;margin:0;padding:0;text-align:right;max-width:88px}.guild-member-actions .button{display:block;margin-left:auto;padding:3px 0;font-size:9px}.guild-portrait{height:61px;width:43px}.guild-member-copy strong{font-size:12px}.guild-member-copy small{font-size:9px}.guild-detail-tools{font-size:10px;flex-wrap:wrap}.guild-detail-tools>.button{font-size:10px}.guild-detail-tools>span:last-child{font-size:10px}.guild-section-heading{gap:9px}.guild-section-heading h3,.guild-create h3{font-size:19px}.guild-section-heading p{font-size:9px}.guild-section-heading>span{font-size:9px}.guild-directory-entry{gap:8px;padding:11px 8px}.guild-rank{font-size:19px;width:22px}.guild-directory-name strong{font-size:12px}.guild-directory-numbers>strong{font-size:16px}.guild-directory-numbers>small{font-size:8px}.guild-directory-numbers strong small{font-size:8px}.guild-create-fields{flex-direction:column}.guild-create-fields .button{width:100%}.guild-create>p,.guild-welcome>p{font-size:11px}.guild-pending{padding:13px;align-items:flex-start;flex-direction:column;gap:10px}.guild-pending .button{font-size:10px}.guild-applications{padding:14px 15px}.guild-application{align-items:flex-start;flex-wrap:wrap;gap:9px}.guild-application>div:first-child{flex:1;min-width:100px}.guild-application .button{font-size:10px;padding:5px 8px}.guild-forum{padding:15px}.guild-posts>li,.guild-thread>header{padding:12px}.guild-posts>li>div{flex-wrap:wrap;gap:5px}.guild-posts p{font-size:11px}.guild-thread h4{font-size:14px}.guild-thread>header .button{font-size:9px}.guild-new-thread{padding:11px 12px}.guild-form input,.guild-form textarea{font-size:12px}.guild-confirmation{padding:14px}.guild-confirmation h3{font-size:14px}}
.collection-grid.pets{grid-template-columns:repeat(3,minmax(0,1fr));max-width:350px}.collection-grid.pets .collection-tile{min-height:78px}.collection-grid.pets img{width:85%;height:65px}.detail-icon.is-pet{width:115px;height:82px}.pet-stat-table{overflow-x:auto;margin:12px 0}.pet-stat-table table{border-collapse:collapse;width:100%;font-size:10px;color:#775334}.pet-stat-table caption{text-align:left;font-weight:bold;margin-bottom:7px}.pet-stat-table th,.pet-stat-table td{padding:5px 4px;border-bottom:1px solid #dbc39d;text-align:right}.pet-stat-table th:first-child{text-align:left;font-weight:normal}.pet-stat-table .current-tier{background:#e5e6bd;color:#586738;font-weight:bold}.pet-rule{font-size:10px;color:#906f49;line-height:1.6;margin:8px 0}.pet-owned-stats{color:#766044;font-weight:bold}.pet-detail{position:static}.collection-heading{flex-wrap:wrap}.collection-switch{flex-wrap:wrap}
/* Twenty combatants share one battlefield; keep silhouettes readable on narrow screens. */
.guild-ranking-switch{display:flex;gap:5px;margin:0 0 12px}.guild-ranking-switch button{border:1px solid #b89a77;border-radius:4px;background:#ebd9b6;padding:7px 12px;font-size:11px;color:#937453}.guild-ranking-switch button[aria-pressed=true]{background:#90718b;border-color:#71566e;color:#fff0dc}.guild-war-readiness{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 20px;border-bottom:1px solid #cbb088;background:#e6d4ce}.guild-war-readiness strong{font-size:13px;color:#795572}.guild-war-readiness p{font-size:10px;line-height:1.6;color:#987965;margin-top:5px;max-width:420px}.guild-war-readiness .button{flex-shrink:0}.guild-wars{padding:21px;margin-bottom:17px;background:linear-gradient(130deg,#f1dfc1,#f4e8ca)}.guild-war-rating{flex-shrink:0;text-align:right;color:#805b76}.guild-war-rating strong{display:block;font:900 30px var(--display)}.guild-war-rating span{display:block;font-size:9px;white-space:nowrap}.guild-war-note,.guild-war-footnote{font-size:10px;line-height:1.7;color:#947556}.guild-war-note{max-width:620px;margin-bottom:17px}.guild-wars h4{font-size:12px;margin:15px 0 8px;color:#866178}.guild-war-list{list-style:none;margin:0;padding:0}.guild-war-card{display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid #c6a781;border-left:4px solid #a7858e;background:#f7e8c8;border-radius:4px;margin-bottom:8px;padding:13px 14px}.guild-war-card.won{border-left-color:#859159}.guild-war-card.lost{border-left-color:#b5785d}.guild-war-card-copy{min-width:0}.guild-war-card-copy>.eyebrow{font-size:8px;letter-spacing:.8px}.guild-war-card-copy>strong{display:block;font-size:14px;color:#785736;margin:4px 0;overflow-wrap:anywhere}.guild-war-card-copy>small{display:block;font-size:9px;color:#a18462}.guild-war-card .guild-actions{justify-content:flex-end;flex-shrink:0}.guild-war-history{margin-top:16px;border-top:1px solid #cdb38d;padding-top:13px}.guild-war-history summary{cursor:pointer;color:#846379;font-weight:bold;font-size:12px;margin-bottom:12px}.guild-war-history summary span{font-weight:normal;color:#a68592;margin-left:5px}.guild-war-empty{font-size:11px;color:#a38560;padding:8px 0}.guild-war-footnote{font-size:9px;margin-top:16px}.clan-battle-panel .battle-toolbar{gap:10px;flex-wrap:wrap}.clan-battle-panel .battle-toolbar>div:first-child>small{display:block;color:#a1835a;font-size:9px;margin-top:3px}.clan-battle-hud{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:15px;background:#f9edcf;padding:18px 20px;border-bottom:1px solid #c9aa7e}.clan-battle-hud>div{min-width:0}.clan-battle-hud strong{display:block;font-size:16px;color:#805b42;overflow-wrap:anywhere}.clan-battle-hud>div>span{display:block;font-size:11px;color:#967855;margin-top:3px}.clan-battle-hud small{display:block;font-size:9px;color:#a38561;margin-top:4px}.clan-battle-hud #clan-summary-right{text-align:right}.clan-battle-hud #clan-summary-right .health-track span{margin-left:auto;background:#a87b65}.clan-arena-scroll{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;background:#ddcba6;scrollbar-color:#b29368 #e9d5ad;scrollbar-width:thin}.clan-arena-scroll canvas{display:block;width:100%;min-width:760px;aspect-ratio:11/7}.clan-arena-hint{font-size:9px;color:#9a7c54;padding:10px 15px;border-top:1px solid #cbb187;background:#efddb7;line-height:1.5}.clan-battle-result{text-align:center;padding:25px 16px;border-top:1px solid #c7ac82;background:linear-gradient(110deg,#e8d8b9,#f5e6c5)}.clan-battle-result h2{font:900 27px var(--display);color:#7e637a;margin:7px 0 10px;overflow-wrap:anywhere}.clan-battle-result p{font-size:10px;color:#957650;margin-bottom:16px}.clan-battle-panel .battle-log{min-height:87px}
@media(max-width:590px){.guild-wars{padding:15px}.guild-war-readiness{padding:14px;align-items:flex-start;flex-direction:column;gap:10px}.guild-war-readiness .button{font-size:11px}.guild-war-card{padding:11px;align-items:flex-start;flex-direction:column;gap:10px}.guild-war-card .guild-actions{justify-content:flex-start}.guild-war-rating strong{font-size:24px}.guild-war-rating span{font-size:8px}.guild-wars .guild-section-heading{align-items:flex-start}.guild-wars .guild-section-heading h3{font-size:18px}.clan-battle-hud{padding:12px;gap:8px;grid-template-columns:minmax(0,1fr) 25px minmax(0,1fr)}.clan-battle-hud strong{font-size:12px}.clan-battle-hud>div>span{font-size:9px}.clan-battle-hud .versus{font-size:14px}.clan-battle-panel .battle-toolbar{padding:11px}.clan-battle-result h2{font-size:22px}}

.game-layout.clan-replay-layout{grid-template-columns:minmax(0,1fr)}.clan-replay-layout>aside{display:none}

.guild-war-schedule{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:16px;background:#f9ecca;border:1px solid #c8ab7e;border-radius:4px;margin:14px 0}.guild-war-schedule>div>span,.guild-war-schedule>div>small{display:block;font-size:9px;color:#a2835c}.guild-war-schedule>div>strong{display:block;color:#7e6078;font:900 23px var(--display);margin:5px 0}.guild-war-schedule .guild-war-status{padding-left:17px;border-left:1px solid #cdb391}.guild-war-schedule .guild-war-status strong{font:700 13px var(--font);color:#758044}.guild-war-status p{font-size:10px;color:#927555;line-height:1.6;margin:5px 0}.guild-war-schedule .incomplete strong{color:#af7950}.guild-war-schedule .waiting-opponent strong{color:#8a6d83}.guild-war-last-run{font-size:9px;color:#a38765;margin-top:-7px}@media(max-width:520px){.guild-war-schedule{grid-template-columns:1fr;gap:12px}.guild-war-schedule .guild-war-status{border-left:0;border-top:1px solid #cdb391;padding:11px 0 0}.guild-war-schedule>div>strong{font-size:21px}}
.account-shell{max-width:940px;grid-template-columns:1fr 1.12fr}.account-switch{display:flex;background:#e7d2aa;border:1px solid #c3a272;border-radius:5px;padding:4px;gap:4px;margin-bottom:23px}.account-switch button{flex:1;border:0;background:transparent;color:#87643e;border-radius:3px;padding:10px 6px;font:700 12px var(--font)}.account-switch button[aria-pressed=true]{background:#fff1d0;color:#785139;box-shadow:0 1px 3px #6d442b24}.account-form .field-hint{font-size:10px;color:#9b7b52;line-height:1.5;margin:-12px 0 17px}.account-form .button{margin-top:5px}.account-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:21px;border-bottom:1px solid #d0b58a;margin-bottom:21px}.account-heading h2{overflow-wrap:anywhere;margin-top:4px}.account-admin{display:inline-block;font-size:10px;line-height:1.5;padding:4px 7px;background:#eadce7;color:#755379;border:1px solid #b69ab8;border-radius:3px}.account-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.account-section-title h3{font:900 22px var(--display);color:#805a39}.account-section-title h2{margin:0}.account-count{font-weight:bold;font-size:12px;color:#896842;background:#e7d5af;padding:5px 10px;border-radius:14px}.account-characters{display:grid;gap:11px;margin-bottom:18px}.account-character{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 5px;min-width:0;background:#f2dfb9;border:1px solid #bd9c6d;border-radius:5px;box-shadow:0 2px 0 #c3a1712b}.account-character-portrait{width:73px;height:93px;flex-shrink:0}.account-character>div{min-width:0;flex:1}.account-character h3{font-size:14px;color:#7b5133;overflow-wrap:anywhere}.account-character p{font-size:11px;color:#9f7a4c;margin-top:6px}.account-character .button{flex-shrink:0}.account-empty{padding:28px 14px;border:1px dashed #bea078;border-radius:5px;text-align:center;line-height:1.7;font-size:12px;color:#9a784d;background:#f5e5c1}.account-limit{font-size:12px;text-align:center;color:#8b6c44;padding:12px;background:#e9d8b4;border-radius:4px}.legacy-recovery{margin-top:23px;border-top:1px solid #d0b58a;padding-top:19px}.legacy-recovery h3{font-size:14px;color:#85603e;margin-bottom:8px}.legacy-recovery>p{font-size:11px;line-height:1.6;color:#9b794e}.legacy-choices{display:grid;gap:7px;margin:12px 0}.legacy-choice{display:flex;gap:10px;align-items:center;background:#f2e0be;border:1px solid #c7ad83;border-radius:4px;padding:10px;cursor:pointer}.legacy-choice:has(input:checked){background:#e9dfbe;border-color:#a6a268}.legacy-choice input{accent-color:#8b7944;width:17px;height:17px;flex-shrink:0;margin:0}.legacy-choice strong{display:block;font-size:12px;color:#795638}.legacy-choice small{display:block;font-size:10px;color:#95754d;margin-top:4px}.legacy-note{font-size:10px!important}.account-shell .join-intro{margin-bottom:18px}@media(max-width:760px){.account-shell{grid-template-columns:1fr;max-width:540px}.account-shell .join-visual{grid-template-columns:1fr 1.3fr}.account-character-portrait{height:87px;width:67px}}@media(max-width:460px){.account-shell .join-visual{grid-template-columns:.85fr 1.15fr}.account-character{padding-right:9px;gap:5px}.account-character-portrait{width:60px;height:80px}.account-character h3{font-size:12px}.account-character .button{padding:6px 9px;font-size:11px}.account-admin{font-size:9px}.account-heading .button{font-size:10px;padding:6px 8px}}
/* NoLimit v0.12 — a single visual system for the existing game screens. */
:root {
  --ink: #403126;
  --dark: #32271f;
  --paper: #fbf4e5;
  --cream: #fffaf0;
  --paper-shade: #efdfc0;
  --line: #c4a77e;
  --orange: #ce6c27;
  --orange-dark: #87411f;
  --purple: #376e68;
  --green: #577140;
  --red: #a54834;
  --muted: #7c6650;
  --focus: #247d78;
  --frame: #826145;
  --panel-shadow: 0 3px 0 #b79b7247, 0 9px 24px #67462c09;
}
body {
  background-color: #e6d4b5;
  background-image: radial-gradient(ellipse at 50% 0, #fff8e8c7, transparent 70%), radial-gradient(#9e81551a .7px, transparent .7px);
  background-size: 100% 950px, 6px 6px;
  color: var(--ink);
}
.site-shell { max-width: 1220px; padding: 0 28px; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible,
.appearance-editor button:focus-visible, .appearance-editor select:focus-visible, .collection-tile:focus-visible {
  outline: 3px solid var(--focus); outline-offset: 3px;
}
button:disabled { opacity: .5; }
.button {
  min-height: 42px; padding: 10px 17px; border: 1px solid #a4835e;
  border-bottom: 3px solid #876442; border-radius: 6px; background: #f8ead0;
  color: #63432c; font-size: 13px; box-shadow: inset 0 1px #fff9e8;
  transition: background .15s, transform .15s, box-shadow .15s;
}
.button:hover:not(:disabled) { background: #fff7e4; box-shadow: inset 0 1px #fff, 0 3px 7px #69462c14; }
.button:active:not(:disabled) { border-bottom-width: 3px; margin-bottom: 0; transform: translateY(2px); }
.button.primary {
  background: linear-gradient(#e59241, #d77a2e); color: #452d1e;
  border-color: #a25b2c; border-bottom-color: #784223; text-shadow: 0 1px #ffd49382;
  box-shadow: inset 0 1px #ffcc7f;
}
.button.primary:hover:not(:disabled) { background: linear-gradient(#efa553, #e18a36); box-shadow: inset 0 1px #ffe0a4, 0 3px 9px #9a5b2526; }
.button.purple { background: #3f766d; color: #fff8e8; border-color: #2d514b; text-shadow: none; box-shadow: inset 0 1px #7c9e87; }
.button.purple:hover:not(:disabled) { background: #4b8378; }
.button.danger { background: #a7553e; border-color: #7c3d2e; color: #fff6df; box-shadow: inset 0 1px #cf8e68; }
.button.small { min-height: 35px; padding: 7px 12px; font-size: 12px; }
.button.large { min-height: 48px; font-size: 16px; padding: 12px 25px; }
.text-button { color: #376d65; font-size: 12px; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.text-button:hover:not(:disabled) { color: #224f47; }
.eyebrow, .section-kicker { color: #8b572d; font-size: 10px; letter-spacing: 1.4px; }
.game-intro { padding: 26px 2px 22px; align-items: center; }
.game-intro h1 { color: #493225; font-size: 29px; letter-spacing: -1px; }
.game-intro p { color: #78634c; font-size: 13px; line-height: 1.55; margin-top: 7px; }
.unlimited-note { border: 1px solid #bdab86; border-radius: 7px; background: #f6ecd4; padding: 10px 15px; color: #52675a; font-size: 11px; box-shadow: inset 0 1px #fff6df; }
.unlimited-symbol { color: #37786a; font-size: 35px; }
.game-layout { grid-template-columns: 230px minmax(0, 1fr); gap: 23px; margin-bottom: 32px; }
.fighter-panel, .panel, .tower-panel, .table-wrap { border-color: #b99b70; border-radius: 8px; background: var(--paper); box-shadow: var(--panel-shadow); }
.fighter-panel { border-color: #a78960; }
.fighter-panel-header { padding: 11px 14px; background: #5c4735; border-bottom-color: #423226; color: #f7e4bd; font-size: 11px; }
.fighter-panel-header strong { color: #ffdc86; font-size: 12px; }
.fighter-portrait { height: 178px; background: radial-gradient(ellipse at center bottom, #d6bb865e 0, transparent 68%), #f8efdc; border-bottom-color: #d6c19c; }
.fighter-name { color: #4a3225; font-size: 23px; padding-top: 14px; }
.fighter-record { color: #80654b; font-size: 11px; padding: 5px 10px 16px; }
.fighter-record strong { color: #4e3b2c; }
.xp-block { padding: 0 15px 15px; }
.xp-label { font-size: 10px; color: #725d47; margin-bottom: 7px; }
.xp-label strong { color: #355f52; }
.progress-track { background: #e6d5b7; border-color: #b9a17b; height: 10px; border-radius: 5px; }
.progress-track > span { background: linear-gradient(#8caa71, #678651); border-radius: 4px; }
.stats-grid { padding: 10px 14px; gap: 0; background: #f0e4cb; border-top-color: #d3bc94; }
.stat-row { color: #644a34; font-size: 12px; padding: 6px 0; border-bottom: 1px solid #d9c6a64d; }
.stat-row:last-child { border-bottom: 0; }
.stat-symbol { width: 19px; height: 19px; object-fit: contain; }
.stat-value { color: #453224; font-size: 15px; font-variant-numeric: tabular-nums; }
.mini-track { width: 36px; height: 4px; background: #dac5a0; }
.mini-track span { background: #a98659; }
.equipment { padding: 14px; border-color: #d6c29f; background: #fbf2df; }
.equipment h3 { font-size: 11px; color: #6d5138; margin-bottom: 10px; }
.arsenal-count, .arsenal-caption, .sidebar-note, .skill-empty { color: #806950; font-size: 10px; }
.sidebar-note { margin: 13px 4px; line-height: 1.65; }
.arsenal-mini { border-color: #cbb48e; background: #fff8e9; border-radius: 4px; height: 36px; }
.skill-chip { color: #3d6658; background: #e8ebd8; border-color: #b0b99b; padding: 5px 7px; }
.tabs { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 6px; padding: 0; margin-bottom: 20px; border: 0; }
.tabs .tab {
  display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 6px;
  min-height: 66px; padding: 10px 4px; border: 1px solid #ad9068; border-bottom: 3px solid #9c7c56;
  border-radius: 7px; background: #f3e5c8; color: #6b5037; font-size: 11px;
  box-shadow: inset 0 1px #fff8e8; transition: background .15s, transform .15s;
}
.tab-icon { display: block; width: 21px; height: 21px; flex-shrink: 0; }
.tab-label { line-height: 1.2; }
.tabs .tab:hover:not(:disabled) { background: #fff2d5; transform: translateY(-1px); }
.tabs .tab[aria-selected=true] { color: #fff7dc; background: #426e63; border-color: #34574d; border-bottom-color: #2c483d; box-shadow: inset 0 1px #7b9480; }
.tabs .tab[aria-selected=true]:hover:not(:disabled) { color: #fff7dc; background: #426e63; transform: none; }
.panel-title { background: #efe0c3; padding: 14px 19px; border-bottom-color: #cdb58e; }
.panel-title h2 { color: #573c28; font-size: 16px; }
.panel-title .small { font-size: 11px; color: #7c6249; }
.cell-hero { grid-template-columns: 235px minmax(0,1fr); background: #fff7e5; min-height: 270px; margin-bottom: 22px; border-color: #b39264; }
.cell-portrait { border-right-color: #cbb087; background: transparent; }
.cell-portrait canvas { min-height: 270px; }
.cell-intro { padding: 31px 28px; align-self: center; }
.cell-intro h2 { color: #493125; font-size: 35px; margin: 8px 0 7px; }
.cell-intro > p { color: #725239; font-size: 13px; }
.cell-intro .cell-description { color: #7b634b; font-size: 12px; line-height: 1.65; margin: 14px 0 18px; max-width: 340px; }
.cell-intro small { color: #827056; font-size: 10px; margin-top: 11px; }
.skin-wardrobe { margin-bottom: 22px; padding: 21px; }
.section-heading h2, .collection-heading h2 { color: #513725; font-size: 21px; }
.section-heading > span { color: #7c6750; font-size: 11px; white-space: normal; }
.skin-choice { background: #f4e8cf; border-color: #c3aa80; border-radius: 6px; }
.skin-choice[aria-pressed=true] { background: #e9ecda; border-color: #6b8c74; }
.skin-choice strong { color: #573d2b; }
.skin-choice small, .skin-wardrobe > p { color: #7c664e; font-size: 11px; }
.collection-panel { padding: 22px; gap: 0 22px; margin-bottom: 22px; grid-template-columns: minmax(0, 1fr) minmax(0, .92fr); }
.collection-heading { margin-bottom: 21px; }
.collection-heading p { font-size: 11px; color: #7d6750; }
.collection-switch { background: #e8d9bc; border-color: #c6ae87; border-radius: 6px; padding: 4px; gap: 3px; }
.collection-switch button { color: #755738; border-radius: 4px; font-size: 11px; padding: 8px 10px; }
.collection-switch button[aria-pressed=true] { color: #335e50; background: #fff8e8; }
.collection-switch strong { font-size: 10px; color: inherit; }
.collection-grid { gap: 7px; max-width: none; grid-template-columns: repeat(7, minmax(0,1fr)); }
.collection-tile { background: #eddfc3; border-color: #c4ae88; border-radius: 5px; padding: 4px; box-shadow: inset 0 1px #fff4d8; }
.collection-tile.local.locked { border-color: #c2aa84; }
.collection-tile.local.locked img { opacity: .48; filter: saturate(.6); }
.collection-tile.acquired { background: #eaf0d4; border-color: #8b9c69; }
.collection-tile[aria-pressed=true] { outline-color: #44756a; background: #fff9e8; box-shadow: 0 0 0 3px #e6e6cb; }
.collection-tile:hover { background: #fff7e3; border-color: #91603b; }
.collection-legend { font-size: 10px; color: #796149; gap: 8px 12px; margin-top: 15px; }
.collection-detail { padding: 19px; border-color: #c4ac84; background: #fff9ec; border-radius: 6px; box-shadow: inset 0 3px #e5d0a5; }
.detail-heading h3 { color: #523725; font-size: 23px; line-height: 1.2; }
.collection-status { font-size: 10px; color: #785d43; border-color: #c4af8d; background: #eee1c6; padding: 4px 7px; }
.collection-status.acquired { color: #42623c; background: #e5edcf; border-color: #adb58b; }
.local-effect, .source-effect, .source-description, .unlock-hint, .arsenal-explanation { color: #725940; font-size: 12px; line-height: 1.7; }
.catalog-chance { color: #5b6948; font-size: 11px; border-color: #d4c5a7; }
.catalog-chance span, .source-reference summary, .pet-rule { color: #7e654c; font-size: 11px; line-height: 1.6; }
.pet-stat-table table { font-size: 11px; color: #664c35; }
.pet-stat-table th, .pet-stat-table td { padding: 7px 5px; border-color: #e0cfaf; }
.pet-stat-table .current-tier { color: #3f6544; background: #e6ecd5; }
.pet-hp-cost { background: #f7ead4; border-left: 3px solid #c28a4d; padding: 9px 11px; border-radius: 0 4px 4px 0; }
.notice { color: #416153; background: #edf0dc; border-color: #acb89b; border-left: 4px solid #64816a; border-radius: 6px; padding: 14px 17px; line-height: 1.6; }
.notice.error { background: #fbe8d3; color: #86462d; border-color: #c59b73; border-left-color: #ae613d; }
.opponents-heading { margin-top: 27px; margin-bottom: 14px; }
.opponents-heading h2 { color: #553b28; font-size: 20px; font-family: var(--display); }
.opponents-heading .text-button { font-size: 12px; }
.arena-selection { padding: 13px 16px; background: #eadebf; border: 1px solid #c4ad84; border-radius: 6px; margin-bottom: 16px; }
.arena-selection-counts { gap: 10px; }
.arena-selection-counts > span { color: #785e45; font-size: 11px; }
.arena-selection-counts strong { color: #62442e; }
.arena-selection .arena-player-count, .arena-selection .arena-player-count strong { color: #3c6d5c; }
.arena-selection p { color: #7b6349; font-size: 11px; line-height: 1.55; margin-top: 7px; }
.opponent-grid { gap: 13px; }
.opponent-card { flex-direction: column; gap: 0; min-height: 211px; padding: 12px 10px 15px; border: 1px solid #bba079; border-bottom: 3px solid #ac8a61; border-radius: 7px; background: linear-gradient(#fff7e5, #f4e7c9); text-align: center; box-shadow: inset 0 1px #fffdf3; transition: background .15s, transform .15s, box-shadow .15s; }
.opponent-card canvas { width: 116px; height: 119px; max-width: 100%; margin-bottom: 6px; background: radial-gradient(ellipse at center 85%, #ddc59961, transparent 60%); }
.opponent-card:hover:not(:disabled) { background: #fff6df; transform: translateY(-3px); box-shadow: 0 5px 10px #77563716; }
.opponent-card.selected { padding: 11px 9px 14px; border: 2px solid #477b68; border-bottom-width: 4px; background: linear-gradient(#f7f7df, #e8edcf); box-shadow: 0 0 0 3px #f4ecd3, 0 0 0 4px #9aab83; }
.opponent-card.selected:hover:not(:disabled) { background: linear-gradient(#f7f7df, #e8edcf); box-shadow: 0 0 0 3px #f4ecd3, 0 0 0 4px #9aab83; }
.opponent-card.selected::after { content: '✓'; position: absolute; right: 9px; top: 9px; display: grid; place-items: center; width: 23px; height: 23px; border-radius: 50%; background: #46745e; color: #fff9db; font-weight: bold; box-shadow: 0 2px 0 #355244; }
.opponent-info strong { color: #553a28; font-size: 14px; }
.opponent-info .level { display: block; color: #786048; font-size: 11px; margin: 5px 0 9px; }
.opponent-kind { font-size: 10px; line-height: 1.3; color: #756247; border-color: #c7b18b; background: #ebdfc4; padding: 3px 7px; border-radius: 3px; }
.opponent-kind.player { color: #3b6755; background: #e0e8cc; border-color: #acb793; }
.opponents-note { color: #7f694f; font-size: 11px; line-height: 1.65; margin: 15px 2px 0; }
.arena-hud { padding: 16px 20px; background: #fff7e5; border-color: #c8b18a; }
.combatant-name { color: #573d29; font-size: 15px; }
.combatant-name small, .health-caption { color: #7e654a; font-size: 10px; }
.health-track { height: 14px; border-color: #a9956c; background: #dfccaa; border-radius: 5px; }
.health-track span { background: linear-gradient(#92ac64, #6a874d); border-radius: 3px; }
.combatant.right .health-track span { background: linear-gradient(#c68a66, #aa654c); }
.versus { color: #9d653c; font-size: 23px; }
.arena-controls { background: #f1e2c4; padding: 16px 19px; border-color: #c8ad82; }
.arena-controls p { color: #786046; font-size: 12px; }
.arena-controls strong { color: #543a28; }
.battle-toolbar { background: #e4d2ad; border-color: #baa07a; padding: 13px 17px; }
.battle-toolbar strong { color: #573c28; font-size: 13px; }
.speed-button { color: #6e4f32; border-color: #ac8c60; border-radius: 4px; min-height: 32px; }
.speed-button.active { background: #4b7869; border-color: #3b5e50; color: #fff9e5; }
.battle-log { background: #faf1de; padding: 13px 18px; min-height: 100px; border-color: #c9b28a; }
.battle-log p { color: #7c644b; font-size: 12px; padding: 3px 0; }
.battle-log p:last-child { color: #543b29; }
.result-banner { background: #e7edcf; border-color: #81995a; padding: 22px; }
.result-banner.loss { background: #f0dfc2; border-color: #b18a62; }
.result-heading { color: #4f733d; }
.result-banner.loss .result-heading { color: #926039; }
.result-heading small, .result-details { color: #765e44; }
.result-details strong, .result-rewards { color: #486d50; }
.page-heading h2 { color: #533925; }
.page-heading p, .history-mode, .history-time { color: #7b624a; font-size: 11px; line-height: 1.6; }
.data-table { font-size: 13px; }
.data-table th { padding: 12px 15px; background: #5b4635; color: #f4e3c2; border-color: #453526; font-size: 10px; text-transform: uppercase; letter-spacing: .6px; }
.data-table td { padding: 13px 15px; color: #6b5138; border-color: #ddcbaa; background: #fff6e5; }
.data-table tr:nth-child(even) td { background: #f2e7cf; }
.data-table tr.self td { background: #e7edcf; }
.table-name strong { font-size: 13px; color: #513824; }
.rank-number { color: #a16f34; font-size: 21px; }
.table-rating { color: #3f6f5c!important; }
.record-win { color: #4d753e; }.record-loss { color: #9a593b; }
.empty-state { padding: 32px 22px; color: #7a6147; background: #faf0da; border-color: #b9a07a; border-radius: 7px; font-size: 13px; }
.toast { color: #4b5e3d; background: #fff7e4; border-color: #bba27a; border-left-color: #6f8b4b; border-radius: 7px; box-shadow: 0 7px 22px #5036202e; font-size: 13px; }
.toast.error { color: #874a2e; background: #fff0d9; border-left-color: #ac6340; }
.site-footer { color: #80684e; font-size: 10px; padding: 22px 0 26px; border-color: #b79a723f; }

/* Progression, the tower and clans share the same paper and dark ink. */
.level-up-panel { border-color: #b59157; background: #fff1d1; border-radius: 8px; box-shadow: var(--panel-shadow); }
.level-up-heading h2, .level-option h3 { color: #5b3c25; }
.level-up-intro, .level-option p, .level-up-footnote, .choice-footnote { color: #785a3e; font-size: 12px; line-height: 1.6; }
.level-option { background: #fff9e9; border-color: #c7a574; border-radius: 6px; }
.tower-heading { padding: 26px; background: linear-gradient(110deg, #ead6ad, #fcf1d9); border-color: #c8ad7f; }
.tower-heading h2 { color: #533722; font-size: 32px; }
.tower-heading p { color: #765b41; font-size: 13px; }
.tower-infinity { color: #9e7d3c55; }
.tower-summary { background: #f3e8cd; border-color: #d1b98e; }
.tower-summary > div { padding: 17px 21px; border-color: #d3bf9a; }
.tower-summary span { color: #7d6649; font-size: 11px; }
.tower-summary strong { color: #674329; font-size: 21px; margin-top: 6px; }
.tower-summary .tower-next-boss { background: #e6e9d0; }
.tower-next-boss strong { color: #416c56; }
.tower-route-tools p, .tower-route-tools strong, .tower-jump, .tower-pagination > span { color: #785e44; font-size: 12px; }
.tower-floors { padding: 3px 21px; }
.tower-floor { grid-template-columns: 51px 101px minmax(0,1fr) 116px; background: #fff8e7; border-color: #cab18a; border-radius: 7px; margin-bottom: 12px; min-height: 128px; }
.tower-floor.current { border-color: #b87d31; background: #fff3cc; box-shadow: 0 0 0 2px #ebd9ae; }
.tower-floor.locked { background: #efe2c7; border-color: #cfbd9c; }
.tower-floor-number { border-color: #d4be97; }
.tower-floor-number > span:first-child { color: #856b4d; font-size: 9px; }
.tower-floor-number > strong { color: #826037; font-size: 25px; }
.tower-floor-copy h3 { color: #583a23; font-size: 20px; }
.tower-floor-copy p { color: #7f6245; font-size: 11px; }
.tower-floor-status { color: #74603f; font-size: 9px; }
.tower-enemy-stats { font-size: 11px; color: #765d43; }
.tower-floor-action .button { min-height: 39px; font-size: 12px; }
.tower-lock-reason { font-size: 10px; color: #836d50; }
.tower-floor.boss, .tower-floor.boss.locked { background: linear-gradient(110deg, #dedfc6, #f3e7cd); border-color: #9ba988; box-shadow: 0 2px 0 #82916a26; }
.tower-floor.boss.current { background: linear-gradient(110deg, #dce7c8, #fbf0d5); border-color: #63836b; box-shadow: 0 0 0 2px #c7d1ac; }
.tower-floor.boss .tower-floor-copy h3, .tower-floor.boss .tower-floor-number > strong { color: #41664f; }
.tower-boss-badge { background: #4c7059; color: #fff5d8; border-color: #3e5a46; font-size: 9px; }
.tower-footer-note { color: #806346; font-size: 11px; padding-bottom: 20px; }
.guild-welcome, .guild-create, .guild-directory-panel, .guild-wars { padding: 24px; margin-bottom: 22px; }
.guild-welcome, .guild-detail-heading { background: linear-gradient(110deg, #e8d9b9, #fcf3de); }
.guild-welcome h2, .guild-detail-heading h2, .guild-create h3, .guild-section-heading h3 { color: #523b27; }
.guild-welcome > p, .guild-create > p, .guild-war-note, .guild-war-footnote, .guild-section-heading p { color: #775e44; font-size: 12px; line-height: 1.7; }
.guild-detail-heading p, .guild-section-heading > span, .guild-leader-note, .guild-detail-tools, .guild-form > small, .guild-form > p { color: #7d664b; font-size: 11px; }
.guild-score, .guild-war-rating { color: #3f6b58; }
.guild-score span, .guild-war-rating span { font-size: 10px; }
.guild-detail-tools { background: #ede0c2; border-color: #cdb78f; padding: 15px 20px; }
.guild-roster { padding-top: 11px; padding-bottom: 20px; }
.guild-member { border-color: #dfccaa; padding: 11px 0; }
.guild-member-copy strong { color: #543b26; font-size: 13px; }
.guild-member-copy small { color: #7f654a; font-size: 11px; }
.guild-directory-entry { border-color: #c6b08a; background: #fcf2dd; border-radius: 6px; padding: 16px 14px; margin-top: 10px; }
.guild-directory-entry:hover:not(:disabled) { background: #fff8e8; }
.guild-directory-entry.selected { background: #e8edd4; border-color: #95a37a; box-shadow: inset 4px 0 #5e8667; }
.guild-directory-entry.selected:hover:not(:disabled) { background: #e8edd4; border-color: #95a37a; }
.guild-directory-name strong { color: #543924; font-size: 14px; }
.guild-directory-name small, .guild-directory-numbers > small { color: #7c654a; font-size: 10px; }
.guild-rank { color: #9b7946; }
.guild-directory-numbers > strong { color: #3f6a55; font-size: 20px; }
.guild-ranking-switch button { min-height: 36px; color: #6f5438; background: #eee0c2; border-color: #bda17a; font-size: 12px; }
.guild-ranking-switch button[aria-pressed=true] { background: #4e7561; border-color: #3d5c4b; color: #fff4d8; }
.guild-wars { background: #fcf3df; }
.guild-war-schedule { background: #efe8ce; border-color: #c7b28a; border-radius: 6px; padding: 19px; }
.guild-war-schedule > div > span, .guild-war-schedule > div > small, .guild-war-last-run { color: #7c6448; font-size: 10px; }
.guild-war-schedule > div > strong { color: #3e6853; font-size: 25px; }
.guild-war-status p { font-size: 11px; color: #725b40; }
.guild-war-card { background: #fff7e3; border-color: #ceb28a; border-left-color: #ac936b; padding: 15px; border-radius: 6px; }
.guild-war-card-copy > strong { color: #573b26; }
.guild-war-card-copy > small, .guild-war-empty { color: #7c6349; font-size: 11px; }
.guild-war-card.won { border-left-color: #67864f; }.guild-war-card.lost { border-left-color: #ac6c4a; }
.guild-wars h4, .guild-war-history summary, .guild-forum .guild-section-heading h3 { color: #4a6954; }
.guild-forum { background: #f7edda; padding: 23px; }
.guild-thread { background: #fff8e8; border-color: #cbb48f; border-radius: 6px; }
.guild-thread > header { background: #eee0c2; border-color: #c8ae84; }
.guild-thread h4, .guild-thread-list strong, .guild-new-thread > summary { color: #47694f; }
.guild-thread-list strong { font-size: 13px; }
.guild-thread-list small, .guild-thread > header > p, .guild-posts time { color: #81674b; font-size: 10px; }
.guild-posts p { color: #654b34; font-size: 13px; }
.guild-search, .guild-form input, .guild-form textarea, .tower-jump input, .join-form input, .body-controls select {
  background: #fffbf1; border-color: #bfa47d; border-radius: 5px; color: #523b28; box-shadow: inset 0 2px 3px #76543108;
}
.guild-search, .guild-form input, .guild-form textarea { font-size: 13px; padding: 11px 12px; }
.guild-search-label, .guild-form > label { color: #6d5036; font-size: 12px; }
.guild-empty, .guild-forum-locked { color: #81684b; font-size: 12px; }
.guild-applications { background: #f0e5cd; }
.guild-applications h3 { color: #466a53; }
.guild-application strong { color: #573c26; font-size: 13px; }
.guild-application small { color: #7e654a; font-size: 10px; }
.guild-pending { background: #e5ead1; border-color: #a4b08a; color: #526a49; }
.guild-confirmation { border-color: #bd8551; background: #f9e9cf; border-radius: 6px; }
.guild-confirmation > p { color: #78543b; font-size: 12px; }

/* Account cards and the appearance workshop. */
.account-shell { max-width: 1000px; grid-template-columns: 1fr 1.12fr; margin: 27px auto 40px; border: 1px solid #a98960; border-radius: 11px; background: #fff6e5; box-shadow: 0 5px 0 #af8e6247, 0 18px 44px #68472b12; }
.join-visual { background: #ead5ad; border-right: 1px solid #c3a77b; }
.join-illustration { min-height: 305px; background: linear-gradient(#f1ddaa17, #e5cfa020), url('/assets/labrute/ui/arena-card.webp') center/cover; }
.join-visual-copy { padding: 27px 32px 30px; background: #e2c594; border-color: #bca171; }
.join-visual-copy h1 { font-size: 34px; line-height: 1.08; color: #583923; }
.join-visual-copy p { color: #755333; font-size: 13px; }
.join-features { gap: 24px; margin-top: 23px; color: #755936; font-size: 10px; }
.join-features strong { color: #426851; font-size: 24px; }
.join-form-wrap { padding: 31px; }
.join-form-wrap h2 { font-size: 27px; color: #533825; }
.join-intro { color: #7b6147; font-size: 13px; line-height: 1.65; }
.account-switch { background: #ecdec1; border-color: #c2a47a; border-radius: 7px; padding: 4px; margin-bottom: 27px; }
.account-switch button { padding: 12px 8px; color: #765638; font-size: 12px; min-height: 42px; border-radius: 4px; }
.account-switch button[aria-pressed=true] { background: #fff8e7; color: #365f4e; box-shadow: 0 2px 3px #79593b1a; }
.join-form label { font-size: 12px; color: #63462d; margin-bottom: 8px; }
.join-form input { min-height: 44px; padding: 11px 13px; font-size: 15px; }
.account-form .field-hint, .join-note { color: #846b50; font-size: 11px; line-height: 1.55; }
.account-heading { border-color: #d5bd95; padding-bottom: 23px; margin-bottom: 24px; }
.account-heading h2 { font-size: 29px; }
.account-admin { background: #e7ead1; border-color: #adb58a; color: #486745; border-radius: 4px; padding: 5px 8px; }
.account-section-title h3 { color: #5d4028; font-size: 23px; }
.account-count { background: #e8dcc1; color: #6d5234; padding: 6px 12px; }
.account-characters { gap: 13px; margin-bottom: 21px; }
.account-character { border-color: #bfa17b; border-bottom-width: 3px; border-radius: 7px; background: linear-gradient(100deg, #efe0bc, #fff7e5); padding: 11px 14px 11px 5px; gap: 13px; }
.account-character-portrait { width: 85px; height: 105px; }
.account-character h3 { color: #553823; font-size: 16px; }
.account-character p { color: #7b5d40; font-size: 12px; }
.account-empty { border-color: #b89d74; border-radius: 6px; padding: 31px 16px; background: #f6ecd6; color: #7d6041; font-size: 13px; }
.account-limit { background: #ebe4c9; color: #67704f; font-size: 12px; border: 1px solid #c9c49e; border-radius: 5px; }
.legacy-recovery { margin-top: 26px; padding-top: 22px; border-color: #d9c29b; }
.legacy-recovery h3 { color: #705036; font-size: 14px; }
.legacy-recovery > p { color: #80654b; font-size: 11px; }
.legacy-choice { background: #f5ead3; border-color: #cdb58e; border-radius: 5px; padding: 11px; }
.legacy-choice:has(input:checked) { background: #e8ecd3; border-color: #a5b288; }
.legacy-choice input { accent-color: #567d58; width: 19px; height: 19px; }
.legacy-choice strong { color: #5e442d; font-size: 13px; }.legacy-choice small { color: #7d6248; font-size: 11px; }
.appearance-card { border-color: #c1a77e; border-radius: 6px; background: #f4e5c5; }
.appearance-card.selected { background: #e6ebcc; border-color: #618367; box-shadow: 0 2px 0 #7190713b; }
.appearance-card .appearance-check { background: #567c58; }
.customize-caption { color: #7c654b; font-size: 11px; }
.appearance-editor { background: #fff5e2; border-color: #856442; border-radius: 9px; color: #684c34; }
.editor-heading, .editor-footer { background: #edddbc; border-color: #c6ad83; }
.editor-heading h2 { color: #5a3a22; }
.editor-close { color: #6d4d30; border-color: #b9a078; background: #fff5df; width: 35px; height: 35px; }
.editor-options legend, .body-controls label, .color-control > label { color: #745338; font-size: 12px; }
.body-controls select { min-height: 37px; font-size: 12px; }
.gender-switch button { color: #745435; min-height: 40px; font-size: 12px; border-color: #baa27b; background: #efe0be; border-radius: 5px; }
.gender-switch button[aria-pressed=true] { background: #4d7960; border-color: #3c5f4a; color: #fff5df; }
.color-swatch { width: 23px; height: 23px; }.color-swatch[aria-pressed=true] { outline-color: #376e60; }
.editor-context-note, .editor-preview-column > p { color: #7b6248; font-size: 11px; }

/* Responsive layouts preserve the combat canvas and keep all six modes close. */
@media (max-width: 1050px) {
  .site-shell { padding: 0 22px; }
  .game-layout { grid-template-columns: 205px minmax(0,1fr); gap: 19px; }
  .tabs .tab { font-size: 10px; gap: 5px; min-height: 63px; }
  .cell-hero { grid-template-columns: 185px minmax(0,1fr); min-height: 250px; }
  .cell-portrait canvas { min-height: 250px; }
  .cell-intro { padding: 24px 20px; }.cell-intro h2 { font-size: 30px; }
  .collection-panel { display: block; padding: 20px; }
  .collection-grid { grid-template-columns: repeat(9,minmax(0,1fr)); max-width: none; }
  .collection-detail { position: static; display: flex; gap: 15px; margin-top: 19px; min-height: 0; }
  .detail-icon { margin: 0; flex-shrink: 0; }
  .tower-floor { grid-template-columns: 43px 83px minmax(0,1fr) 95px; gap: 9px; padding-left: 6px; padding-right: 9px; }
  .tower-floor-copy h3 { font-size: 18px; }
  .tower-floor-action .button { font-size: 11px; padding: 7px; }
  .opponent-card { min-height: 205px; }.opponent-info strong { font-size: 13px; }
}
@media (max-width: 760px) {
  .site-shell { padding: 0 17px; }
  .game-intro { padding: 20px 0; }.game-intro h1 { font-size: 26px; }.game-intro p { font-size: 12px; }
  .unlimited-note { font-size: 10px; padding: 9px 11px; }.unlimited-symbol { font-size: 30px; }
  .game-layout { display: flex; flex-direction: column; gap: 19px; }
  .fighter-panel { display: grid; grid-template-columns: 105px minmax(0,1fr) 166px; }
  .fighter-panel-header { grid-column: 1/-1; padding: 8px 12px; }
  .fighter-portrait { height: 131px; grid-row: 2/span 3; grid-column: 1; border-bottom: 0; }
  .fighter-name { grid-column: 2; grid-row: 2; padding: 14px 12px 1px; text-align: left; font-size: 20px; }
  .fighter-record { grid-column: 2; grid-row: 3; padding: 4px 12px 8px; text-align: left; font-size: 11px; }
  .xp-block { grid-column: 2; grid-row: 4; padding: 0 12px 14px; }
  .xp-label { font-size: 10px; }
  .stats-grid { grid-column: 3; grid-row: 2/span 3; padding: 8px 12px; border-top: 0; border-left: 1px solid #d2bb95; }
  .stat-row { font-size: 11px; padding: 4px 0; gap: 7px; }.stat-symbol { width: 17px; height: 17px; }.stat-value { font-size: 14px; }
  .mini-track, .fighter-panel > .equipment, .sidebar-note { display: none; }
  .main-column { width: 100%; }.tabs { gap: 6px; margin-bottom: 18px; }.tabs .tab { min-height: 61px; font-size: 10px; }
  .cell-hero { grid-template-columns: 210px minmax(0,1fr); }.cell-intro h2 { font-size: 31px; }
  .collection-grid { grid-template-columns: repeat(9,minmax(0,1fr)); }
  .opponent-card { min-height: 207px; }.opponent-card canvas { width: 116px; height: 116px; }
  .tower-floor { grid-template-columns: 49px 90px minmax(0,1fr) 109px; }
  .account-shell { grid-template-columns: 1fr; max-width: 570px; margin-top: 21px; }
  .account-shell .join-visual { display: grid; grid-template-columns: .9fr 1.1fr; border-right: 0; border-bottom: 1px solid #bda477; }
  .join-illustration { min-height: 226px; }.join-visual-copy { padding: 24px; border: 0; border-left: 1px solid #bca171; }
  .join-visual-copy h1 { font-size: 29px; }.join-visual-copy p { font-size: 12px; }.join-features { gap: 20px; margin-top: 18px; }
  .join-form-wrap { padding: 27px; }
  .appearance-grid { grid-template-columns: repeat(6,minmax(0,1fr)); }.appearance-card { height: 87px; }
}
@media (max-width: 590px) {
  .site-shell { padding: 0 13px; }
  .game-intro { gap: 12px; }.game-intro h1 { font-size: 24px; }.game-intro p { font-size: 11px; }
  .unlimited-note { font-size: 9px; line-height: 1.45; padding: 8px; border-radius: 5px; }.unlimited-symbol { font-size: 26px; }
  .tabs { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
  .tabs .tab { flex-direction: row; min-height: 46px; gap: 7px; padding: 9px 5px; font-size: 11px; }.tab-icon { width: 18px; height: 18px; }
  .cell-hero { grid-template-columns: 145px minmax(0,1fr); min-height: 238px; margin-bottom: 19px; }
  .cell-portrait canvas { min-height: 238px; }.cell-intro { padding: 20px 17px; }.cell-intro h2 { font-size: 27px; }
  .cell-intro > p, .cell-intro .cell-description { font-size: 11px; }.cell-intro .cell-description { margin: 10px 0 14px; }
  .cell-intro .button { min-height: 43px; padding: 9px 11px; font-size: 11px; }.cell-intro small { font-size: 10px; }
  .collection-panel { padding: 17px; }.collection-heading { margin-bottom: 18px; gap: 13px; }.collection-heading h2 { font-size: 22px; }
  .collection-heading p { font-size: 11px; }.collection-switch button { min-height: 39px; }
  .collection-grid { grid-template-columns: repeat(7,minmax(0,1fr)); gap: 7px; max-width: none; }
  .collection-legend { font-size: 10px; justify-content: flex-start; }
  .collection-detail { padding: 15px; gap: 12px; }.detail-heading h3 { font-size: 21px; }
  .collection-detail .detail-icon { width: 38px; height: 38px; }.collection-detail .is-pet { width: 74px; height: 60px; }
  .local-effect, .source-description, .pet-rule, .catalog-chance span { font-size: 11px; }
  .skin-wardrobe { padding: 17px; }.section-heading h2 { font-size: 20px; }.section-heading > span { font-size: 10px; }
  .opponents-heading h2 { font-size: 18px; }.opponent-grid { gap: 9px; }
  .opponent-card { padding: 9px 6px 13px; min-height: 191px; }
  .opponent-card.selected { padding: 8px 5px 12px; }.opponent-card canvas { width: 100%; height: 100px; }
  .opponent-info strong { font-size: 12px; }.opponent-info .level { font-size: 10px; margin-bottom: 7px; }.opponent-kind { font-size: 9px; padding: 3px 5px; }
  .arena-selection { padding: 12px; }.arena-selection p { font-size: 10px; }.arena-selection-counts > span { font-size: 10px; }
  .panel-title { padding: 12px 14px; }.panel-title h2 { font-size: 14px; }.panel-title .small { font-size: 10px; }
  .arena-hud { padding: 12px 13px; gap: 8px; }.combatant-name { font-size: 13px; }.combatant-name small { font-size: 9px; }
  .arena-controls { padding: 14px; gap: 12px; }.arena-controls p { font-size: 11px; }.arena-controls .button.large { min-width: 139px; font-size: 13px; padding: 11px 14px; }
  .battle-toolbar { padding: 12px; }.battle-toolbar strong { font-size: 11px; }.speed-button { min-height: 34px; font-size: 11px; }
  .battle-log p { font-size: 11px; }.result-banner { padding: 19px 16px; }
  .table-wrap { overflow-x: auto; }.data-table { font-size: 12px; }.data-table th { font-size: 9px; padding: 11px 9px; }.data-table td { padding: 12px 9px; }.table-name strong { font-size: 12px; }.rank-number { font-size: 19px; }
  .tower-heading { padding: 22px 18px; }.tower-heading h2 { font-size: 28px; }.tower-heading p { font-size: 12px; }.tower-infinity { font-size: 81px; padding: 0; }
  .tower-summary > div { padding: 13px 12px; }.tower-summary span { font-size: 10px; }.tower-summary strong { font-size: 17px; }
  .tower-route-tools, .tower-pagination { padding-left: 14px; padding-right: 14px; }.tower-route-tools p { font-size: 11px; }
  .tower-pagination { gap: 8px; }.tower-pagination .button { min-width: 95px; font-size: 11px; }.tower-pagination > span { font-size: 10px; }
  .tower-jump { font-size: 11px; padding: 5px 12px 16px; }.tower-jump input { min-height: 36px; font-size: 12px; }
  .tower-floors { padding: 2px 13px; }
  .tower-floor, .tower-floor.current { grid-template-columns: 38px 77px minmax(0,1fr); gap: 9px; padding: 11px 10px 11px 6px; }
  .tower-floor-number { grid-row: 1/3; padding-right: 6px; }.tower-floor-number > strong { font-size: 23px; }.tower-floor-number > span:first-child { font-size: 8px; }
  .tower-enemy { grid-row: 1/3; height: 113px; }.tower-floor-copy h3, .tower-floor.boss .tower-floor-copy h3 { font-size: 18px; }
  .tower-floor-copy p { font-size: 10px; }.tower-floor-status { font-size: 8px; }.tower-enemy-stats { font-size: 10px; }
  .tower-floor-action { grid-column: 3; text-align: left; }.tower-floor-action .button { min-height: 39px; width: 100%; max-width: 180px; font-size: 11px; }
  .tower-lock-reason { font-size: 10px; }.tower-lock-reason br { display: none; }
  .guild-welcome, .guild-create, .guild-directory-panel, .guild-wars { padding: 19px; margin-bottom: 19px; }
  .guild-detail-heading { padding: 20px; }.guild-detail-heading h2, .guild-welcome h2 { font-size: 26px; }
  .guild-section-heading h3, .guild-create h3 { font-size: 22px; }.guild-section-heading p { font-size: 11px; }
  .guild-war-schedule { padding: 16px; }.guild-war-schedule > div > strong { font-size: 24px; }
  .guild-directory-entry { padding: 13px 10px; gap: 8px; }.guild-directory-name strong { font-size: 13px; }.guild-directory-numbers > strong { font-size: 18px; }.guild-directory-name small, .guild-directory-numbers > small { font-size: 10px; }
  .guild-member-copy strong { font-size: 13px; }.guild-member-copy small { font-size: 10px; }.guild-member-actions .text-button { font-size: 10px; }
  .guild-forum { padding: 18px; }.guild-posts p { font-size: 12px; }
  .account-shell { margin-top: 19px; }.join-visual-copy { padding: 22px 20px; }.join-visual-copy h1 { font-size: 27px; }.join-visual-copy p { font-size: 11px; }
  .join-features { gap: 15px; font-size: 9px; }.join-features strong { font-size: 21px; }.join-form-wrap { padding: 24px; }
  .join-form-wrap h2 { font-size: 26px; }.account-character { padding-right: 11px; gap: 10px; }.account-character-portrait { width: 75px; height: 96px; }
  .appearance-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.appearance-card { height: 103px; }
  .editor-heading h2 { font-size: 22px; }.editor-footer .button { min-height: 43px; }.color-swatch { width: 25px; height: 25px; }
}
@media (max-width: 460px) {
  .account-heading { flex-wrap: wrap; }
  .account-heading > div { flex: 1 1 180px; min-width: 0; }
  .account-heading > .button { margin-left: auto; }
}
@media (max-width: 400px) {
  .site-shell { padding: 0 10px; }
  .game-intro h1 { font-size: 23px; }.game-intro p { max-width: 225px; }.unlimited-note { display: none; }
  .fighter-panel { grid-template-columns: 72px minmax(0,1fr) 110px; }.fighter-panel-header { font-size: 10px; }
  .fighter-portrait { height: 127px; }.fighter-name { font-size: 17px; padding: 12px 8px 2px; }.fighter-record { font-size: 10px; padding: 3px 8px 8px; }
  .xp-block { padding: 0 8px 12px; }.xp-label { font-size: 8px; gap: 3px; }.stats-grid { padding: 8px; }.stat-row { font-size: 10px; gap: 4px; }.stat-symbol { width: 14px; height: 14px; }.stat-value { font-size: 13px; }
  .tabs { gap: 5px; }.tabs .tab { gap: 5px; font-size: 10px; min-height: 46px; }.tab-icon { width: 16px; height: 16px; }
  .cell-hero { grid-template-columns: 110px minmax(0,1fr); }.cell-intro { padding: 18px 12px; }.cell-intro h2 { font-size: 25px; }.cell-intro .button { font-size: 10px; padding: 8px; }
  .cell-intro .eyebrow { font-size: 9px; letter-spacing: 1px; }
  .collection-panel { padding: 14px; }.collection-grid { gap: 5px; }.collection-tile { padding: 3px; }.collection-tile img { width: 30px; height: 30px; }
  .collection-detail { gap: 9px; padding: 13px; }.detail-heading h3 { font-size: 20px; }.collection-detail .detail-icon { width: 30px; height: 30px; }
  .collection-switch button { padding: 8px 6px; font-size: 10px; }
  .opponent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.opponent-card { min-height: 191px; }.opponent-card canvas { height: 104px; }
  .opponents-heading h2 { font-size: 17px; }.opponents-heading .text-button { font-size: 11px; }
  .arena-controls { align-items: stretch; flex-direction: column; }.arena-controls p { max-width: none; }.arena-controls .button.large { width: 100%; }
  .tower-summary > div { padding: 12px 8px; }.tower-summary span { font-size: 9px; }.tower-summary strong { font-size: 15px; }
  .tower-pagination { padding-left: 10px; padding-right: 10px; gap: 5px; }.tower-pagination .button { min-width: 84px; padding: 7px 6px; font-size: 10px; }
  .tower-floors { padding-left: 9px; padding-right: 9px; }.tower-floor, .tower-floor.current { grid-template-columns: 31px 58px minmax(0,1fr); gap: 7px; padding-right: 8px; }
  .tower-floor-copy h3, .tower-floor.boss .tower-floor-copy h3 { font-size: 16px; }.tower-enemy-stats, .tower-floor-copy p { font-size: 10px; }
  .tower-heading { padding: 19px 15px; }.tower-heading h2 { font-size: 26px; }.tower-infinity { font-size: 64px; }.tower-heading p { font-size: 11px; }
  .tower-route-tools { gap: 10px; }.tower-route-tools p { font-size: 10px; }.tower-route-tools .button { font-size: 10px; }
  .account-shell .join-visual { grid-template-columns: .72fr 1fr; }.join-illustration { min-height: 220px; }
  .join-visual-copy { padding: 21px 15px; }.join-visual-copy h1 { font-size: 25px; }.join-features { gap: 17px; }
  .join-form-wrap { padding: 20px; }.join-form-wrap h2 { font-size: 24px; }.join-intro { font-size: 12px; }
  .account-character { gap: 7px; padding: 9px 8px 9px 2px; }.account-character-portrait { width: 61px; height: 88px; }.account-character h3 { font-size: 13px; }.account-character p { font-size: 10px; }.account-character .button { font-size: 11px; padding: 7px 9px; }
  .account-heading { gap: 8px; }.account-heading h2 { font-size: 25px; }.account-heading .button { font-size: 10px; padding: 7px 9px; }
  .guild-directory-name small { font-size: 9px; }.guild-directory-numbers > strong { font-size: 16px; }.guild-directory-numbers > small { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto!important; transition-duration: .01ms!important; }
  .button:hover:not(:disabled), .tabs .tab:hover:not(:disabled), .opponent-card:hover:not(:disabled) { transform: none; }
}
