/* Tidy Cents PRO: /pro page and the PRO cabinet. Olive, cream, gold — the site's own palette. */
.pro, .cab { --pg:#B8892E; --pg-l:#E9C877; --pg-xl:#F6E7BF; --ol:#1F4A3D; --ol-d:#14332A; --cr:#FAF7F2; --cr2:#F3ECDF; --ink:#15202B; --mu:#5B6560; }
.pro-eyebrow { font:600 13px/1 var(--font); letter-spacing:.18em; text-transform:uppercase; color:var(--pg); margin:0 0 10px; }
.pro-h1 { font-family:var(--display); font-weight:600; font-size:clamp(34px,5vw,60px); line-height:1.05; margin:0 0 16px; color:var(--ol-d); text-wrap:balance; }
.pro-h1 em { color:var(--pg); font-style:italic; }
.pro-h2 { font-family:var(--display); font-weight:600; font-size:clamp(26px,3.2vw,38px); color:var(--ol-d); margin:0 0 8px; text-align:center; text-wrap:balance; }
.pro-sub { text-align:center; color:var(--mu); margin:0 0 26px; }
.pro-lead { font-size:clamp(16px,1.6vw,19px); line-height:1.55; color:#2B3A35; max-width:640px; margin:0 auto 20px; }

.pro-hero { position:relative; overflow:hidden; text-align:center; padding:clamp(54px,8vw,96px) 0 clamp(120px,14vw,170px); }
.pro-hero__bg { position:absolute; inset:0; background-size:cover; background-position:center 60%; }
.pro-hero__veil { position:absolute; inset:0; background:linear-gradient(180deg,rgba(250,247,242,.86) 0%,rgba(250,247,242,.80) 55%,var(--cr) 100%); backdrop-filter:blur(2px); }
.pro-hero__in { position:relative; }
.pro-hero__crown { display:inline-grid; place-items:center; width:104px; height:104px; border-radius:50%; background:radial-gradient(circle at 50% 40%,#FFF8E4,#F3E2B5 70%); box-shadow:0 0 0 1px rgba(184,137,46,.35),0 0 0 10px rgba(233,200,119,.18),0 18px 40px -12px rgba(122,85,18,.45); margin-bottom:18px; }
.pro-trust { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; justify-content:center; gap:10px 22px; color:var(--ol); font-weight:600; font-size:14.5px; }
.pro-trust li { display:flex; gap:7px; align-items:center; } .pro-trust svg { width:18px; height:18px; color:var(--pg); }

.pro-plans { position:relative; margin-top:clamp(-130px,-10vw,-90px); display:grid; grid-template-columns:repeat(3,1fr); gap:22px; align-items:stretch; padding-bottom:30px; }
.pro-plan { position:relative; display:flex; flex-direction:column; background:rgba(255,255,255,.92); border:1px solid rgba(184,137,46,.28); border-radius:22px; padding:30px 26px 24px; box-shadow:var(--shadow-lg); backdrop-filter:blur(6px); }
.pro-plan--best { background:linear-gradient(180deg,#1F4A3D,#14332A); color:var(--cr); border:1.5px solid var(--pg-l); transform:translateY(-10px); box-shadow:0 0 0 6px rgba(233,200,119,.16),0 30px 60px -20px rgba(20,51,42,.6); }
.pro-plan__ribbon { position:absolute; top:-15px; left:50%; transform:translateX(-50%); display:flex; gap:6px; align-items:center; white-space:nowrap; background:linear-gradient(180deg,#F6E2A6,#D9AE52); color:#3D2A06; font:700 12.5px/1 var(--font); letter-spacing:.08em; text-transform:uppercase; padding:8px 14px; border-radius:99px; box-shadow:0 6px 14px -6px rgba(122,85,18,.6); }
.pro-plan__name { font:600 13px/1 var(--font); letter-spacing:.16em; text-transform:uppercase; margin:6px 0 14px; color:var(--pg); }
.pro-plan--best .pro-plan__name { color:var(--pg-l); }
.pro-plan__price { margin:0; display:flex; align-items:baseline; gap:8px; } .pro-plan__price b { font-family:var(--display); font-size:54px; line-height:1; font-weight:600; }
.pro-plan__price span { color:var(--mu); font-size:16px; } .pro-plan--best .pro-plan__price span { color:#C9D4CD; }
.pro-plan__note { margin:10px 0 18px; color:var(--mu); font-size:15px; min-height:2.6em; } .pro-plan--best .pro-plan__note { color:var(--pg-xl); }
.pro-plan__list { list-style:none; padding:0; margin:0 0 22px; display:grid; gap:11px; flex:1; }
.pro-plan__list li { display:flex; gap:10px; align-items:flex-start; font-size:15.5px; line-height:1.4; }
.pro-plan__list svg { flex:none; width:19px; height:19px; color:var(--pg); margin-top:1px; } .pro-plan--best .pro-plan__list svg { color:var(--pg-l); }
.pro-plan__fine { margin:12px 0 0; font-size:13px; color:var(--mu); text-align:center; } .pro-plan--best .pro-plan__fine { color:#B9C6BE; }

.pro-btn { display:inline-flex; justify-content:center; align-items:center; gap:8px; min-height:50px; padding:0 22px; border-radius:14px; font:700 15.5px/1 var(--font); letter-spacing:.02em; text-decoration:none; cursor:pointer; border:1px solid var(--ol); background:var(--ol); color:#FFF8E8; box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 18px -10px rgba(20,51,42,.7); }
.pro-btn:hover { background:var(--ol-d); }
.pro-btn--gold { background:linear-gradient(180deg,#F6E2A6,#D7AA4C); border-color:#B8892E; color:#2E2005; }
.pro-btn--gold:hover { background:linear-gradient(180deg,#F9E9B9,#DDB45B); }
.pro-btn--ghost { background:transparent; color:var(--ol); }
.pro-btn--line { background:transparent; color:var(--ol-d); border-color:rgba(31,74,61,.45); box-shadow:none; }
.pro-btn--danger { background:#8C1D12; border-color:#8C1D12; color:#fff; } .pro-btn--danger[disabled] { opacity:.45; cursor:not-allowed; }

.pro-compare { padding-block:50px 20px; }
.pro-table-wrap { overflow-x:auto; border-radius:20px; border:1px solid rgba(184,137,46,.28); background:#fff; box-shadow:var(--shadow); }
.pro-table { width:100%; min-width:720px; border-collapse:collapse; font-size:15px; }
.pro-table th, .pro-table td { padding:13px 16px; border-bottom:1px solid #EEE7DA; text-align:center; }
.pro-table thead th { position:sticky; top:0; background:var(--cr2); font:700 14px/1.2 var(--font); color:var(--ol-d); vertical-align:bottom; }
.pro-table thead th small { display:block; font-weight:600; color:var(--mu); margin-top:4px; }
.pro-table thead th.is-best { background:linear-gradient(180deg,#1F4A3D,#14332A); color:var(--pg-l); } .pro-table thead th.is-best small { color:var(--pg-xl); }
.pro-table thead th.is-best .crown { vertical-align:-3px; }
.pro-table tbody th[scope=row] { text-align:left; font-weight:500; color:var(--ink); } .pro-table tbody th small { display:block; color:var(--mu); font-size:12.5px; }
.pro-table td.is-best { background:rgba(233,200,119,.12); }
.pro-table__group th { text-align:left!important; background:#FBF8F2; font:700 12.5px/1 var(--font)!important; letter-spacing:.14em; text-transform:uppercase; color:var(--pg)!important; padding-top:18px!important; }
.pro-table .yes svg { width:21px; height:21px; color:var(--ol); stroke-width:2.2; } .pro-table .no svg { width:18px; height:18px; color:#B9B2A4; }
.pro-table td b { font-weight:700; color:var(--ol-d); font-size:14px; }
.pro-swipe { display:none; }
/* Phones: the table keeps all four plan columns and scrolls sideways inside its own box; the row names stay pinned on the left. */
@media (max-width:760px) {
  .pro-swipe { display:flex; justify-content:flex-end; align-items:center; gap:6px; margin:-12px 4px 10px; font:600 13px/1.3 var(--font); color:var(--pg); }
  .pro-swipe__arr { font-size:16px; }
  .pro-table { min-width:560px; font-size:14px; }
  .pro-table th, .pro-table td { padding:11px 10px; }
  .pro-table thead th:first-child, .pro-table tbody th[scope=row] { position:sticky; left:0; z-index:2; width:142px; min-width:142px; max-width:142px; background:#fff; box-shadow:1px 0 0 #EEE7DA, 8px 0 10px -8px rgba(20,51,42,.28); }
  .pro-table thead th:first-child { z-index:3; background:var(--cr2); }
  .pro-table tbody th[scope=row] { font-size:13.5px; line-height:1.35; }
  .pro-table__group th > span { position:sticky; left:10px; }
}
.pro-outside { margin:18px auto 0; max-width:820px; background:var(--cr2); border-radius:16px; padding:16px 20px; color:#34413C; font-size:14.5px; }
.pro-outside h3 { margin:0 0 4px; font:700 13px/1 var(--font); letter-spacing:.12em; text-transform:uppercase; color:var(--mu); }
.pro-outside p { margin:0; }
.pro-faq { padding-block:40px 70px; }
.pro-faq details { background:#fff; border:1px solid #E8E0D1; border-radius:14px; padding:16px 20px; margin-top:10px; }
.pro-faq summary { font-weight:700; color:var(--ol-d); cursor:pointer; } .pro-faq p { margin:10px 0 0; color:#34413C; line-height:1.55; }
@media (max-width:900px) { .pro-plans { grid-template-columns:1fr; max-width:460px; margin-left:auto; margin-right:auto; } .pro-plan--best { transform:none; order:-1; } }

/* ---------- PRO cabinet: the office photo under a cream haze ---------- */
.cab { position:relative; min-height:calc(100vh - 106px); padding:clamp(18px,3vw,34px) 16px 40px; overflow:hidden; }
.cab__bg { position:absolute; inset:0; background-size:cover; background-position:center 55%; }
.cab__veil { position:absolute; inset:0; background:radial-gradient(120% 90% at 50% 40%,rgba(250,247,242,.52),rgba(250,247,242,.68) 60%,rgba(243,236,223,.84)); }
.cab__in { position:relative; max-width:1320px; margin:0 auto; display:grid; grid-template-columns:250px 1fr; gap:22px; align-items:start; }
.cab-side, .cab-card, .cab-top, .cab-group, .cab-dock { background:rgba(255,253,249,.72); border:1px solid rgba(184,137,46,.26); border-radius:22px; backdrop-filter:blur(14px) saturate(1.1); box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 24px 50px -28px rgba(60,45,20,.35); }
.cab-side { position:sticky; top:16px; padding:20px 14px; display:flex; flex-direction:column; gap:18px; }
.cab-brand { display:flex; gap:10px; align-items:center; padding:0 8px; } .cab-brand b { display:block; font-family:var(--display); font-size:20px; color:var(--ol-d); } .cab-brand span { font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--pg); }
.cab-nav { display:grid; gap:3px; }
.cab-nav a { display:flex; gap:11px; align-items:center; padding:11px 12px; border-radius:12px; color:#2A3833; text-decoration:none; font-weight:600; font-size:15px; }
.cab-nav a svg { width:20px; height:20px; color:var(--pg); } .cab-nav a:hover { background:rgba(233,200,119,.18); }
.cab-nav a.is-on { background:linear-gradient(180deg,#1F4A3D,#14332A); color:#FFF6E0; } .cab-nav a.is-on svg { color:var(--pg-l); }
.cab-side__plan { border-top:1px solid rgba(184,137,46,.25); padding:14px 8px 0; } .cab-side__plan p { margin:8px 0 0; font-size:13px; color:var(--mu); }
.cab-chip { display:inline-flex; gap:6px; align-items:center; padding:7px 11px; border-radius:99px; font:700 12.5px/1 var(--font); letter-spacing:.06em; }
.cab-chip--gold { background:linear-gradient(180deg,#F6E2A6,#D9AE52); color:#3D2A06; }
.cab-main { display:grid; gap:18px; min-width:0; }
.cab-top { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:16px; padding:22px 26px; }
.cab-hello { margin:0; color:var(--pg); font-weight:700; letter-spacing:.04em; }
.cab-h1 { margin:2px 0 0; font-family:var(--display); font-weight:600; font-size:clamp(28px,3vw,38px); color:var(--ol-d); }
.cab-stats { list-style:none; display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; }
.cab-stats li { background:rgba(255,255,255,.75); border:1px solid #EADFCB; border-radius:14px; padding:10px 14px; min-width:120px; }
.cab-stats b { display:block; font-family:var(--display); font-size:22px; color:var(--ol-d); font-variant-numeric:tabular-nums; } .cab-stats span { font-size:12.5px; color:var(--mu); }
.cab-dock { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:14px; padding:18px; background:linear-gradient(180deg,rgba(31,74,61,.92),rgba(20,51,42,.94)); border-color:rgba(233,200,119,.5); }
.cab-hint { margin:-6px 6px 0; color:#3B4843; font-size:14px; display:flex; gap:7px; align-items:center; flex-wrap:wrap; } .cab-hint svg { width:16px; height:16px; color:var(--pg); }
.cab-linkbtn { background:none; border:0; padding:0; color:var(--ol); font:inherit; font-weight:700; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.cab-group { padding:20px 20px 22px; }
.cab-h2 { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin:0 0 14px 4px; font-family:var(--display); font-weight:600; font-size:22px; color:var(--ol-d); }
.cab-incl, .cab-free { font:700 11.5px/1 var(--font); letter-spacing:.1em; text-transform:uppercase; padding:6px 10px; border-radius:99px; display:inline-flex; gap:6px; align-items:center; }
.cab-incl { background:rgba(233,200,119,.28); color:#6E4E10; } .cab-free { background:#E9EFEA; color:var(--ol); }
.cab-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(132px,1fr)); gap:12px; }
.app { position:relative; }
.app__link { display:flex; flex-direction:column; align-items:center; text-align:center; gap:7px; padding:16px 8px 14px; border-radius:16px; text-decoration:none; color:var(--ink); transition:background .2s, transform .2s; }
.app__link:hover { background:rgba(255,255,255,.85); transform:translateY(-2px); }
.app__ico { position:relative; display:grid; place-items:center; width:64px; height:64px; border-radius:18px; background:linear-gradient(160deg,#2A5B4B,#14332A); color:var(--pg-l); box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 0 0 1px rgba(233,200,119,.35),0 10px 18px -8px rgba(20,51,42,.65); }
.app__ico svg { width:30px; height:30px; } .app__crown { position:absolute; top:-7px; right:-7px; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#FFF8E4; box-shadow:0 2px 6px rgba(0,0,0,.2); }
.app__crown svg { width:15px; height:15px; }
.app__t { font-weight:700; font-size:14px; line-height:1.2; } .app__s { font-size:12px; color:var(--mu); line-height:1.25; }
.app__pin { position:absolute; top:8px; left:8px; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; border:1px solid #E5D9C2; background:rgba(255,255,255,.9); color:#9A8B6F; cursor:pointer; opacity:0; transition:opacity .2s; }
.app:hover .app__pin, .app__pin.is-on, .app__pin:focus-visible { opacity:1; } .app__pin svg { width:15px; height:15px; } .app__pin.is-on { color:var(--pg); border-color:var(--pg-l); background:#FFF8E4; }
.cab-dock .app__link { color:#FFF6E0; } .cab-dock .app__link:hover { background:rgba(255,255,255,.08); } .cab-dock .app__s { color:#C8D3CC; }
.cab-dock .app__ico { width:72px; height:72px; border-radius:20px; background:linear-gradient(160deg,#FFF6DD,#E9CF8C); color:var(--ol-d); box-shadow:inset 0 1px 0 #fff,0 12px 22px -8px rgba(0,0,0,.5); }
.cab-dock .app__ico svg { width:34px; height:34px; } .cab-dock .app__pin { background:rgba(20,51,42,.85); border-color:rgba(233,200,119,.6); color:var(--pg-l); }
.cab-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.cab-card { padding:22px 24px; display:flex; flex-direction:column; gap:12px; align-items:flex-start; }
.cab-h3 { margin:0; font-family:var(--display); font-weight:600; font-size:21px; color:var(--ol-d); }
.cab-plan { display:flex; align-items:center; gap:10px; margin:0; font-size:18px; color:var(--ol-d); } .cab-plan span { color:var(--mu); font-size:15px; }
.cab-muted { margin:0; color:#43504B; font-size:14.5px; line-height:1.5; } .cab-small { font-size:13px; display:flex; gap:6px; align-items:flex-start; } .cab-small svg { width:15px; height:15px; flex:none; margin-top:2px; color:var(--pg); }
.cab-switch { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; width:100%; }
.cab-opt { display:grid; gap:3px; text-align:center; padding:11px 6px; border-radius:12px; border:1px solid #E3D7C1; background:rgba(255,255,255,.75); cursor:pointer; } .cab-opt input { position:absolute; opacity:0; pointer-events:none; }
.cab-opt b { color:var(--ol-d); } .cab-opt span { font-size:12.5px; color:var(--mu); } .cab-opt.is-on { border:1.5px solid var(--pg); background:#FFF8E4; }
.cab-cc { width:100%; max-width:360px; aspect-ratio:1.6; border-radius:18px; padding:20px; display:grid; grid-template-rows:auto 1fr auto; color:#FFF3D6; background:radial-gradient(120% 120% at 0% 0%,#2E6350,#14332A 60%); box-shadow:inset 0 0 0 1px rgba(233,200,119,.4),0 20px 30px -18px rgba(20,51,42,.8); }
.cab-cc__brand { font:italic 800 20px/1 var(--font); letter-spacing:.06em; justify-self:end; color:var(--pg-l); } .cab-cc__num { align-self:end; font:600 19px/1 var(--font); letter-spacing:.12em; font-variant-numeric:tabular-nums; } .cab-cc__exp { margin-top:8px; font-size:13px; color:#C9D4CD; }
.cab-ccform { display:grid; gap:10px; width:100%; } .cab-ccform label { font-weight:700; color:var(--ol-d); font-size:14px; display:grid; gap:6px; }
.cab-field { display:grid; grid-template-columns:1fr auto auto; gap:14px; padding:14px; background:#fff; border:1px solid #DCCFB6; border-radius:12px; font-weight:500; color:#9AA19D; font-style:normal; } .cab-field i { font-style:normal; }
.cab-rcpt { list-style:none; margin:0; padding:0; width:100%; display:grid; } .cab-rcpt li { display:grid; grid-template-columns:1fr 1fr auto auto; gap:12px; padding:10px 0; border-bottom:1px solid #EADFCB; font-size:14.5px; font-variant-numeric:tabular-nums; } .cab-rcpt a { color:var(--ol); font-weight:700; }
.cab-card--danger { border-color:rgba(140,29,18,.3); } .cab-card--danger .cab-h3 { color:#8C1D12; }
.cab-confirm { display:grid; gap:6px; font-size:14px; color:#43504B; width:100%; } .cab-confirm input { padding:12px 14px; border:1px solid #DCCFB6; border-radius:12px; font:inherit; background:#fff; }
.cab-modal { position:fixed; inset:0; z-index:90; display:grid; place-items:center; padding:16px; background:rgba(30,26,18,.42); backdrop-filter:blur(4px); }
.cab-modal__box { width:min(460px,100%); background:var(--cr); border:1px solid rgba(184,137,46,.4); border-radius:24px; padding:30px 28px 24px; text-align:center; box-shadow:0 40px 80px -30px rgba(0,0,0,.55); }
.cab-modal__crown { display:inline-grid; place-items:center; width:74px; height:74px; border-radius:50%; background:radial-gradient(circle at 50% 40%,#FFF8E4,#F3E2B5 70%); box-shadow:0 0 0 8px rgba(233,200,119,.18); margin-bottom:10px; }
.cab-modal h2 { font-family:var(--display); font-weight:600; color:var(--ol-d); margin:6px 0 8px; font-size:26px; } .cab-modal p { color:#3B4843; margin:0 0 14px; }
.cab-modal ul { list-style:none; padding:0; margin:0 0 20px; display:grid; gap:8px; text-align:left; } .cab-modal li { display:flex; gap:8px; } .cab-modal li svg { width:18px; height:18px; color:var(--pg); flex:none; }
.cab-modal__btns { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
@media (max-width:960px) { .cab__in { grid-template-columns:minmax(0,1fr); } .cab-side { position:static; flex-direction:row; flex-wrap:wrap; align-items:center; padding:12px; } .cab-nav { display:flex; overflow-x:auto; gap:4px; width:100%; order:3; } .cab-nav a { white-space:nowrap; padding:9px 11px; font-size:14px; } .cab-side__plan { border:0; padding:0; margin-left:auto; } .cab-side__plan p { display:none; } .cab-cards { grid-template-columns:1fr; } }
@media (max-width:520px) { .cab { padding-inline:10px; } .cab-dock { grid-template-columns:repeat(3,1fr); padding:12px 8px; gap:6px; } .cab-dock .app__ico { width:56px; height:56px; } .cab-dock .app__s { display:none; } .cab-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; } .cab-group { padding:16px 8px; } .cab-stats { width:100%; } .app__link { padding:12px 2px; } .cab-dock { grid-template-columns:repeat(3,minmax(0,1fr)); } .app__pin { opacity:1; width:24px; height:24px; top:4px; left:2px; } .app__ico { width:54px; height:54px; border-radius:15px; } .app__ico svg { width:26px; height:26px; } .app__s { display:none; } .app__t { font-size:12.5px; } .cab-top { padding:16px; } .cab-stats li { min-width:0; flex:1; padding:8px 10px; } .cab-stats b { font-size:18px; } .cab-hint { font-size:13px; } }

.cab-card--danger { } .cab-card--danger .cab-confirm, .cab-card--danger .cab-muted { max-width:620px; }

/* ---------- live cabinet parts (07.10 implementation) ---------- */
.pro-callout{display:inline-block;margin:18px auto 0;padding:10px 16px;border-radius:12px;background:rgba(255,255,255,.85);border:1px solid #E1C47A;color:#3D2A06;font-weight:600}
.pro-callout a{color:var(--ol-d);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.pro-signin{text-align:center;color:var(--mu);margin:0 auto 10px} .pro-signin a{color:var(--ol);font-weight:700}
.pro-btn--sm{min-height:38px;padding:0 14px;font-size:14px;border-radius:11px} .pro-btn svg{width:17px;height:17px}
.pro-plan form{display:grid}
.cab-note{margin:0;padding:14px 18px;border-radius:16px;background:rgba(255,253,249,.88);border:1px solid rgba(184,137,46,.35);color:#2B3A35;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.cab-note--ok{border-color:#9DBE9F;background:#F1F7F1} .cab-note--err{border-color:#D7A69E;background:#FBEFEC;color:#7A1E12}
.cab-hint--sub{margin-top:-10px;color:var(--mu)}
.cab-h2--gap{margin-top:26px}
.app__lock{position:absolute;bottom:-6px;right:-6px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;color:#8B7A55;box-shadow:0 2px 6px rgba(0,0,0,.2)} .app__lock svg{width:13px;height:13px}
.app--locked .app__ico{filter:saturate(.6);opacity:.82}
.app.is-dragging{opacity:.5}
.cab-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.cab-book{display:grid;gap:10px;padding:16px;border-radius:16px;background:rgba(255,255,255,.75);border:1px solid #EADFCB} .cab-book b{font-family:var(--display);font-size:18px;color:var(--ol-d)}
.cab-book__btns{display:flex;flex-wrap:wrap;gap:8px} .cab-book__btns form{display:contents}
.cab-files{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.cab-file{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:14px;background:rgba(255,255,255,.78);border:1px solid #EADFCB}
.cab-file__img img{display:block;width:72px;height:54px;object-fit:cover;border-radius:9px}
.cab-file__t{color:var(--ink);font-weight:600;font-size:14px;line-height:1.3;text-decoration:none} .cab-file__t:hover{text-decoration:underline}
.cab-file form{margin:0} .pro-btn[disabled]{opacity:.45;cursor:not-allowed}
.cab-cards--one{grid-template-columns:1fr}
.cab-elem{width:100%;padding:12px;background:#fff;border:1px solid #DCCFB6;border-radius:12px}
.cab-delform{display:grid;gap:10px;width:100%;max-width:620px}
.cab-modal[hidden]{display:none}
.rdr{position:relative;max-width:1000px;margin:0 auto;display:grid;gap:16px}
.rdr-top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;border-radius:18px;background:rgba(255,253,249,.9);border:1px solid rgba(184,137,46,.3);backdrop-filter:blur(10px)}
.rdr-h{margin:0;flex:1;font-family:var(--display);font-weight:600;font-size:clamp(18px,2.4vw,24px);color:var(--ol-d);display:flex;gap:8px;align-items:center}
.rdr-n{color:var(--mu);font-size:14px}
.rdr-pages{display:grid;gap:14px;justify-items:center}
.rdr-page{display:block;width:100%;max-width:820px;height:auto;border-radius:6px;box-shadow:0 18px 40px -20px rgba(40,30,10,.5);background:#fff}
@media (max-width:520px){.cab-file{grid-template-columns:56px 1fr;}.cab-file__img img{width:56px;height:42px}}

.cab-dock.is-over{outline:2px dashed var(--pg-l);outline-offset:-8px}

.cab-file{grid-template-columns:72px 1fr;grid-template-rows:auto auto;row-gap:8px}
.cab-file__img{grid-row:1/3}
.cab-file form,.cab-file>.pro-btn{grid-column:2;justify-self:start}
.cab-more{margin-top:12px} .cab-more>summary{list-style:none;cursor:pointer;display:inline-flex} .cab-more>summary::-webkit-details-marker{display:none} .cab-more[open]>summary{display:none}
.cab-dock .app__pin{opacity:0} .cab-dock .app:hover .app__pin,.cab-dock .app__pin:focus-visible{opacity:1}
@media (hover:none){.cab-dock .app__pin{opacity:1}}
/* Never break a word inside the PRO pages (owner 07.10: no "ограничен-ий"); phones get one stat per row instead. */
.pro, .cab { overflow-wrap:normal; word-break:normal; hyphens:manual; }
@media (max-width:520px){.cab-stats{display:grid;grid-template-columns:1fr;gap:8px;width:100%}.cab-stats li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 14px}.cab-stats b{font-size:19px;white-space:nowrap;order:2}.cab-stats span{font-size:13.5px;order:1}}

.cab-rcpt li > span:nth-child(2){white-space:nowrap}
.cab-inf{font-family:var(--font);font-size:1.5em;line-height:.8;font-weight:500;color:var(--pg)}

/* Office photographs live on the /data volume (deploy package limit): /flagship-assets/pro-*.webp */
.cab__bg{background-image:url(/flagship-assets/pro-cabinet-1920.webp)}
.pro-hero__bg{background-image:url(/flagship-assets/pro-office-1920.webp)}
@media (max-width:900px){.cab__bg{background-image:url(/flagship-assets/pro-cabinet-1100.webp)}.pro-hero__bg{background-image:url(/flagship-assets/pro-office-1100.webp)}}

/* ---------- Business tools in PRO (13.10.2026): /pro list, cabinet catalog and cabinet search ---------- */
.cab [hidden]{display:none!important}
.pro-tools{padding-block:46px 10px}
.pro-tdir{margin:0 auto 22px;max-width:1180px;background:rgba(255,253,249,.9);border:1px solid rgba(184,137,46,.28);border-radius:20px;padding:20px 22px 22px;box-shadow:var(--shadow)}
.pro-tdir__h,.cab-tdir__h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:0 0 6px;font-family:var(--display);font-weight:600;font-size:22px;color:var(--ol-d)}
.pro-tdir__h span,.cab-tdir__h span{font:700 11.5px/1 var(--font);letter-spacing:.1em;text-transform:uppercase;color:#6E4E10;background:rgba(233,200,119,.28);padding:6px 10px;border-radius:99px}
.pro-tdir__g,.cab-tdir__g{margin:14px 0 8px;font:700 12.5px/1.2 var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--pg)}
.pro-tlist,.cab-tlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.pro-tool,.cab-tool{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #EADFCB}
.pro-tool__t,.cab-tool__t{font-weight:700;font-size:15.5px;line-height:1.3;color:var(--ol-d);text-decoration:none} .pro-tool__t:hover,.cab-tool__t:hover{text-decoration:underline}
.pro-tool__l,.cab-tool__l{margin:0;font-size:14px;line-height:1.45;color:#43504B}
.pro-tool__f,.cab-tool__f{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:5px;font-size:13px;line-height:1.35;color:#43504B}
.pro-tool__f li,.cab-tool__f li{display:flex;gap:7px;align-items:flex-start} .pro-tool__f svg,.cab-tool__f svg{flex:none;width:15px;height:15px;margin-top:1px;color:var(--pg)}
.pro-tool__f .is-yes,.cab-tool__f .is-yes{color:var(--ol);font-weight:700} .cab-tool__f .is-demo{color:#8B7A55;font-weight:700}
.pro-tool__buy{margin-top:auto;font-size:13.5px;font-weight:700;color:var(--ol);text-decoration:none} .pro-tool__buy:hover{text-decoration:underline}
.cab-tdir{padding:14px 0 4px;border-top:1px solid rgba(184,137,46,.22)} .cab-tdir:first-of-type{border-top:0;padding-top:0}
.cab-tdir__h{font-size:19px}
.cab-tool{background:rgba(255,255,255,.82)}
.cab-tool__btns{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.cab-tools__note{margin:-4px 4px 12px} .cab-tools__note a{color:var(--ol);font-weight:700}
.cab-search{display:grid;gap:8px}
.cab-search__in{width:100%;min-height:50px;padding:0 18px;border-radius:16px;border:1px solid rgba(184,137,46,.4);background:rgba(255,253,249,.92);font:500 16px/1 var(--font);color:var(--ink);box-shadow:0 12px 30px -24px rgba(60,45,20,.5)}
.cab-search__in:focus{outline:2px solid var(--pg-l);outline-offset:1px}
@media (max-width:520px){.pro-tdir{padding:16px 12px}.pro-tlist,.cab-tlist{grid-template-columns:minmax(0,1fr)}.cab-tool__btns .pro-btn{flex:1 1 auto}}
/* PRO library items (owner 14.10.2026): two actions, the cost shown before the click, «Already received» after. */
.cab-file{grid-template-columns:72px 1fr;align-items:start}
.cab-file__body{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0}
.cab-file__body .cab-file__t{flex:1 1 100%}
.cab-file__tag{font:600 11px/1 var(--font);letter-spacing:.08em;text-transform:uppercase;color:var(--ol);background:var(--pg-xl);border:1px solid rgba(184,137,46,.35);border-radius:999px;padding:4px 8px}
.cab-file__got{display:inline-flex;align-items:center;gap:4px;font:600 12px/1 var(--font);color:#1F6B4A;background:#E6F2EA;border:1px solid #BFDCC8;border-radius:999px;padding:4px 8px} .cab-file__got svg{width:13px;height:13px}
.cab-file__d{flex:1 1 100%;margin:2px 0 0;font-size:13px;line-height:1.45;color:#43504B}
.cab-file__cost{flex:1 1 100%;margin:2px 0 0;font-size:12.5px;line-height:1.4;color:var(--mu)}
.cab-file[data-cost="unit"] .cab-file__cost{color:#7A5A12} .cab-file[data-cost="quota"] .cab-file__cost{color:#9A3B2B}
.cab-file__btns{grid-column:2;display:flex;flex-wrap:wrap;gap:8px} .cab-file__btns form{margin:0}
.cab-file.is-got{background:rgba(250,247,242,.9)}
@media (max-width:520px){.cab-file{grid-template-columns:56px 1fr}}
/* /pro — the downloadable library block (owner 14.10.2026). */
.pro-lib{margin-top:56px}
.pro-lib__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;margin-top:18px}
.pro-lib__progs,.pro-lib__rules{padding:20px 22px;border-radius:20px;background:rgba(255,255,255,.8);border:1px solid #EADFCB}
.pro-lib__progs h3{margin:0 0 12px;font-family:var(--display);font-size:20px;color:var(--ol-d)}
.pro-lib__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.pro-lib__list li{display:flex;align-items:center;gap:10px;padding:6px;border-radius:12px;background:var(--cr)}
.pro-lib__list img{width:52px;height:39px;object-fit:cover;border-radius:7px;flex:none}
.pro-lib__list a,.pro-lib__list b{color:var(--ink);font-weight:600;font-size:14px;line-height:1.3;text-decoration:none} .pro-lib__list a:hover{text-decoration:underline}
.pro-lib__note{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:#43504B}
.pro-lib__rules ul{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.pro-lib__rules li{display:flex;gap:8px;align-items:flex-start;font-weight:600;color:var(--ol-d)} .pro-lib__rules li svg{width:18px;height:18px;flex:none;color:var(--pg);margin-top:2px}
.pro-lib__rules p{margin:0 0 10px;font-size:14px;line-height:1.55;color:#43504B}
.pro-lib__keep{display:flex;gap:8px;align-items:flex-start;font-weight:600;color:var(--ol)!important} .pro-lib__keep svg{width:18px;height:18px;flex:none;color:var(--pg);margin-top:2px}
@media (max-width:820px){.pro-lib__grid{grid-template-columns:1fr}.pro-lib__progs,.pro-lib__rules{padding:16px}}
