/* Экран: ролик сверху и всегда на виду, под ним — шаги (Маршрут → История → Вид) и одна главная кнопка.
   Один столбец на телефоне и на компьютере: ничего не прячется сбоку.
   Значения — из токенов раздела «Дизайн» (волт, Атлас/Заметки/Дизайн): отступы 4·8·12·16·24·32·48, вложенные 10 — только внутри компонента,
   шрифт 12·14·16·19, радиусы 8 (внутри карточки) и 16 (карточка), интерлиньяж ≥1,4. Проверка: python audit_design.py style.css */
:root{
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-6:24px; --space-8:32px; --space-12:48px;
  --radius-md:8px; --radius-lg:16px;
  --text-xs:12px; --text-sm:14px; --text-base:16px; --text-lg:19px;
  --lh-body:1.5; --lh-tight:1.4; --tracking-caps:.06em;
  --bg:#f2f0e9; --card:#fcfbf7; --line:#dcded5; --field:#879289; --ink:#25332f; --dim:#65716a; --acc:#a94425; --acc-ink:#fff; --ok:#32734f; --no:#879289; --err:#b4233c;
  color-scheme:light;
}
@media (prefers-color-scheme:light){
  :root:not([data-theme="dark"]){--bg:#f2f0e9;--card:#fcfbf7;--line:#dcded5;--field:#879289;--ink:#25332f;--dim:#65716a;--acc:#a94425;--acc-ink:#fff;--ok:#15803d;--no:#9a9282;--err:#be123c;color-scheme:light}
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:var(--text-base)/var(--lh-body) 'RS Geologica',system-ui,sans-serif;min-height:100vh}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border-radius:var(--radius-md);border:1px solid var(--field);background:transparent;padding:10px var(--space-4);min-height:44px}
button:hover{border-color:var(--acc)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.drop:focus-within{outline:2px solid var(--acc);outline-offset:2px}

.top{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-3) var(--space-4);max-width:860px;margin:0 auto}
.brand{font:700 var(--text-lg) 'RS DINish','RS Geologica',sans-serif;letter-spacing:var(--tracking-caps);text-transform:uppercase;display:flex;align-items:center;gap:var(--space-2);white-space:nowrap}
.dot{width:12px;height:12px;border-radius:50%;background:var(--acc)}
.tag{color:var(--dim);font-size:var(--text-sm)}

.app{max-width:860px;margin:0 auto;padding:0 var(--space-4) var(--space-12);display:flex;flex-direction:column;gap:var(--space-4)}

/* ролик */
.stage{position:sticky;top:0;z-index:5;background:var(--bg);padding:var(--space-2) 0;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}
.screen{position:relative;width:100%;display:flex;align-items:center;justify-content:center;min-height:120px}
#cv{display:none;max-width:100%;max-height:52vh;width:auto;height:auto;border-radius:var(--radius-lg);background:#000;box-shadow:0 12px 32px rgba(0,0,0,.35)}
.empty{color:var(--dim);position:absolute}
.ctrl{display:flex;align-items:center;gap:var(--space-3);width:100%;max-width:560px}
.ctrl button{width:44px;height:44px;border-radius:50%;padding:0;font-size:var(--text-base);flex:none}
.ctrl input{flex:1;accent-color:var(--acc);min-width:0}
#time{font-variant-numeric:tabular-nums;color:var(--dim);width:40px;text-align:right;font-size:var(--text-sm)}

/* панель под роликом */
.panel{display:flex;flex-direction:column;gap:var(--space-3)}
.actions{display:flex;align-items:center;gap:var(--space-3);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4)}
.headline{flex:1;min-width:0;font-weight:600;line-height:var(--lh-tight)}
.headline small{display:block;color:var(--dim);font-weight:400;font-size:var(--text-sm)}
.go{background:var(--acc);border:0;color:var(--acc-ink);font-weight:700;padding:var(--space-3) var(--space-6);font-size:var(--text-base);white-space:nowrap}
.go:hover{filter:brightness(1.07)}
.go:disabled{opacity:.5;cursor:wait}
.go.alt{background:transparent;border:2px solid var(--acc);color:var(--ink);width:100%}

