/* DarkoWiki 10.20.0 · Locke / Randomizer 2.0 */
.locke20-shell{display:grid;gap:14px;margin-bottom:16px;border:1px solid rgba(129,114,255,.35);background:linear-gradient(180deg,rgba(129,114,255,.08),rgba(18,20,34,.72))}
.locke20-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.locke20-head h3{margin:4px 0}.locke20-head p{margin:0;max-width:760px}.locke20-kicker{font-size:.72rem;letter-spacing:.14em;font-weight:800;opacity:.8}.locke20-summary{min-width:110px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:10px}.locke20-summary b{display:block;font-size:1.6rem}.locke20-summary span{font-size:.76rem;opacity:.75}
.locke20-toolbar{display:grid;grid-template-columns:minmax(180px,1.1fr) auto 110px minmax(280px,1.5fr);gap:10px;align-items:end}.locke20-toolbar label{display:grid;gap:5px}.locke20-toolbar label>span,.locke20-rule-field>span{font-size:.72rem;font-weight:800;opacity:.72}.locke20-toolbar select,.locke20-toolbar input,.locke20-toolbar button,.locke20-rule input,.locke20-rule select,.locke20-rule textarea,.locke20-custom input,.locke20-custom button,.locke20-rom button,.locke20-foot button{min-height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(6,8,18,.72);color:inherit;padding:8px 10px}.locke20-toolbar button,.locke20-custom button,.locke20-rom button,.locke20-foot button{cursor:pointer;font-weight:800}.locke20-preset-save{display:grid;grid-template-columns:1fr auto;gap:8px}.locke20-status{padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.05);font-size:.82rem}.locke20-status.warn{border:1px solid rgba(255,190,90,.35)}
.locke20-rom{display:flex;justify-content:space-between;gap:15px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:11px 13px}.locke20-rom p{margin:3px 0 0;font-size:.78rem;opacity:.78}
.locke20-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.locke20-rule{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.65fr);gap:10px;align-items:center;border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:10px 11px;opacity:.68}.locke20-rule.on{opacity:1;border-color:rgba(129,114,255,.34);background:rgba(129,114,255,.06)}.locke20-rule-toggle{display:flex;gap:9px;align-items:flex-start;cursor:pointer}.locke20-rule-toggle input{min-width:22px;width:22px;height:22px;padding:0}.locke20-rule-toggle span{display:grid;gap:2px}.locke20-rule-toggle small{font-size:.73rem;line-height:1.35;opacity:.72}.locke20-rule-field{display:grid;gap:4px}.locke20-rule-field textarea{resize:vertical;min-height:58px}.locke20-rule-field.wide{min-width:0}
.locke20-custom{display:grid;gap:10px;border-top:1px solid rgba(255,255,255,.09);padding-top:12px}.locke20-subhead h4{margin:0}.locke20-subhead p{margin:3px 0 0;font-size:.78rem;opacity:.75}.locke20-custom form{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(240px,1.4fr) auto;gap:8px}.locke20-custom-list{display:grid;gap:6px}.locke20-custom-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.045)}.locke20-custom-row label{display:flex;gap:8px;align-items:flex-start}.locke20-custom-row input{width:20px;height:20px}.locke20-custom-row span{display:grid}.locke20-custom-row small{opacity:.72}.locke20-custom-row button{min-width:38px;min-height:38px;border:0;background:transparent;font-size:1.2rem;cursor:pointer;color:inherit}.locke20-empty{font-size:.78rem;opacity:.7;padding:8px}
.locke20-foot{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:.72rem;opacity:.8}.locke20-foot button{margin-left:auto;min-height:36px;background:transparent}
@media(max-width:900px){.locke20-toolbar{grid-template-columns:1fr 1fr}.locke20-rules{grid-template-columns:1fr}.locke20-custom form{grid-template-columns:1fr 1fr}.locke20-custom form button{grid-column:1/-1}.locke20-preset-save{grid-column:1/-1}}
@media(max-width:600px){.locke20-head{display:grid}.locke20-summary{justify-self:start}.locke20-toolbar{grid-template-columns:1fr}.locke20-preset-save{grid-column:auto;grid-template-columns:1fr}.locke20-rom{align-items:stretch;display:grid}.locke20-rule{grid-template-columns:1fr}.locke20-custom form{grid-template-columns:1fr}.locke20-foot{display:grid}.locke20-foot button{margin-left:0}.locke20-toolbar select,.locke20-toolbar input,.locke20-toolbar button,.locke20-rule input,.locke20-rule select,.locke20-rule textarea,.locke20-custom input,.locke20-custom button,.locke20-rom button{min-height:44px;font-size:16px}}
.locke20-player-link{font:inherit;text-align:left;cursor:pointer;color:inherit}
