/* RU: Экран встречи использует шкалу П1–П12, собственную область классов и токены общей палитры.
   EN: The meeting screen follows П1–П12, scopes its classes and uses shared palette tokens. */
.meetings{--meet-body-size:14px;--meet-body-line:20px;--meet-note-size:12px;--meet-note-line:16px;--meet-label-size:13px;--meet-label-line:18px;--meet-heading-size:20px;--meet-heading-line:26px;--meet-title-size:24px;--meet-title-line:30px;--meet-control:40px;--meet-search:44px;--meet-radius:12px;--meet-space:16px;--meet-shadow:var(--shadow-float,var(--k-shadow-2));margin:0;background:var(--k-bg);color:var(--k-text);font-family:var(--k-font-ui);font-size:var(--meet-body-size);line-height:var(--meet-body-line)}
.meetings *{box-sizing:border-box}.meetings [hidden]{display:none!important}.meetings a{color:var(--k-brand);text-underline-offset:4px}.meet-header{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--meet-space);gap:var(--meet-space);background:var(--k-surface);border-bottom:1px solid var(--k-border)}.meet-brand{font-size:var(--meet-heading-size);line-height:var(--meet-heading-line);font-weight:600;text-decoration:none}.meet-header nav{display:flex;gap:var(--meet-space);align-items:center}.meet-header nav a{display:flex;align-items:center;min-height:var(--meet-control);font-size:var(--meet-label-size);line-height:var(--meet-label-line)}
.meet-workspace{display:grid;grid-template-columns:min(352px,30vw) minmax(0,1fr);height:calc(100dvh - 48px)}.meet-editor{min-width:0;overflow-y:auto;padding:var(--meet-space);background:var(--k-surface);border-right:1px solid var(--k-border)}.meetings h1{font-size:var(--meet-title-size);line-height:var(--meet-title-line);font-weight:600;margin:0 0 12px}.meetings h2{font-size:var(--meet-heading-size);line-height:var(--meet-heading-line);font-weight:600;margin:24px 0 12px}.meetings h3{font-size:var(--meet-body-size);line-height:var(--meet-body-line);font-weight:600;margin:0 0 8px}.meetings p{margin:8px 0;overflow-wrap:anywhere}.meet-note{font-size:var(--meet-note-size);line-height:var(--meet-note-line);color:var(--k-text-muted)}.meetings label{display:block;font-size:var(--meet-label-size);line-height:var(--meet-label-line);font-weight:500;margin:12px 0 8px}.meetings input,.meetings select,.meetings textarea{display:block;width:100%;min-width:0;margin-top:8px;padding:8px 12px;border:1px solid var(--k-border);border-radius:var(--meet-radius);background:var(--k-surface);color:var(--k-text);font:inherit;font-size:var(--meet-body-size);line-height:var(--meet-body-line);min-height:var(--meet-control)}.meetings input[type=search],#participant-search,[data-meeting-search]{min-height:var(--meet-search)}.meetings textarea{resize:vertical;min-height:80px}.meetings input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0;flex:none}.meetings button{font:inherit;font-size:var(--meet-body-size);line-height:var(--meet-body-line);font-weight:500;min-height:var(--meet-control);border:1px solid transparent;border-radius:var(--meet-radius);padding:8px 12px;background:var(--k-brand);color:var(--k-text-on-accent);cursor:pointer}.meetings button:disabled{background:var(--k-surface-2);color:var(--k-text-muted);border-color:var(--k-border);cursor:default}.meetings .meet-secondary{background:var(--k-surface);color:var(--k-text);border-color:var(--k-border)}.meet-full{width:100%;margin-top:12px}.meet-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.meet-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.meet-check{display:flex!important;gap:8px;align-items:flex-start;min-height:var(--meet-search)}.meetings :focus-visible{outline:2px solid var(--k-brand);outline-offset:2px}.meet-option,.meet-member,.meet-owned-item{padding:var(--meet-space) 0;border-bottom:1px solid var(--k-border)}.meet-member{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.meet-member>div{min-width:0}.meet-member strong,.meet-owned-item strong{display:block;overflow-wrap:anywhere;font-weight:600}.meet-member button{flex:none}.meet-owned-item button{width:100%;text-align:left}.meet-option-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.meet-option-head>div{min-width:0}.meet-option-head strong{display:block;font-weight:600;overflow-wrap:anywhere}.meet-search-results button{display:block;width:100%;text-align:left;border-bottom:1px solid var(--k-border);border-radius:0;background:var(--k-surface-2);color:var(--k-text);padding:12px}.meet-search-results small{display:block;font-size:var(--meet-note-size);line-height:var(--meet-note-line);color:var(--k-text-muted)}.meet-votes{display:flex;gap:8px;margin:12px 0}.meet-votes button{flex:1;padding:8px;min-width:0;background:var(--k-surface);color:var(--k-text);border-color:var(--k-border)}.meet-votes button[aria-pressed=true]{background:var(--k-brand);color:var(--k-text-on-accent);border-color:var(--k-brand)}.meet-notice,.meet-final{padding:12px;border-radius:var(--meet-radius);background:var(--k-surface-2);margin:12px 0}.meet-notice.is-error{border:1px solid var(--k-danger);color:var(--k-danger)}.meet-notice.is-success,.meet-final{border:1px solid var(--k-brand)}.meetings details{margin-top:24px;border-top:1px solid var(--k-border);padding-top:var(--meet-space)}.meetings summary{cursor:pointer;min-height:var(--meet-control);display:flex;align-items:center;font-weight:500}.meet-footer{margin-top:24px!important}
.meet-map{position:relative;min-width:0;min-height:0;background:var(--k-surface-2)}#meeting-map{height:100%;width:100%}.meet-map-caption{position:absolute;bottom:64px;left:var(--meet-space);right:var(--meet-space);background:var(--k-surface);color:var(--k-text);font-size:var(--meet-note-size);line-height:var(--meet-note-line);border-radius:var(--meet-radius);box-shadow:var(--meet-shadow);padding:12px;pointer-events:none}.meet-pin{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--k-brand);color:var(--k-text-on-accent);border:2px solid var(--k-surface);border-radius:999px;font-size:var(--meet-label-size);line-height:var(--meet-label-line);font-weight:600}.meet-pin.is-own{background:var(--k-text)}.meetings .maplibregl-ctrl-group button{width:var(--meet-control);height:var(--meet-control);padding:0;min-height:var(--meet-control);background:var(--k-surface);color:var(--k-text)}
@media(max-width:760px){.meet-workspace{display:flex;flex-direction:column;height:auto}.meet-map{order:-1;height:42dvh;min-height:240px;max-height:420px}.meet-editor{overflow:visible;border-right:0}.meet-header nav{gap:12px}.meet-header nav a{font-size:var(--meet-note-size);line-height:var(--meet-note-line)}.meetings input,.meetings select,.meetings textarea{font-size:16px;line-height:22px}.meet-row{grid-template-columns:minmax(0,1fr)}.meet-header{padding:0 12px}.meet-brand{font-size:var(--meet-body-size);line-height:var(--meet-body-line)}}
@media(pointer:coarse){.meetings{--meet-control:44px}.meetings .meet-votes button{min-height:44px}.meetings .meet-check{align-items:center}.meetings .meet-check input{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.meetings *{scroll-behavior:auto!important}}

/* RU: Источники карты доступны отдельной кнопкой и не закрывают пояснение маршрута. EN: Map sources use a separate control and never cover the route explanation. */
.meetings .maplibregl-ctrl-attrib{font-family:var(--k-font-ui);font-size:var(--meet-note-size);line-height:var(--meet-note-line)}.meetings .maplibregl-ctrl-attrib-button{width:var(--meet-control);height:var(--meet-control);min-height:var(--meet-control);background-repeat:no-repeat;background-position:center;background-size:24px 24px}