.prog{position:relative;height:32px;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);overflow:hidden}
.prog div{position:absolute;inset:0 auto 0 0;width:0;background:var(--acc);opacity:.85;transition:width .1s}
.prog span{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--text-sm);font-weight:600}
.result{display:flex;flex-direction:column;gap:var(--space-3);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-3)}
.result video{width:100%;max-height:336px;border-radius:var(--radius-md);background:#000}
.result video.chk{background:repeating-conic-gradient(#8884 0 25%,#fff4 0 50%) 0 0/16px 16px}
.result a{display:block;text-align:center;text-decoration:none;background:var(--acc);color:var(--acc-ink);font-weight:700;padding:var(--space-3);border-radius:var(--radius-md)}
.result small{color:var(--dim)}
.err{background:rgba(251,113,133,.12);color:var(--err);border:1px solid rgba(251,113,133,.45);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm)}

/* шаги */
.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-2)}
.tabs button{border:0;border-radius:var(--radius-md);padding:var(--space-2) var(--space-1);display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--dim);font-weight:600;font-size:var(--text-base)}
.tabs button i{font-style:normal;width:24px;height:24px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:var(--text-xs);flex:none}
.tabs button i{border:0;border-radius:0}
.ui-icon{width:22px;height:22px;display:inline-block;vertical-align:middle;flex:none;pointer-events:none}
.ctrl .ui-icon{width:20px;height:20px}
.drop b .ui-icon,#addNote .ui-icon{margin-right:8px}
.photo-position{display:block;margin-top:12px;font-size:var(--text-sm)}
.photo-position input[type=range]{display:block;width:100%;min-height:44px}
.photo-position output{font-size:var(--text-xs);color:var(--dim)}
.manual-editor{display:grid;gap:12px;padding-top:16px}
.manual-actions{display:flex;flex-wrap:wrap;gap:8px}
.manual-actions button{flex:1 1 auto}
#manualMap{display:block;width:100%;height:300px;border:1px solid var(--line);border-radius:var(--radius-md);touch-action:none;cursor:grab;background:var(--bg)}
#manualMap.adding{cursor:crosshair}
.manual-search{display:flex;align-items:end;gap:8px}
.manual-search label{flex:1;min-width:0;margin:0}
.manual-results{display:grid;gap:8px}
.manual-results button{text-align:left}
#manualCount{font-weight:400;color:var(--dim)}
.tabs button.on{background:var(--acc);color:var(--acc-ink)}
.tab{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}
.lead{margin:0;color:var(--dim);font-size:var(--text-sm)}

.drop{border:2px dashed var(--field);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-4);text-align:center;display:flex;flex-direction:column;gap:var(--space-1);cursor:pointer;transition:background-color .15s,border-color .15s}
.drop:hover,.drop.over{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 8%,transparent)}
.drop input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.drop b{font-size:var(--text-lg)}
.drop span{color:var(--dim);font-size:var(--text-sm)}
.examples{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--dim)}
.chip{border-radius:999px;padding:var(--space-2) var(--space-4);min-height:44px;font-size:var(--text-sm);color:var(--ink)}
.change{font-size:var(--text-sm);line-height:var(--lh-body);color:var(--dim)}
.change b{font-size:var(--text-lg);display:block;color:var(--ink)}
.warn{margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:rgba(251,191,36,.16);border:1px solid rgba(251,191,36,.55);font-size:var(--text-sm);color:var(--ink)}
.linkbtn{background:none;border:0;padding:0;min-height:0;color:inherit;text-decoration:underline;font:inherit}

/* что попало в ролик */
.facts-title{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--dim);font-weight:700;margin-bottom:calc(var(--space-2) * -1)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:var(--space-2)}
.fact{display:grid;grid-template-columns:20px 1fr;gap:2px var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--lh-tight)}
.fact::before{content:"✓";grid-row:span 2;color:var(--ok);font-weight:700}
.fact.no::before{content:"–";color:var(--no)}
.fact.wait::before{content:"…";color:var(--acc)}
.fact b{font-weight:600}
.fact span{grid-column:2;color:var(--dim);font-size:var(--text-sm);overflow-wrap:anywhere}
.fact.no b{color:var(--dim);font-weight:500}

