/* AI Prompt Lab — uses the site theme variables (works in dark and light) */
.tool-app-wrap.lab-wrap{max-width:820px}
.tm-box.lab-box{max-width:100%;padding:24px}
.lab-form{display:grid;gap:18px}
.lab-form label{display:grid;gap:8px;font-weight:700;color:var(--text);font-size:14.5px}
.lab-form input,.lab-form textarea,.lab-form select{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;padding:12px 14px;font:inherit;font-weight:400;background:var(--surface-2);color:var(--text)}
.lab-form input[type=file]{padding:10px}
.lab-form textarea{resize:vertical;line-height:1.7}
.lab-form input:focus,.lab-form textarea:focus,.lab-form select:focus{outline:3px solid var(--primary-tint);border-color:var(--primary)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lab-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.lab-actions button,.result-head button,.library-add button,.lib-item button{border:1px solid var(--border-strong);border-radius:999px;background:transparent;color:var(--text);padding:10px 18px;cursor:pointer;font:inherit;font-weight:600;transition:transform .12s,background .15s}
.lab-actions .primary,.library-add .primary{background:var(--primary);color:#fff;border-color:var(--primary)}
.lab-actions .primary:hover,.library-add .primary:hover{background:var(--primary-strong)}
.lab-actions button:hover,.result-head button:hover,.lib-item button:hover{transform:translateY(-1px)}
.lab-actions button:disabled{opacity:.55;cursor:not-allowed}
.lab-result{margin-top:18px;border-top:1px solid var(--border);padding-top:18px}
.result-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.result-head h2{margin:0;font-size:19px}
.result-head>div{display:flex;gap:7px}
.lab-result pre{white-space:pre-wrap;word-break:break-word;background:#0b1220;color:#e5edf7;border-radius:16px;padding:20px;min-height:120px;line-height:1.75;overflow:auto;direction:ltr;text-align:left;font-size:13.5px}
.status,.hint{color:var(--text-dim);font-size:14px;line-height:1.7}
.library-panel{display:grid;gap:14px}
.library-add{display:grid;gap:12px}
.library-add textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;padding:12px 14px;font:inherit;background:var(--surface-2);color:var(--text);resize:vertical}
.lib-item{border-top:1px solid var(--border);padding:16px 0}
.lib-item time{font-size:12px;color:var(--text-faint)}
.lib-item pre{white-space:pre-wrap;word-break:break-word;background:var(--surface-2);color:var(--text);border-radius:12px;padding:14px;line-height:1.7;direction:ltr;text-align:left}
.lib-item div{display:flex;gap:8px}
/* hub */
.lab-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:22px 0}
.lab-nav a{display:block;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--border);color:var(--text);text-decoration:none;transition:border-color .15s,transform .15s}
.lab-nav a:hover{border-color:var(--primary);transform:translateY(-2px)}
.lab-nav a b{display:block;font-size:15px;margin-bottom:4px}
.lab-nav a span{font-size:13px;color:var(--text-dim);line-height:1.6}
.lab-note{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:16px 18px;color:var(--text-dim);line-height:1.9;font-size:14px}
/* how-to + about */
.howto-section,.about-section{padding-block:10px}
.howto-list{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:12px;max-width:820px}
.howto-list li{counter-increment:s;position:relative;padding:14px 56px 14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:14px;line-height:1.8}
html[dir=ltr] .howto-list li{padding:14px 16px 14px 56px}
.howto-list li::before{content:counter(s);position:absolute;inset-inline-start:14px;top:12px;width:30px;height:30px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:700}
.about-section p{max-width:820px;line-height:1.95;color:var(--text-dim)}
@media(max-width:700px){.grid2{grid-template-columns:1fr}.tm-box.lab-box{padding:17px}.result-head{align-items:flex-start;flex-direction:column}}
