/* Strawhat shared UI. Approved Relationships / OfficeTools direction, 25 Sep 2026.
   Interface tokens only: never apply these colours to exported artwork. */
:root {
  --ui-bg:#f5f6f8; --ui-surface:#fff; --ui-border:#e5e7eb; --ui-row:#eef0f2;
  --ui-text:#1e293b; --ui-text2:#374151; --ui-muted:#6b7280;
  --ui-green:#168442; --ui-green-hover:#126e36; --ui-green-soft:#e8f5ec; --ui-green-ink:#166534;
  --ui-warning:#92400e; --ui-warning-soft:#fffbeb; --ui-danger:#b91c1c;
  --ui-radius:16px; --ui-control:8px; --ui-font:'Segoe UI',-apple-system,BlinkMacSystemFont,sans-serif;
  --paper:var(--ui-bg); --surface:var(--ui-surface); --ink:var(--ui-text); --text:var(--ui-text);
  --muted:var(--ui-muted); --subtle:var(--ui-muted); --line:var(--ui-border); --border:var(--ui-border);
  --accent:var(--ui-green); --accent-hover:var(--ui-green-hover); --soft:var(--ui-bg); --green:var(--ui-green-ink);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
body.studio-shell,body.studio-tool{margin:0;background:var(--ui-bg);color:var(--ui-text);font:14px/1.5 var(--ui-font);-webkit-font-smoothing:antialiased}
:is(.studio-shell,.studio-tool) :is(button,input,select,textarea){font-family:var(--ui-font);font-size:13px}
:is(.studio-shell,.studio-tool) :is(h1,h2,h3){color:var(--ui-text);font-family:var(--ui-font);letter-spacing:-.025em;font-weight:650}
:is(.studio-shell,.studio-tool) h1{font-size:28px;line-height:1.25;font-weight:750;margin-bottom:7px}
:is(.studio-shell,.studio-tool) h2{font-size:18px;line-height:1.35}
:is(.studio-shell,.studio-tool) h3{font-size:14px;line-height:1.4}
:is(.studio-shell,.studio-tool) :is(button,.secondary,.filebutton,.upload,.btn,a.button){border:1px solid var(--ui-border);border-radius:var(--ui-control);background:var(--ui-surface);color:var(--ui-text2);padding:8px 14px;min-height:38px;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
:is(.studio-shell,.studio-tool) :is(.primary,button.primary,.new-shoot-button){background:var(--ui-green);border-color:var(--ui-green);color:#fff}
:is(.studio-shell,.studio-tool) :is(button:disabled,[aria-disabled=true]){cursor:default;opacity:.5;transform:none}
:is(.studio-shell,.studio-tool) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),textarea,select){border:1px solid var(--ui-border);border-radius:var(--ui-control);background:#fff;color:var(--ui-text);padding:9px 11px;min-height:38px;max-width:100%;font-family:var(--ui-font)}
:is(.studio-shell,.studio-tool) input::placeholder,:is(.studio-shell,.studio-tool) textarea::placeholder{color:#747c89}
:is(.studio-shell,.studio-tool) :is(input[type=checkbox],input[type=radio],input[type=range],progress){accent-color:var(--ui-green)}
:is(.studio-shell,.studio-tool) :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #16a34a;outline-offset:3px}
:is(.studio-shell,.studio-tool) a{color:var(--ui-green-ink)}
:is(.studio-shell,.studio-tool) :is(.muted,.subtle,.quiet,.tool-help,.small,.note){color:var(--ui-muted)}
:is(.studio-shell,.studio-tool) :is(dialog,.ah-dialog){background:#fff;color:var(--ui-text);border:1px solid var(--ui-border);border-radius:16px;box-shadow:0 25px 90px #1e293b2b;max-height:calc(100dvh - 40px)}
:is(.studio-shell,.studio-tool) dialog::backdrop{background:#17202c66;backdrop-filter:blur(3px)}
:is(.studio-shell,.studio-tool) :is(th,td){border-color:var(--ui-row);font-variant-numeric:tabular-nums}
:is(.studio-shell,.studio-tool) th{background:#f8f9fa;color:var(--ui-muted);font-size:11px;font-weight:600;text-transform:none;letter-spacing:0}
:is(.studio-shell,.studio-tool) :is(.badge,.tag){border-radius:5px;background:#f0f2f5;color:#536172;font-size:11px;font-weight:600;padding:3px 8px}
:is(.studio-shell,.studio-tool) :is(.text-button,.text-link){border:0;background:transparent;color:var(--ui-green-ink);padding:5px 0;font-size:12px;min-height:30px}
:is(.studio-shell,.studio-tool) [hidden]{display:none!important}
@media(hover:hover){
 :is(.studio-shell,.studio-tool) :is(button,.secondary,.filebutton,.upload,.btn,a.button):not(:disabled):hover{background:#f4f7f5;border-color:#c5d2c9;color:var(--ui-text)}
 :is(.studio-shell,.studio-tool) :is(.primary,button.primary,.new-shoot-button):not(:disabled):hover{background:var(--ui-green-hover);border-color:var(--ui-green-hover);color:#fff}
 :is(.studio-shell,.studio-tool) :is(.text-button,.text-link):hover{background:transparent;color:#0c592a}
}
@media(prefers-reduced-motion:reduce){:is(.studio-shell,.studio-tool) *{transition:none!important;scroll-behavior:auto!important}}