/* поля */
.f{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm);color:var(--dim)}
.f input:not([type=file]):not([type=range]),.f select,.f textarea,.phrow input,.tnote input:not([type]){font-size:var(--text-base);color:var(--ink);background:var(--bg);border:1px solid var(--field);border-radius:var(--radius-md);padding:10px var(--space-3);width:100%;min-height:44px}
.f textarea{resize:vertical}
.f input[type=file]{font-size:var(--text-sm);color:var(--dim)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.c{display:flex;gap:var(--space-2);align-items:center;font-size:var(--text-base);min-height:32px}
.hint{color:var(--dim);font-size:var(--text-xs)}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.seg button.on{background:var(--acc);color:var(--acc-ink);border-color:var(--acc);font-weight:600}
.styles{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}
.styles button{padding:0;overflow:hidden;text-align:left;border-width:2px}
.styles button.on{border-color:var(--acc)}
.styles .sw{height:56px}
.styles span{display:block;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:600}
.lbox{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--field);border-radius:var(--radius-md)}
.rowbtns{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.ghost{font-size:var(--text-sm);color:var(--dim)}
.phrow{display:grid;grid-template-columns:56px 1fr 44px;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}
.phrow img{width:56px;height:56px;object-fit:cover;border-radius:var(--radius-md)}
.phrow small{display:block;color:var(--dim);font-size:var(--text-xs);margin-top:2px}
.phrow button{padding:0}
.prow{display:grid;grid-template-columns:1fr auto 44px;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}
#planBox summary{cursor:pointer;font-size:var(--text-sm);color:var(--dim);min-height:32px}
#plan{font-size:var(--text-xs);display:grid;gap:var(--space-2);margin-top:var(--space-2)}
#plan .beat{border-left:3px solid var(--acc);padding:2px var(--space-2)}
#plan .cand{color:var(--dim)}
#plan .cand .sel{color:var(--ink);font-weight:700}

/* телефон: ролик ниже, чтобы шаги помещались; кнопка «Скачать» во всю ширину */
@media (max-width:640px){
  .top{flex-wrap:wrap;gap:2px var(--space-3);padding:var(--space-2) var(--space-4)}
  .tag{flex-basis:100%;font-size:var(--text-xs)}
  .app{padding:0 var(--space-4) var(--space-8);gap:var(--space-3)}
  #cv{max-height:40vh}
  .actions{flex-direction:column;align-items:stretch;padding:var(--space-3)}
  .go{width:100%;padding:var(--space-4)}
  .tabs{gap:var(--space-1);padding:var(--space-1)}
  .tabs button{flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);padding:var(--space-2) 2px}
  .two{grid-template-columns:1fr}
  .styles{grid-template-columns:1fr 1fr}
}
@media (min-width:641px){ .stage{position:static} #cv{max-height:56vh} }
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* кто едет */
.who{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}
.seg4{grid-template-columns:repeat(4,1fr)}
.seg4 button{padding:var(--space-2) var(--space-1);font-size:var(--text-sm)}
.colors{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.colors button{width:44px;height:44px;min-height:44px;border-radius:50%;padding:0;border:3px solid transparent;outline:1px solid var(--field)}
.colors button.on{border-color:var(--ink)}
.colors button.auto{width:auto;border-radius:999px;padding:0 var(--space-4);font-size:var(--text-sm)}
@media (max-width:640px){.seg4{grid-template-columns:1fr 1fr}}

/* широкий экран: ролик крупно слева (закреплён), шаги справа — виден и результат, и управление */
@media (min-width:1000px){
  .top{max-width:1320px}
  .app{max-width:1320px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:var(--space-8);align-items:start}
  .stage{position:sticky;top:var(--space-4);padding:0}
  #cv{max-height:calc(100vh - 150px);max-width:100%}
  .ctrl{max-width:100%}
}

/* выбор фото — как кнопка, а не серая заглушка браузера */
input[type=file]{font-size:var(--text-sm);color:var(--dim);max-width:100%}
input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--ink);background:var(--card,#fff);border:1px solid var(--field);border-radius:var(--radius-md);padding:10px var(--space-4);margin-right:var(--space-3);cursor:pointer}
input[type=file]::file-selector-button:hover{border-color:var(--acc)}
.styles .sw{height:64px}
.result #again{align-self:stretch;font-weight:600}

/* шаг 1: короткий фрагмент или вся дорога */
.kind{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.kind button{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);text-align:left;padding:var(--space-3) var(--space-4);border-width:2px;background:var(--card)}
.kind button b{font-size:var(--text-base)}
.kind button span{font-size:var(--text-xs);color:var(--dim);line-height:var(--lh-body)}
.kind button.on{border-color:var(--acc);box-shadow:inset 0 0 0 1px var(--acc)}
.link{border:0;background:none;color:var(--dim);font-size:var(--text-sm);text-decoration:underline;padding:0;min-height:32px;align-self:flex-start}
/* шаг 2: заметки на маршруте */
.tnote{display:grid;grid-template-columns:1fr 44px;gap:var(--space-2);align-items:start;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:var(--space-2)}
.tnote input:not([type]){width:100%}
.tnote input[type=range]{width:100%;accent-color:var(--acc);margin-top:var(--space-2)}
.tnote small{color:var(--dim);font-size:var(--text-xs)}
/* шаг 3: карта фото */
.pmapbox{display:flex;flex-direction:column;gap:var(--space-1)}
#pmap{width:100%;height:auto;border-radius:var(--radius-md);border:1px solid var(--line);touch-action:none;cursor:grab}
/* шаг 4: настроение и стикеры */
.moods{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.moods .chip.on{border-color:var(--acc);background:var(--acc);color:var(--acc-ink)}
.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}
.slots button{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2);border-width:2px}
.slots button.on{border-color:var(--acc)}
.slots img{width:56px;height:56px;object-fit:contain}
.slots i{width:56px;height:56px;display:grid;place-items:center;color:var(--dim);font-style:normal}
.slots span{font-size:var(--text-xs);color:var(--dim)}
.stk{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:76px;gap:var(--space-1);max-height:330px;overflow:auto;padding:2px}
.stk button{padding:4px;min-height:0;height:76px;border-width:2px;display:block;overflow:hidden}
.stk button.on{border-color:var(--acc)}
.stk img{display:block;width:100%;height:100%;object-fit:contain}
@media (max-width:640px){.kind{grid-template-columns:1fr}.stk{grid-template-columns:repeat(5,1fr)}}
/* что показывать в ролике */
.shows{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1) var(--space-3)}
.shows .c{display:flex;align-items:center;gap:var(--space-2);min-height:40px;font-size:var(--text-sm);cursor:pointer}
.shows input{width:20px;height:20px;accent-color:var(--acc)}

