/* Gira v2.0 — no dependencies, respects existing Gira design tokens. */
.header-nav{gap:22px;margin-left:22px}.header-nav a{white-space:nowrap}
.tool-main{padding-top:28px}.tool-breadcrumb{color:var(--muted);font-size:12px;display:flex;gap:10px;align-items:center;margin-bottom:28px}.tool-breadcrumb a:hover{color:var(--blue)}.tool-breadcrumb span{color:var(--line)}
.tool-intro{display:flex;gap:18px;align-items:end;justify-content:space-between;margin-bottom:23px}.tool-intro h1{font-size:clamp(29px,3.4vw,44px);margin:0 0 9px;font-weight:870;line-height:1.09}.tool-intro p{font-size:14px;color:var(--muted);max-width:720px;margin:0}.favorite-button{background:var(--card);border:1px solid var(--line);color:var(--ink);white-space:nowrap;border-radius:10px;padding:11px 15px;font-size:12px;font-weight:750}.favorite-button:hover{border-color:var(--blue)}
.tool-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.86fr);gap:21px;align-items:stretch}.tool-action-card,.tool-config-card,.tool-history-section,.tool-guides>div{background:var(--card);border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);min-width:0}.tool-action-card{display:flex;flex-direction:column;padding:22px;min-height:555px}.tool-config-card{padding:23px 24px 25px}.tool-panel-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.local-pill{font-size:11px;color:#169d74;background:rgba(39,190,141,.08);border-radius:20px;padding:6px 10px;font-weight:800}.tool-result{display:grid;place-items:center;flex:1;align-content:center;text-align:center;min-height:350px;padding:19px 10px;overflow-wrap:anywhere}.tool-result>*{max-width:100%}.result-empty{max-width:330px;color:var(--muted)}.result-empty>span{font-size:62px;display:block;color:var(--blue);margin:0 0 8px;filter:drop-shadow(0 10px 16px rgba(44,102,215,.16))}.result-empty h2{color:var(--ink);font-size:24px;margin:0 0 10px}.result-empty p{font-size:13px}.result-title{font-size:12px;font-weight:850;letter-spacing:.10em;color:var(--blue);text-transform:uppercase;margin-bottom:22px}.result-content{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}.result-big{font-size:clamp(34px,6vw,75px);font-weight:900;letter-spacing:-.064em;line-height:1.09;color:var(--ink);overflow-wrap:anywhere;max-width:100%}.result-summary{font-weight:720;color:var(--muted);font-size:14px}.result-footer{font-size:12px;color:var(--muted);padding-top:20px}.tool-result small{color:var(--muted);font-size:11px;line-height:1.5}.result-toolbar{border-top:1px solid var(--line);padding-top:17px;display:flex;gap:9px;flex-wrap:wrap}.result-toolbar button{border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);padding:11px 13px;font-size:12px;font-weight:750}.result-toolbar button:hover:not(:disabled){background:var(--surface)}
.config-heading h2{font-size:18px;margin-bottom:5px}.config-heading p{font-size:12px;color:var(--muted);margin-bottom:24px}.tool-controls{display:grid;gap:15px;max-height:65vh;overflow:auto;padding-right:3px}.tool-field{display:flex;flex-direction:column;gap:7px}.tool-field>span{font-size:12px;font-weight:775;color:var(--ink)}.tool-field input,.tool-field select,.tool-field textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:13px;line-height:1.45;padding:12px;transition:border .15s,box-shadow .15s}.tool-field textarea{resize:vertical;min-height:110px;font-variant-ligatures:none}.tool-field input:focus,.tool-field select:focus,.tool-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--ring)}.tool-field>small{color:var(--muted);font-size:11px;line-height:1.45}.tool-check{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:650;color:var(--muted)}.tool-check input{accent-color:var(--blue);width:16px;height:16px}.tool-primary{display:block;width:100%;margin-top:15px;padding:15px;font-size:14px}.field-tip{font-size:12px;line-height:1.5;color:var(--muted);min-height:17px;margin:15px 0 0}.field-tip.has-error{color:#d54c60;font-weight:700}
.result-chips{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;max-height:235px;overflow:auto}.result-chip{border-radius:10px;background:var(--surface);border:1px solid var(--line);padding:9px 11px;font-size:13px;font-weight:800}.results-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px;max-height:450px;overflow:auto}.result-card{border-radius:12px;border:1px solid var(--line);background:var(--surface);text-align:left;padding:13px;font-size:13px;font-weight:710}.numbered-results{width:min(100%,560px);max-height:440px;overflow:auto;display:grid;gap:6px}.numbered-results>div{display:flex;align-items:center;gap:14px;padding:10px 13px;border:1px solid var(--line);background:var(--surface);border-radius:10px;text-align:left}.numbered-results>div:first-child{background:var(--blue-soft);color:var(--blue)}.numbered-results span{font-weight:900;color:var(--blue)}.teams-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:11px;width:100%;max-height:455px;overflow:auto}.team-card{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:16px}.team-card h3{font-size:15px;display:flex;align-items:center;gap:8px;margin-bottom:12px}.team-card h3 small{margin-left:auto}.team-dot{display:inline-block;width:9px;height:9px;border-radius:100%}.team-card ol{margin:0;padding-left:19px;font-size:12px;line-height:2;color:var(--muted)}
.coin-result{border:12px solid #e9b23e;outline:2px solid #f6d988;border-radius:100%;width:220px;height:220px;display:grid;place-items:center;background:radial-gradient(circle at 25% 22%,#fff1b1,#e5a532 75%);box-shadow:0 20px 45px rgba(176,118,20,.2),inset 0 0 0 2px #fff3b1;color:#714712;font-size:24px;font-weight:900;animation:coin-in .5s ease-out}.coin-b{background:radial-gradient(circle at 25% 22%,#ddeaff,#86abd7 75%);border-color:#8ba7d4;color:#204065}@keyframes coin-in{from{transform:scale(.65) rotateY(160deg);opacity:.2}to{transform:scale(1) rotateY(0);opacity:1}}
.rps-fight{display:flex;align-items:center;gap:24px;justify-content:center;width:100%}.rps-fight>div{display:grid;gap:10px}.rps-fight .result-big{font-size:78px}.rps-fight small{font-weight:800}.rps-fight>strong{color:var(--muted);font-size:20px}.scoreline{font-size:26px;font-weight:850}.end-match{padding:12px;border-radius:11px;background:var(--blue-soft);color:var(--blue);font-weight:830}
.card-deck{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;max-height:350px;overflow:auto}.playing-card{width:92px;height:126px;display:flex;flex-direction:column;align-items:center;justify-content:space-around;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 18px rgba(30,65,110,.11);color:var(--ink)}.playing-card strong{align-self:flex-start;font-size:20px;padding-left:9px}.playing-card strong small{font-size:15px}.playing-card>span{font-size:40px}.playing-card.red-suit{color:#e25471}
.bingo-ball{width:136px;height:136px;border:8px solid #d6e6ff;background:linear-gradient(155deg,#6098fa,#275cd4);border-radius:50%;color:white;display:grid;place-items:center;font-size:55px;font-weight:900;box-shadow:inset 0 3px 10px rgba(255,255,255,.3),0 20px 40px rgba(40,100,220,.2)}.bingo-board{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;width:100%;max-width:600px}.bingo-board span{border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;min-height:31px;font-size:11px;font-weight:750;color:var(--muted);background:var(--surface)}.bingo-board span.called{color:#fff;background:var(--blue);border-color:var(--blue)}
.magic-ball{width:275px;max-width:90vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 25%,#476baf 0%,#1b274c 22%,#060912 72%);box-shadow:inset -18px -18px 35px rgba(0,0,0,.7),0 25px 40px rgba(0,0,0,.22);display:grid;place-items:center;padding:67px;color:white}.magic-ball>span{font-size:15px;font-weight:750;color:#e5eaff;background:linear-gradient(160deg,#314cc4,#16368e);border:5px solid #a6b9ff;aspect-ratio:1;width:100%;display:grid;place-items:center;clip-path:polygon(50% 0%,100% 100%,0% 100%);padding:36px 16px 7px;line-height:1.15;overflow-wrap:anywhere}
.emoji-output{display:flex;flex-wrap:wrap;justify-content:center;gap:13px;font-size:44px;max-height:330px;overflow:auto}.secret-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;max-height:390px;overflow:auto}.secret-tile{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-height:112px;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:center;padding:12px;font-size:12px;overflow-wrap:anywhere}.secret-tile:hover{border-color:var(--blue);transform:translateY(-2px)}.secret-tile.opened{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}.secret-icon{font-size:38px;color:var(--blue)}
.color-palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:9px;width:100%;max-height:380px;overflow:auto}.color-swatch{background:var(--swatch);border:2px solid rgba(0,0,0,.04);border-radius:13px;min-height:120px;display:flex;align-items:end;padding:6px;color:#17213c}.color-swatch span{background:rgba(255,255,255,.9);border-radius:6px;padding:4px 7px;font-size:11px;font-weight:800}.password-results{width:100%;display:grid;gap:9px;max-height:355px;overflow:auto}.password-results code{display:block;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:12px;overflow-wrap:anywhere;font-size:13px}.timer-clock{font-size:clamp(60px,10vw,110px);font-variant-numeric:tabular-nums;letter-spacing:-.075em;font-weight:900;color:var(--blue)}
.tool-history-section{margin-top:22px;padding:22px}.tool-history{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:8px;color:var(--muted);font-size:13px}.tool-history-entry{border:1px solid var(--line);border-radius:10px;padding:11px;display:flex;flex-direction:column;gap:5px;min-width:0}.tool-history-entry>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--ink);font-size:12px;font-weight:750}.tool-history-entry time{font-size:10px}
.tool-guides{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.tool-guides>div{padding:25px}.tool-guides h2{font-size:19px}.tool-guides p{font-size:13px;color:var(--muted)}.tool-guides details{border-top:1px solid var(--line);padding:13px 0}.tool-guides details summary{font-size:12px;font-weight:780;cursor:pointer}.related-tools{margin-top:40px}
.tool-directory-preview{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:25px;margin:22px 0;box-shadow:var(--shadow)}.directory-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:20px}.directory-heading h2{font-size:23px;margin:0 0 5px}.directory-heading p{font-size:12px;color:var(--muted);margin:0}.directory-heading.small h2{font-size:18px}.directory-all{font-size:12px;color:var(--blue);font-weight:830;white-space:nowrap}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.tool-directory-card{border:1px solid var(--line);background:var(--card);border-radius:13px;display:flex;align-items:center;gap:12px;padding:16px;min-width:0;transition:transform .15s,border-color .15s,box-shadow .15s}.tool-directory-card:hover{border-color:#8fb5fb;transform:translateY(-2px);box-shadow:0 12px 26px rgba(35,60,108,.07)}.dir-icon{background:var(--blue-soft);color:var(--blue);border-radius:11px;width:39px;height:39px;display:grid;place-items:center;font-size:22px;flex:none;font-weight:900}.dir-text{display:flex;flex-direction:column;gap:5px;min-width:0}.dir-text strong{font-size:12px;line-height:1.3;font-weight:830}.dir-text small{font-size:10px;line-height:1.4;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dir-arrow{font-size:16px;margin-left:auto;align-self:start;color:#abb6cd}.directory-main h1{font-size:clamp(32px,4vw,51px);margin:0 0 10px}.directory-lead{font-size:14px;color:var(--muted);max-width:720px}.tool-search-wrap{max-width:650px;margin:25px 0}.tool-search-wrap input{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:15px 19px;width:100%;font:inherit;color:var(--ink);font-size:14px;box-shadow:var(--shadow)}.directory-category{margin:30px 0}.directory-category>h2{font-size:20px;margin-bottom:15px}
@media(max-width:1060px){.tool-layout{grid-template-columns:minmax(0,1fr) minmax(275px,.8fr)}.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.header-nav{gap:13px;margin-left:0}.header-inner{gap:20px}}
@media(max-width:790px){.tool-layout{grid-template-columns:1fr}.tool-config-card{order:-1}.tool-action-card{min-height:410px}.tool-controls{max-height:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:start}.tool-field:has(textarea){grid-column:1/-1}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-nav{display:flex;gap:13px;overflow:auto;max-width:calc(100vw - 220px);scrollbar-width:none}.header-nav a{font-size:11px}.tool-guides{grid-template-columns:1fr}.favorite-button{font-size:0;padding:10px}.favorite-button:first-letter{font-size:18px}}
@media(max-width:520px){.site-main{width:calc(100% - 26px)}.site-header{height:66px}.header-inner{width:calc(100% - 26px);gap:12px}.header-nav{max-width:calc(100vw - 187px);gap:12px}.brand{font-size:21px}.brand-mark{width:32px;height:32px}.brand-mark svg{width:21px;height:21px}.header-actions{gap:6px}.header-icon{width:32px;height:32px}.lang-link{padding:8px}.tool-main{padding-top:20px}.tool-breadcrumb{margin-bottom:19px}.tool-intro{margin-bottom:18px}.tool-intro h1{font-size:32px}.tool-intro p{font-size:12px}.tool-action-card{padding:17px;min-height:350px}.tool-config-card{padding:18px}.tool-controls{display:flex;flex-direction:column;align-items:stretch;gap:12px}.tool-controls>*{width:100%}.tool-result{min-height:250px;padding:20px 0}.directory-grid{grid-template-columns:1fr}.tool-directory-card{padding:13px}.tool-directory-preview{padding:18px}.directory-heading{align-items:flex-start;flex-wrap:wrap}.tool-history-section{padding:17px}.coin-result{width:180px;height:180px}.bingo-board{grid-template-columns:repeat(10,minmax(0,1fr));gap:2px}.bingo-board span{font-size:9px;min-height:24px}.playing-card{width:74px;height:104px}}
@media(prefers-reduced-motion:reduce){.tool-directory-card,.secret-tile,.coin-result{animation:none!important;transform:none!important;transition:none!important}}
.dice-shortcuts{display:flex;gap:6px;flex-wrap:wrap}.dice-shortcuts button{padding:9px 11px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:9px;font-size:12px;font-weight:850}.dice-shortcuts button:hover{border-color:var(--blue);color:var(--blue)}
.featured-tools{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.featured-tools h2{font-size:17px;margin-bottom:13px}
.tool-panel-actions{display:flex;align-items:center;gap:7px}.tool-panel-actions .round-utility{width:28px;height:28px;font-size:17px}.tool-action-card:fullscreen{background:var(--card);display:flex;align-items:stretch;justify-content:space-between;border-radius:0;padding:5vw}.tool-action-card:fullscreen #tool-result{max-height:calc(100vh - 150px);overflow:auto}.result-content{animation:result-rise .28s ease-out both}@keyframes result-rise{from{opacity:.65;transform:translateY(7px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.result-content{animation:none}}
