:root{color:var(--ink);background:var(--console-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--space-2xs: 2px;--space-xs: 4px;--space-sm: 6px;--space-md: 8px;--space-lg: 12px;--space-xl: 14px;--space-2xl: 20px;--radius: 8px;--radius-pill: 999px;--pilot-green: #197064;--pilot-green-deep: #1d5f57;--brass: #7a4c11;--negative: #9b2c2c;--ink: #19211f;--ink-strong: #1f2b27;--ink-heading: #24322e;--muted: #5b6a64;--console-bg: #eef2f0;--panel-bg: #fbfdfc;--cell-bg: #ffffff;--tint-green: #e6f4ef;--active-bg: #f6fbf9;--refresh-hover: #edf7f4;--border: #d8e0dc;--border-cell: #e4ebe7;--border-control: #cbd8d3;--divider: #e6ece9;--brass-tint: #fff0cd;--brass-stroke: #d8b35f;--notice-bg: #fff8e6;--notice-ink: #5d430c;--notice-ink-strong: #8a5a00}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.shell{width:min(100% - 24px,1120px);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,auto);grid-auto-flow:row dense;gap:var(--space-xl);padding:var(--space-2xl) 0}.panel{display:flex;flex-direction:column;grid-column:span 1;min-width:0;border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xl);background:var(--panel-bg);box-shadow:0 12px 34px #21312c1a}.panel--half{grid-column:span 2}.panel--full{grid-column:1 / -1}.widget-header,.current,.meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.location{display:flex;align-items:center;gap:var(--space-sm);color:var(--ink-heading);font-size:15px;font-weight:800}.widget-header p,.meta{margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.3}.refresh{position:relative;display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border:1px solid var(--border-control);border-radius:var(--radius-pill);color:var(--pilot-green-deep);background:var(--cell-bg);cursor:pointer;transition:background .16s cubic-bezier(.33,1,.68,1),transform .12s cubic-bezier(.33,1,.68,1)}.refresh:before{content:"";position:absolute;inset:-5px}.refresh:hover{background:var(--refresh-hover);transform:translateY(-1px)}.refresh:active{transform:scale(.94)}.refresh:focus-visible{outline:none;border-color:var(--pilot-green);box-shadow:0 0 0 2px #1970641f}.refresh.is-spinning svg{animation:refresh-sweep .8s linear infinite}@keyframes refresh-sweep{to{transform:rotate(360deg)}}.settle{animation:gauge-settle .6s cubic-bezier(.22,1,.36,1)}@keyframes gauge-settle{0%{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.notice,.loading{margin-top:10px;border:1px solid var(--brass-stroke);border-radius:var(--radius);padding:9px 10px;background:var(--notice-bg);color:var(--notice-ink);font-size:13px}.current{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--divider)}.temperature{display:flex;align-items:center;gap:var(--space-md);min-width:118px}.temperature svg,.current-grid svg{color:var(--pilot-green)}.temperature strong{font-size:34px;line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}.current-grid{display:grid;grid-template-columns:repeat(3,minmax(0,auto));gap:8px}.current-grid span{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:64px;min-height:32px;border-radius:var(--radius);padding:0 8px;color:var(--ink-strong);background:var(--tint-green);font-size:13px;font-weight:800;white-space:nowrap}.forecast-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-lg);margin-bottom:var(--space-md)}.forecast-strip article{display:grid;min-width:0;min-height:68px;align-content:center;gap:var(--space-2xs);border:1px solid var(--border-cell);border-radius:var(--radius);padding:var(--space-sm) var(--space-xs);text-align:center;background:var(--cell-bg)}.forecast-strip time{color:var(--muted);font-size:11px;font-weight:800}.forecast-strip strong{color:var(--ink-strong);font-size:14px;line-height:1.1;font-variant-numeric:tabular-nums}.forecast-strip span{overflow-wrap:anywhere;color:var(--muted);font-size:11px;font-weight:700;line-height:1.15}.forecast-days-wrap{margin-bottom:var(--space-md)}.forecast-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:var(--space-sm);border:1px solid var(--border-control);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);color:var(--pilot-green-deep);font-size:12px;font-weight:800;letter-spacing:.02em;background:var(--cell-bg);cursor:pointer}.forecast-toggle:focus-visible{outline:none;border-color:var(--pilot-green);box-shadow:0 0 0 2px #1970641f}.forecast-toggle svg{flex:none;transition:transform .14s ease}.forecast-toggle.is-open svg{transform:rotate(180deg)}.forecast-days{display:grid;margin:var(--space-sm) 0 0;padding:0;gap:var(--space-2xs);list-style:none}.forecast-days li{display:grid;grid-template-columns:3.5rem 1fr auto;align-items:center;gap:var(--space-md);border:1px solid var(--border-cell);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);background:var(--cell-bg)}.forecast-days__day{color:var(--muted);font-size:12px;font-weight:800}.forecast-days__temp{display:flex;align-items:baseline;gap:var(--space-sm);font-variant-numeric:tabular-nums}.forecast-days__temp strong{color:var(--ink-strong);font-size:14px}.forecast-days__temp span{color:var(--muted);font-size:12px;font-weight:700}.forecast-days__rain{color:var(--muted);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.forecast-days__rain.is-wet{color:var(--ink-strong)}.meta{margin-top:auto;padding-top:10px;border-top:1px solid var(--divider)}.calendar-grid{display:grid;flex:1;gap:var(--space-sm);margin-top:var(--space-lg)}.calendar-row{display:grid;grid-template-columns:36px repeat(7,minmax(0,1fr));gap:var(--space-xs)}.calendar-week{display:grid;min-height:50px;place-items:center;border-radius:var(--radius);color:var(--brass);background:var(--brass-tint);font-size:11px;font-weight:900}.calendar-grid article{position:relative;display:grid;min-height:50px;align-content:center;gap:var(--space-2xs);border:1px solid var(--border-cell);border-radius:var(--radius);text-align:center;background:var(--cell-bg)}.calendar-grid .is-today{border-color:var(--pilot-green);background:var(--tint-green)}.calendar-grid span{color:var(--muted);font-size:11px;font-weight:800}.calendar-grid strong{color:var(--ink-strong);font-size:17px;line-height:1;font-variant-numeric:tabular-nums}.calendar-grid .is-red strong{color:var(--negative)}.calendar-holiday{overflow:hidden;font-size:9px;font-weight:800;font-style:normal;line-height:1.1;color:var(--negative);text-overflow:ellipsis;white-space:nowrap}.calendar-tip{position:absolute;bottom:calc(100% + var(--space-2xs));left:50%;z-index:5;display:none;grid-auto-flow:row;gap:var(--space-2xs);min-width:120px;max-width:200px;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-bg);box-shadow:0 12px 34px #21312c1a;text-align:left;white-space:normal;transform:translate(-50%)}.calendar-tip span{color:var(--ink-strong);font-size:11px;font-weight:600}.calendar-grid article:hover .calendar-tip,.calendar-grid article:focus-within .calendar-tip{display:grid}.market-list{display:grid;flex:1;align-content:start;gap:var(--space-lg);margin-top:var(--space-md);margin-bottom:var(--space-md)}.market-group{display:grid;gap:var(--space-2xs)}.market-row{display:grid;grid-template-columns:minmax(72px,1fr) auto;gap:var(--space-md);align-items:center;min-height:32px;border:1px solid var(--border-cell);border-radius:var(--radius);padding:var(--space-xs) var(--space-md);background:var(--cell-bg)}.market-row span{color:var(--muted);font-size:12px;font-weight:900}.market-row strong{color:var(--ink-strong);font-size:16px;line-height:1;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.market-row.has-error{background:var(--notice-bg)}.market-row.has-error strong{color:var(--notice-ink-strong)}.hormuz-body{display:flex;flex:1;flex-direction:column;justify-content:center;gap:var(--space-lg);margin-top:var(--space-md)}.hormuz-value{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-lg)}.hormuz-value strong{color:var(--ink-strong);font-size:56px;line-height:.85;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.hormuz-value span{color:var(--brass);font-size:12px;font-weight:900}.hormuz-grid{display:grid;grid-template-columns:1fr auto;gap:var(--space-xs) var(--space-lg);border:1px solid var(--border-cell);border-radius:var(--radius);padding:var(--space-md);background:var(--cell-bg)}.hormuz-grid span{color:var(--muted);font-size:12px;font-weight:900}.hormuz-grid strong{color:var(--ink-strong);font-size:13px;text-align:right}.translation-rows{display:grid;flex:1;align-content:start;gap:var(--space-sm);margin-top:var(--space-lg);margin-bottom:var(--space-md)}.translation-group{display:grid;gap:var(--space-sm)}.translation-row{display:grid;grid-template-columns:74px minmax(0,1fr) 26px;gap:var(--space-md);align-items:center;min-height:46px;border:1px solid var(--border-cell);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);background:var(--cell-bg);cursor:text;transition:border-color .16s cubic-bezier(.33,1,.68,1),background-color .16s cubic-bezier(.33,1,.68,1)}.translation-row.is-active{border-color:var(--pilot-green);background:var(--active-bg)}.translation-row:focus-visible{outline:none;border-color:var(--pilot-green);box-shadow:0 0 0 2px #1970641f}.translation-row>span{color:var(--muted);font-size:12px;font-weight:900}.translation-row strong{min-width:0;overflow:hidden;color:var(--ink-strong);font-size:13px;font-weight:750;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.synonyms-toggle{position:relative;display:grid;width:26px;height:26px;place-items:center;border:1px solid var(--border-control);border-radius:var(--radius-pill);color:var(--pilot-green-deep);background:var(--cell-bg);cursor:pointer}.synonyms-toggle:before{content:"";position:absolute;inset:-10px -2px}.synonyms-toggle:focus-visible{outline:none;border-color:var(--pilot-green);box-shadow:0 0 0 2px #1970641f}.synonyms-toggle svg{transition:transform .14s ease}.synonyms-toggle.is-open svg{transform:rotate(180deg)}.translation-row textarea{width:100%;min-height:58px;max-height:140px;resize:vertical;border:1px solid var(--border-control);border-radius:var(--radius);padding:8px;color:var(--ink-strong);background:var(--cell-bg);font:inherit;font-size:13px;line-height:1.3;outline:none}.translation-row textarea::placeholder{color:var(--muted);opacity:1}.translation-row textarea:focus{border-color:var(--pilot-green);box-shadow:0 0 0 2px #1970641f}.translation-meta{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid var(--divider);color:var(--muted);font-size:12px;font-weight:700}.translation-error{color:var(--negative);text-align:right}.synonyms-panel{margin-left:82px;border:1px solid var(--border-cell);border-radius:var(--radius);padding:8px;color:var(--muted);background:var(--active-bg);font-size:12px;font-weight:700}.synonyms-list{display:flex;flex-wrap:wrap;gap:6px}.synonyms-list span{border-radius:999px;padding:4px 8px;color:var(--ink-strong);background:var(--tint-green);font-size:12px;font-weight:800}@media(max-width:960px){.shell{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.shell{grid-template-columns:minmax(0,1fr)}.panel--half,.panel--full{grid-column:1 / -1}}@media(max-width:520px){.shell{width:min(100% - 16px,1120px);padding:8px 0}.panel{padding:12px}.current{align-items:flex-start;flex-direction:column}.current-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.current-grid span{min-width:0}.forecast-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.translation-row{grid-template-columns:1fr 26px}.translation-row>span,.translation-row textarea,.translation-row strong{grid-column:1 / -1}.synonyms-toggle{grid-column:2;grid-row:1;justify-self:end}.synonyms-panel{margin-left:0}}@media(prefers-reduced-motion:reduce){.refresh,.translation-row,.synonyms-toggle svg,.forecast-toggle svg{transition:none}.refresh:hover,.refresh:active{transform:none}.refresh.is-spinning svg{animation:none;opacity:.5}.settle{animation:none}}
