:root{
  --editorial-paper:#f4f0e7;
  --editorial-paper-strong:#fffdf8;
  --editorial-ink:#172c27;
  --editorial-muted:#64716b;
  --editorial-green:#244b3e;
  --editorial-green-deep:#17372f;
  --editorial-sage:#8fa188;
  --editorial-gold:#b78445;
  --editorial-line:rgba(31,66,55,.15);
  --editorial-shadow:0 28px 80px rgba(29,53,45,.12);
}

html{background:var(--editorial-paper);scroll-padding-top:92px}
body{background:
  radial-gradient(circle at 12% 3%,rgba(255,255,255,.86),transparent 32rem),
  linear-gradient(180deg,#eef4f1 0 34rem,var(--editorial-paper) 66rem);
  color:var(--editorial-ink)}
.shell{width:min(1500px,calc(100% - clamp(28px,5vw,112px)));max-width:none}
.topbar{padding:18px 0;border-bottom:1px solid rgba(24,58,48,.09);backdrop-filter:blur(14px)}
.brand-mark{border-radius:14px!important;background:var(--editorial-green-deep)!important;box-shadow:0 12px 28px rgba(23,55,47,.18)}
.brand-name{letter-spacing:.2em!important}

/* Активная главная сцена создаётся modern-home.js. */
.modern-landing.premium-travel-hero{
  position:relative;display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;
  min-height:clamp(600px,73vh,820px);margin-bottom:clamp(68px,9vw,132px)!important;
  overflow:hidden;border:1px solid rgba(32,70,58,.1)!important;border-radius:clamp(28px,4vw,54px)!important;
  background:var(--editorial-paper-strong)!important;box-shadow:var(--editorial-shadow)!important
}
.modern-landing__main{display:flex!important;flex-direction:column;justify-content:center;padding:clamp(42px,7vw,108px)!important;background:linear-gradient(135deg,#fffdf8 0,#f7f2e8 100%)!important}
.modern-landing__main h1{max-width:11ch;margin:20px 0 28px;font:500 clamp(54px,6.2vw,104px)/.92 Georgia,"Times New Roman",serif!important;letter-spacing:-.06em!important;text-wrap:balance}
.modern-landing__main>p{max-width:56ch;font-size:clamp(16px,1.35vw,20px)!important;line-height:1.7!important;color:var(--editorial-muted)!important}
.modern-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.modern-actions a,.modern-actions button{min-height:52px!important;padding:0 24px!important;border-radius:999px!important;font-weight:750!important}
.modern-actions .primary{background:var(--editorial-green)!important;color:#fffdf7!important;box-shadow:0 12px 26px rgba(23,55,47,.17)}
.modern-search-callout{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:24px;padding:7px;border:1px solid var(--editorial-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 12px 34px rgba(34,55,47,.07)}
.modern-search-callout input{min-width:0;min-height:50px;border:0!important;background:transparent!important;padding:0 14px!important;font-size:16px!important}
.modern-search-callout button{min-height:48px;padding:0 20px;border:0;border-radius:13px;background:var(--editorial-gold);color:#fff;font-weight:750}
.premium-mode-switch{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.premium-mode-switch button{min-height:42px;padding:0 15px;border:1px solid var(--editorial-line)!important;border-radius:999px!important;background:transparent!important;color:var(--editorial-green-deep)!important}
.premium-mode-switch button.is-active{background:var(--editorial-green-deep)!important;color:#fffdf7!important}
.modern-landing__side{position:relative;display:flex!important;flex-direction:column;justify-content:flex-end;gap:14px;padding:clamp(24px,4vw,54px)!important;background:#dce4d5 url("./tea-leaf-editorial.svg") center/cover no-repeat!important}
.modern-landing__side::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,55,47,.02) 15%,rgba(23,55,47,.28) 100%);pointer-events:none}
.modern-landing__side .modern-card{position:relative;z-index:1;padding:clamp(24px,3vw,38px)!important;border:1px solid rgba(255,255,255,.5)!important;border-radius:28px!important;background:rgba(255,253,248,.82)!important;backdrop-filter:blur(16px);box-shadow:0 22px 54px rgba(20,45,37,.13)!important}
.modern-landing__side .modern-card:last-child{display:none!important}
.modern-card h2{margin:0 0 10px;font:500 clamp(28px,3vw,42px)/1 Georgia,serif!important;letter-spacing:-.035em}
.modern-card p{line-height:1.55;color:#53645d}
.modern-directions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.modern-direction{min-height:72px;padding:14px!important;border:0!important;border-radius:16px!important;background:rgba(232,236,226,.95)!important;text-align:left;font-weight:750!important}
.premium-travel-credit{position:absolute;right:22px;top:20px;z-index:2;padding:7px 10px;border-radius:999px;background:rgba(255,253,248,.78);color:var(--editorial-green-deep)!important;font-size:11px}

/* Главная: цельная редакционная сцена вместо набора панелей. */
.premium-hero-editorial,.editorial-hero,.hero{
  min-height:clamp(590px,72vh,820px);
  overflow:hidden;
  border:1px solid rgba(32,70,58,.1);
  border-radius:clamp(28px,4vw,54px);
  background:var(--editorial-paper-strong);
  box-shadow:var(--editorial-shadow);
}
.premium-hero-editorial,.editorial-hero{grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr)!important;gap:0!important}
.premium-hero-copy,.editorial-hero-copy,.hero-copy{
  align-self:center;
  padding:clamp(44px,7vw,110px)!important;
  padding-right:clamp(32px,5vw,72px)!important;
}
.premium-hero-copy h1,.editorial-hero-copy h1,.hero h1{
  max-width:12ch!important;
  margin:20px 0 26px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(52px,6.2vw,104px)!important;
  font-weight:500!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
.premium-hero-copy p,.editorial-hero-copy p,.hero-copy>p{max-width:58ch;font-size:clamp(16px,1.35vw,20px)!important;line-height:1.7!important;color:var(--editorial-muted)!important}
.premium-hero-actions,.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.premium-hero-actions a,.premium-hero-actions button,.hero-actions a,.hero-actions button{
  min-height:52px;padding:0 24px;border-radius:999px!important;border:1px solid var(--editorial-green)!important;
  background:var(--editorial-green)!important;color:#fffdf7!important;font-weight:750!important;box-shadow:0 12px 24px rgba(23,55,47,.16)
}
.premium-hero-actions a+*,.hero-actions a+*{background:transparent!important;color:var(--editorial-green)!important;box-shadow:none}
.premium-hero-media,.editorial-hero-media,.hero-card{
  min-height:100%;border:0!important;border-radius:0!important;
  background-color:#dfe6d8!important;
  background-image:linear-gradient(180deg,rgba(20,50,40,.04),rgba(20,50,40,.24)),url("./tea-leaf-editorial.svg")!important;
  background-size:cover!important;background-position:center!important;box-shadow:none!important;
}
.premium-hero-media::after,.editorial-hero-media::after,.hero-card::after{content:"";position:absolute;inset:auto 7% 7% 7%;height:34%;border:1px solid rgba(255,255,255,.45);border-radius:28px;background:rgba(253,250,241,.78);backdrop-filter:blur(16px)}
.premium-hero-media>*:not(img),.editorial-hero-media>*:not(img),.hero-card>*{position:relative;z-index:2}
.hero-card{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(28px,4vw,58px)!important;color:var(--editorial-ink)!important}
.hero-card small,.hero-card h2,.hero-card p{max-width:72%!important;color:inherit!important}
.hero-card h2{font:500 clamp(28px,3vw,46px)/1.04 Georgia,serif!important;letter-spacing:-.035em!important}
.hero-card p{font-size:15px!important;line-height:1.55!important}
.hero-visual{opacity:.25}

.journey-route,.premium-route-section,.editorial-entry,.assortment-paths{
  margin-block:clamp(72px,10vw,150px)!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important
}
.journey-route-grid,.premium-route-grid,.editorial-entry-grid{gap:18px!important}
.journey-route-card,.premium-route-card,.editorial-entry-card{
  min-height:240px!important;padding:28px!important;border:0!important;border-radius:28px!important;
  background:var(--editorial-paper-strong)!important;box-shadow:0 18px 50px rgba(35,55,46,.08)!important
}

/* Каталог и карты: крупные поверхности, меньше ощущения dashboard. */
.workspace,.tea-places-section,.drinks-world-map,.world-map-section{
  margin-block:clamp(60px,8vw,120px)!important;padding:clamp(24px,4.5vw,64px)!important;
  border:1px solid var(--editorial-line)!important;border-radius:clamp(26px,4vw,48px)!important;
  background:rgba(255,253,248,.9)!important;box-shadow:0 24px 70px rgba(35,55,46,.08)!important
}
.workspace-head,.tea-places-head{margin-bottom:32px!important}
.workspace-head h2,.tea-places-head h2{font:500 clamp(38px,5vw,72px)/1 Georgia,serif!important;letter-spacing:-.045em!important;text-wrap:balance}
.controls{padding:14px!important;border-radius:22px!important;background:#eceee6!important;border:0!important}
.controls input,.controls select,.tea-places-controls input,.tea-places-controls select{min-height:50px!important;border-color:rgba(30,68,56,.16)!important;border-radius:14px!important;background:#fffdf8!important}
.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))!important;gap:18px!important}
.workspace .tea-card{min-height:370px;padding:28px!important;border-top:0!important;border-radius:26px!important;background:#fffdf8!important;box-shadow:0 16px 44px rgba(32,54,45,.09)!important;transition:transform .18s ease,box-shadow .18s ease}
.workspace .tea-card:hover{transform:translateY(-4px);box-shadow:0 24px 56px rgba(32,54,45,.14)!important}
.workspace .tea-card h3{font-size:clamp(27px,2.2vw,36px)!important}
.workspace .tea-card .card-top{margin-bottom:18px}
.workspace .tea-card .status,.workspace .tea-card [class*="status"]{border-radius:999px}

/* Карточка напитка: происхождение и источники читаются как редакционный материал. */
body:has(#screen-detail:not([hidden])) .app-shell{width:min(1400px,calc(100% - clamp(24px,5vw,96px)))}
.ceremony-shell{width:min(1500px,calc(100% - clamp(24px,5vw,96px)))!important;max-width:none!important}
.ceremony-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:clamp(28px,4vw,50px)!important;border:1px solid var(--editorial-line)!important;border-radius:0 0 34px 34px!important;background:rgba(255,253,248,.9)!important;box-shadow:0 20px 60px rgba(32,54,45,.08)!important}
.ceremony-header .header-links{grid-column:1/-1}
.ceremony-header h1{margin:10px 0!important;font:500 clamp(42px,5vw,72px)/.98 Georgia,serif!important;letter-spacing:-.05em!important}
.ceremony-header>p,.ceremony-header .lead{max-width:62ch!important;font-size:clamp(15px,1.3vw,18px)!important;line-height:1.6!important;color:var(--editorial-muted)!important}
.ceremony-header .language-picker{align-self:start}
.ceremony-header .collection-launcher{grid-column:1/-1;width:max-content!important;min-width:190px;border-color:var(--editorial-line)!important;background:#eef0e8!important}
#screen-detail{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
#screen-detail>.section-heading{padding:clamp(32px,5vw,64px)!important;border-radius:34px 34px 0 0;background:var(--editorial-green-deep);color:#fffdf7}
#screen-detail>.section-heading .helper{color:#c7d8d1!important}
#screen-detail>.section-heading h2{font:500 clamp(42px,6vw,82px)/.96 Georgia,serif!important;letter-spacing:-.05em!important}
#screen-detail .tea-detail-content{padding:clamp(22px,4vw,58px);border-radius:0 0 34px 34px;background:var(--editorial-paper-strong);box-shadow:var(--editorial-shadow)}
#screen-detail .detail-hero{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr)!important;min-height:340px;padding:clamp(28px,4vw,58px)!important;border:0!important;border-radius:30px!important;background:linear-gradient(135deg,#e2e7da,#f5efe2)!important;box-shadow:none!important}
#screen-detail .detail-hero h3{font:500 clamp(38px,5vw,70px)/1 Georgia,serif!important;letter-spacing:-.04em!important}
#screen-detail .detail-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:18px!important}
#screen-detail .detail-grid article{grid-column:span 6;min-height:220px;padding:clamp(24px,3vw,38px)!important;border:0!important;border-radius:26px!important;background:#f1eee4!important;box-shadow:none!important}
#screen-detail .detail-grid article:last-child{grid-column:1/-1;min-height:auto;background:#e8eee7!important}
#screen-detail .detail-grid h3{font:500 clamp(24px,2.5vw,34px)/1.15 Georgia,serif!important}
#screen-detail .detail-actions{padding:24px 0 0;gap:12px}
#screen-detail .detail-actions .button,#screen-detail .collection-detail-button{min-height:50px;border-radius:999px!important}

/* Паспорт: приватная коллекция как спокойный читательский экран. */
.collection-dialog{width:min(1040px,calc(100vw - 32px));padding:clamp(22px,4vw,52px);border-radius:34px;background:var(--editorial-paper-strong);box-shadow:0 34px 120px rgba(16,37,30,.32)}
.collection-heading{padding-bottom:22px;background:linear-gradient(180deg,var(--editorial-paper-strong) 76%,transparent)}
.collection-dialog h2{font-size:clamp(34px,4vw,58px);letter-spacing:-.04em}
.collection-dialog .collection-notice{padding:20px 22px;border-left:4px solid var(--editorial-gold);border-radius:0 18px 18px 0;background:#f2ede1}
.collection-dialog .collection-form{padding:28px;border:0;border-radius:24px;background:#edf0e8}
.collection-list{gap:18px}
.collection-entry{padding:26px;border:1px solid var(--editorial-line);border-radius:24px;background:#fffdf8}
.collection-data-actions{padding-top:18px;border-top:1px solid var(--editorial-line)}

/* Бастарт: визуально связан с карточкой и не выглядит сторонним виджетом. */
.bastart-fab{right:clamp(14px,2vw,30px);bottom:clamp(14px,2vw,30px);width:68px;height:68px;border-radius:24px;background:var(--editorial-green-deep);box-shadow:0 18px 48px rgba(18,49,40,.28)}
.bastart-dialog{right:clamp(14px,2vw,30px);bottom:110px;width:min(440px,calc(100vw - 28px));border:1px solid var(--editorial-line);border-radius:30px;background:var(--editorial-paper-strong);box-shadow:0 32px 100px rgba(15,39,31,.28)}
.bastart-head{padding:20px 22px;background:var(--editorial-green-deep)}
.bastart-head h2{font:600 20px/1.2 Georgia,serif!important}
.bastart-context{padding:14px 20px;background:#e9eee7;color:#455c53!important}
.bastart-quick{padding:14px 18px;gap:8px;background:#faf7ef}
.bastart-quick button{min-height:42px;padding:9px 13px;border-radius:999px;background:#fffdf8}
.bastart-messages{padding:20px!important;background:#f5f1e8}
.bastart-message.agent{background:#fffdf8;color:var(--editorial-ink);box-shadow:0 8px 24px rgba(26,51,43,.07)}
.bastart-message.user{background:var(--editorial-green-deep)}
.bastart-compose{padding:14px 16px;background:#fffdf8}

:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #c88b3d!important;outline-offset:4px!important}

@media(max-width:900px){
  .modern-landing.premium-travel-hero{grid-template-columns:1fr!important}
  .modern-landing__side{min-height:430px}
  .premium-hero-editorial,.editorial-hero,.hero{grid-template-columns:1fr!important;min-height:0}
  .premium-hero-media,.editorial-hero-media,.hero-card{min-height:390px!important}
  .premium-hero-copy,.editorial-hero-copy,.hero-copy{padding:clamp(32px,8vw,68px)!important}
  #screen-detail .detail-hero{grid-template-columns:1fr!important}
  #screen-detail .detail-grid article{grid-column:1/-1}
}
@media(max-width:600px){
  body{background:linear-gradient(180deg,#eef4f1 0 28rem,var(--editorial-paper) 46rem)}
  .shell{width:calc(100% - 24px)}
  .premium-hero-editorial,.editorial-hero,.hero{border-radius:26px}
  .premium-hero-copy,.editorial-hero-copy,.hero-copy{padding:34px 24px!important}
  .premium-hero-copy h1,.editorial-hero-copy h1,.hero h1{font-size:clamp(46px,15vw,66px)!important;max-width:10ch!important}
  .premium-hero-media,.editorial-hero-media,.hero-card{min-height:320px!important;padding:24px!important}
  .hero-card small,.hero-card h2,.hero-card p{max-width:84%!important}
  .workspace,.tea-places-section,.drinks-world-map,.world-map-section{padding:22px!important;border-radius:26px!important}
  .workspace .tea-card{min-height:0}
  #screen-detail>.section-heading{padding:30px 22px!important;border-radius:26px 26px 0 0}
  #screen-detail .tea-detail-content{padding:16px;border-radius:0 0 26px 26px}
  #screen-detail .detail-hero,#screen-detail .detail-grid article{padding:22px!important;border-radius:22px!important}
  .collection-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);padding:18px;border-radius:22px}
  .collection-dialog .collection-form{padding:18px}
  .bastart-dialog{inset:auto 0 0 0;width:100%;max-height:min(78dvh,700px);border-radius:26px 26px 0 0}
  .bastart-fab{width:60px;height:60px;border-radius:21px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .workspace .tea-card:hover{transform:none}
}

  .modern-landing.premium-travel-hero{border-radius:26px!important}
  .modern-landing__main{padding:36px 24px!important}
  .modern-landing__main h1{font-size:clamp(48px,15vw,66px)!important;max-width:10ch}
  .modern-landing__side{min-height:350px;padding:18px!important}
  .modern-landing__side .modern-card{padding:22px!important;border-radius:22px!important}
  .modern-directions{grid-template-columns:1fr 1fr}
  .ceremony-shell{width:calc(100% - 20px)!important}
  .ceremony-header{grid-template-columns:1fr;padding:24px 18px!important;border-radius:0 0 24px 24px!important}
  .ceremony-header .header-links{grid-column:auto}
  .ceremony-header .collection-launcher{grid-column:auto;width:100%!important}