/* Общий визуальный язык с роликом: тёплое поле, спокойные поверхности, один акцент. */
.top{padding-top:24px;padding-bottom:24px;align-items:center}
.brand{letter-spacing:-.04em;text-transform:none;font-family:'RS Geologica',sans-serif;font-size:24px;font-weight:600}
.dot{width:10px;height:10px}
.tag{margin-left:auto;max-width:480px;text-align:right}
.stage{border:1px solid var(--line);border-radius:20px;background:#e7e9e1;padding:20px}
#cv{border-radius:4px;box-shadow:0 3px 8px #0000000a,0 18px 48px #00000012;outline:1px solid #0000000d}
.ctrl{padding-top:12px}
.ctrl button{background:var(--card);border-color:var(--line)}
.actions{padding:20px;border-radius:16px}
.tab{padding:24px;gap:20px}
.tabs{background:transparent;border:0;padding:0;gap:4px}
.tabs button{min-height:52px;border-radius:10px}
.tabs button.on{background:var(--ink);color:#fff}
.tabs button i{border:0;background:#ffffff24}
.drop{background:var(--bg);border-width:1px;padding:32px 16px}
.kind button{border-width:1px}
.kind button.on{box-shadow:inset 0 0 0 1px var(--acc);background:#bd552f08}
button{transition:background-color .15s,border-color .15s,transform .15s}
button:active:not(:disabled){transform:scale(.96)}
.styles .sw{height:76px}
@media(min-width:1000px){.app{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.stage{padding:24px}#cv{max-height:calc(100vh - 210px)}}
@media(max-width:640px){.top{padding-top:16px;padding-bottom:16px}.tag{margin-left:0;text-align:left}.stage{padding:12px;border-radius:16px;position:static}#cv{max-height:40vh}.tab{padding:16px;gap:16px}.actions{padding:16px}.ctrl{padding-top:4px}.tabs button{min-height:64px}}
@media(prefers-reduced-motion:reduce){button:active:not(:disabled){transform:none}}

/* Настройка шрифтов и палитры ролика. */
.appearance{border-top:1px solid var(--line);padding-top:16px}
.appearance summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.appearance summary::before{content:'›';display:inline-block;margin-right:8px;font-size:22px;line-height:1}
.appearance[open]>summary::before,.appearance details[open]>summary::before{transform:rotate(90deg)}
.appearance-body{display:grid;gap:16px;padding-top:12px}
.palette-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.palette-presets button{padding:8px;text-align:left;display:grid;gap:8px;font-size:14px}
.palette-presets button.on{border-color:var(--acc);box-shadow:inset 0 0 0 1px var(--acc)}
.palette-sample{display:flex;align-items:center;justify-content:space-between;font-size:28px;padding:12px;border-left:4px solid;border-radius:4px}
.palette-sample i{display:block;width:24px;height:24px;border-radius:50%}
.palette-fields{display:grid;gap:12px;margin-top:12px}
.palette-field{display:grid;grid-template-columns:minmax(0,1fr) 48px 100px;align-items:center;gap:8px;font-size:14px}
.palette-field input[type=color]{width:48px;height:44px;padding:4px;border:1px solid var(--field);border-radius:8px;background:var(--card);cursor:pointer}
.palette-field input[type=text]{width:100%;min-height:44px;padding:8px;border:1px solid var(--field);border-radius:8px;background:var(--card);font-size:16px}
.screens{display:grid;gap:var(--space-1)}
.srow{display:flex;align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--text-sm)}
.srow span{flex:1}
.srow small{opacity:.65;min-width:52px;text-align:right}
.srow.off{opacity:.55}
.srow button{min-width:44px;min-height:40px;padding:0 var(--space-2)}
.seg3{grid-template-columns:repeat(3,1fr)}
.logo-box{display:grid;gap:var(--space-2)}
.logo-box img{max-height:64px;max-width:240px;object-fit:contain;background:repeating-conic-gradient(#0001 0 25%,#0000 0 50%) 0 0/16px 16px;border-radius:8px;padding:4px}
.labels summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:var(--space-2);font-weight:600}
.lrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--space-2);align-items:center;min-height:44px;font-size:var(--text-sm)}
.lrow span{opacity:.7}
.lrow input{min-height:40px;width:100%}
.merge{display:flex;align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--text-sm);cursor:pointer;flex-wrap:wrap}
.merge input{width:20px;height:20px;accent-color:var(--acc)}
.trim{display:grid;gap:var(--space-2);padding:var(--space-3) 0}
.rng{display:grid;grid-template-columns:96px 1fr minmax(64px,auto);align-items:center;gap:var(--space-2);font-size:var(--text-sm);min-height:44px}
.rng input{width:100%;accent-color:var(--acc);height:28px}
.rng output{text-align:right;opacity:.7}
/* Оформление: частый выбор сверху, подробности — в пяти раскрывающихся группах. */
#t-look .styles .sw{height:36px}
#t-look .styles span{padding:8px 12px}
#t-look .styles small{display:block;font-size:12px;font-weight:400;color:var(--dim);margin-top:2px}
#t-look .look-section{border-top:1px solid var(--line);padding-top:8px}
#t-look .look-section>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-weight:600;list-style:none}
#t-look .look-section>summary::-webkit-details-marker{display:none}
#t-look .look-section>summary::before{content:'›';font-size:22px;line-height:1;margin-right:8px}
#t-look .look-section[open]>summary::before{transform:rotate(90deg)}
#t-look .settings-body{display:grid;gap:12px;padding-top:12px}
#projectBox{border-top:1px solid var(--line);margin-top:12px}
#projectBox>summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;font-weight:600}
#projectBox .settings-body{display:grid;gap:12px;padding:8px 0 16px}
#projectBox .hint{margin:0}
#t-look button{min-height:44px;min-width:44px}
#mapSettings{grid-template-columns:1fr}
#mapSettings .c{min-height:44px}
@media(max-width:999px){#t-look{gap:12px}.stage:has(~.panel #t-look:not([hidden])){position:static}}
