:root{--text:#4b4b4b;--text-h:#111;--bg:#f7f6f1;--card-bg:#fff;--border:#e4e2da;--accent:#de0919;--accent-hover:#b8070f;--accent-text:#fff;--ok-bg:#eafaf0;--ok-border:#b7ecc9;--ok-text:#146c34;--warn-bg:#fff8e6;--warn-border:#f5dd93;--warn-text:#7a5b00;--error-text:#b3261e;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000f;--shadow-md:0 8px 24px #00000024, 0 2px 6px #00000014;--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:16px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--text-h);font-weight:600}@media (width<=640px){:root{font-size:15px}}.textLayer{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;letter-spacing:normal;word-spacing:normal;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:0;line-height:1;position:absolute;inset:0;overflow:clip}.textLayer.highlighting{touch-action:none}.textLayer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.textLayer{--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size))}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.textLayer .markedContent{display:contents}.textLayer span[role=img]{-webkit-user-select:none;user-select:none;cursor:default}.textLayer .highlight{--highlight-bg-color:#b400aa40;--highlight-selected-bg-color:#00640040;--highlight-backdrop-filter:none;--highlight-selected-backdrop-filter:none}@media screen and (forced-colors:active){.textLayer .highlight{--highlight-bg-color:transparent;--highlight-selected-bg-color:transparent;--highlight-backdrop-filter:var(--hcm-highlight-filter);--highlight-selected-backdrop-filter:var(--hcm-highlight-selected-filter)}}.textLayer .highlight{background-color:var(--highlight-bg-color);-webkit-backdrop-filter:var(--highlight-backdrop-filter);backdrop-filter:var(--highlight-backdrop-filter);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color);-webkit-backdrop-filter:var(--highlight-selected-backdrop-filter);backdrop-filter:var(--highlight-selected-backdrop-filter);scroll-margin-top:50px}.textLayer ::selection{background:#0000ff40;background:color-mix(in srgb, AccentColor, transparent 50%);color:#0000}.textLayer.selectionRendering ::selection{color:#0000;background:0 0}.textLayer br::selection{background:0 0}.textLayer .endOfContent{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}.textLayer.selecting .endOfContent{top:0}.app{max-width:860px;margin:0 auto;padding:40px 20px 80px}.app--wide{max-width:1180px}.topbar{border-bottom:1px solid var(--border);background:var(--card-bg);z-index:10;justify-content:space-between;align-items:center;padding:12px 20px;display:flex;position:sticky;top:0}.topbar__brand{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.topbar__logo{width:88px;height:auto;display:block}.topbar__right{align-items:center;gap:8px;font-size:14px;display:flex}.topbar__link{color:var(--text-h);border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-weight:600;text-decoration:none;display:inline-flex}.topbar__link:hover{background:color-mix(in srgb, var(--accent) 12%, var(--card-bg))}.topbar__nav{flex:1;align-items:center;gap:4px;min-width:0;margin:0 16px;display:flex}.topbar__link--active{background:color-mix(in srgb, var(--accent) 25%, var(--card-bg))}.home__header{text-align:center;margin:24px 0 32px}.home__header h1{margin:0 0 6px}.home__subtitle{opacity:.65;margin:0;font-size:14px}.home__cards{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=640px){.home__cards{grid-template-columns:1fr}}.home-card{background:var(--card-bg);border:1px solid var(--border);color:var(--text);border-radius:14px;flex-direction:column;gap:10px;padding:28px 24px;text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.home-card:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));transform:translateY(-2px);box-shadow:0 8px 24px #00000012}.home-card h2{color:var(--text-h);margin:4px 0 0;font-size:20px}.home-card p{margin:0;font-size:14px;line-height:1.5}.home-card__icon{background:color-mix(in srgb, var(--accent) 30%, var(--card-bg));width:52px;height:52px;color:var(--text-h);border-radius:12px;justify-content:center;align-items:center;display:flex}.home-card__cta{color:var(--text-h);margin-top:auto;padding-top:8px;font-size:14px;font-weight:600}.teams-cell__chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.teams-cell__none{opacity:.5}.team-chip{background:color-mix(in srgb, var(--accent) 22%, var(--card-bg));border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text-h);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.team-chip--global{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.popover-surface{z-index:1000;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:6px;min-width:220px;padding:10px;display:flex;position:fixed;box-shadow:0 10px 30px #0000001f}.popover-surface--wide{min-width:260px}.teams-popover__row{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.teams-popover__row:has(.teams-popover__hint){align-items:flex-start;padding:4px 0}.teams-popover__hint{opacity:.7;font-size:12px;font-weight:400}.teams-popover__row--global{border-top:1px solid var(--border);margin-top:2px;padding-top:8px}.teams-popover__empty{opacity:.7;margin:0;font-size:13px}.teams-popover__actions{gap:6px;padding-top:4px;display:flex}.teams-manager{margin-top:16px;padding:16px}.teams-manager__title{color:var(--text-h);margin:0 0 10px;font-weight:700}.teams-manager__list{flex-direction:column;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.teams-manager__row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;display:flex}.teams-manager__row:last-child{border-bottom:none}.teams-manager__name{color:var(--text-h);align-items:baseline;gap:10px;font-weight:600;display:flex}.teams-manager__count{opacity:.6;font-size:12px;font-weight:400}.teams-manager__rename{border:1px solid var(--border);font:inherit;border-radius:8px;flex:1;padding:6px 8px}.teams-manager__create{margin-bottom:0}.user-table__role-select{padding:4px 8px;font-size:13px}.table-card{overflow-x:auto}.user-table__access-col{min-width:190px}.access-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.access-pill{white-space:nowrap;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.access-pill--full{background:color-mix(in srgb, var(--accent) 14%, var(--card-bg));border-color:color-mix(in srgb, var(--accent) 35%, var(--border));color:var(--text-h)}.access-pill--none{color:color-mix(in srgb, var(--text) 55%, var(--bg));border-style:dashed}.access-pill--granted{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.teams-popover__badge{background:var(--bg);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:600}.user-table__teams-col{min-width:180px}.promo-mode{align-items:center;gap:10px;font-size:13px;display:flex}.promo-mode__label{color:var(--text-h);font-weight:600}.promo-mode__chip{background:color-mix(in srgb, var(--accent) 22%, var(--card-bg));border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text-h);border-radius:999px;align-items:center;gap:8px;padding:5px 10px;display:inline-flex}.promo-mode__clear{cursor:pointer;opacity:.7;background:0 0;border:none;padding:2px;font-size:12px;line-height:1}.promo-mode__clear:hover{opacity:1}.promo-gallery{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.promo-gallery__card{text-align:left;background:var(--card-bg);border:1px solid var(--border);cursor:pointer;font:inherit;border-radius:10px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;display:flex}.promo-gallery__card:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--border))}.promo-gallery__name{color:var(--text-h);font-weight:700}.promo-gallery__desc{opacity:.75;font-size:13px}.promo-gallery__chips,.tpl-list__chips{flex-wrap:wrap;gap:4px;display:flex}.tpl-list,.tpl-editor{padding:16px}.tpl-list__items{flex-direction:column;gap:10px;margin:0 0 14px;padding:0;list-style:none;display:flex}.tpl-list__row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.tpl-list__row--archived{opacity:.55}.tpl-list__info{flex-direction:column;gap:5px;display:flex}.tpl-list__name{color:var(--text-h);align-items:center;gap:8px;font-weight:700;display:flex}.tpl-list__desc{opacity:.75;font-size:13px}.tpl-editor__meta{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.tpl-editor__meta input{border:1px solid var(--border);font:inherit;border-radius:8px;padding:8px 10px}.tpl-editor__hint{opacity:.7;margin:0 0 12px;font-size:13px}.tpl-slot{border:1px solid var(--border);background:var(--bg);border-radius:10px;margin-bottom:10px;padding:10px}.tpl-slot__grid{grid-template-columns:24px minmax(150px,auto) 1fr 1fr auto auto;align-items:center;gap:8px;display:grid}.tpl-slot__grid input[type=text]{border:1px solid var(--border);font:inherit;border-radius:8px;min-width:0;padding:7px 9px;font-size:13px}.tpl-slot__num{opacity:.5;text-align:center;font-weight:700}.tpl-slot__required{white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:flex}.tpl-slot__fixed{align-items:center;gap:8px;margin-top:8px;display:flex}.tpl-slot__fixed-badge{color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:999px;padding:3px 9px;font-size:12px}.tpl-editor__actions{justify-content:space-between;align-items:center;margin-top:6px;display:flex}@media (width<=900px){.tpl-slot__grid{grid-template-columns:24px 1fr}}.history-sidebar__groups{flex-direction:column;gap:4px;display:flex;overflow-y:auto}.history-sidebar__group-title{text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin:10px 0 4px;padding:0 4px;font-size:12px;font-weight:700}.history-sidebar__vis{font-size:12px}.share-control__team{padding-left:24px}.promo-conflict{border:1px solid var(--warn-border);background:var(--warn-bg);color:var(--warn-text);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;font-size:13px;display:flex}.topbar__link-icon{flex-shrink:0}.topbar__email{opacity:.7;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.topbar__logout{border:1px solid var(--border);cursor:pointer;color:inherit;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;display:inline-flex}.topbar__logout:hover{background:color-mix(in srgb, var(--accent) 12%, var(--card-bg))}@media (width<=640px){.topbar{padding:10px 12px}.topbar__right{gap:4px}.topbar__link-text{display:none}.topbar__link,.topbar__logout{padding:8px}.topbar__email{display:none}.topbar__logo{width:72px}}.app-shell,.auth-shell{flex-direction:column;min-height:100vh;display:flex}.app-shell__content{flex:1}.authpage{flex:1;justify-content:center;align-items:center;padding:20px;display:flex}.link-panel{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--card-bg);box-shadow:var(--shadow-sm);border-radius:10px;margin:12px 0 4px;padding:14px 16px}.link-panel--warn{border-left-color:var(--warn-text);background:var(--warn-bg);border-color:var(--warn-border)}.link-panel__title{margin:0 0 10px;font-size:14px}.link-panel__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.link-panel__url{flex:1;min-width:220px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.link-panel__hint{opacity:.75;margin:10px 0 0;font-size:12px}.site-footer{text-align:center;color:var(--text);opacity:.65;padding:16px 20px 20px;font-size:12px}.site-footer a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.site-footer a:hover{color:var(--accent)}.authcard{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:380px;padding:32px;display:flex}.authcard h1{margin:0 0 6px;font-size:22px}.authcard__logo{width:120px;height:auto;margin:0 0 6px}.authcard__subtitle{opacity:.8;margin:0 0 20px;font-size:14px}.authcard__label{margin:12px 0 4px;font-size:13px;font-weight:600}.authcard input{border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:10px 12px;font-size:14px}.authcard__error{color:var(--error-text);margin:12px 0 0;font-size:13px}.authcard__submit{justify-content:center;margin-top:20px}.authcard__footnote{opacity:.7;text-align:center;margin:16px 0 0;font-size:13px}.invite-form{gap:10px;margin-bottom:24px;display:flex}.invite-form input{border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;flex:1;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.invite-form input:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.admin__notice{color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:8px;margin:0 0 16px;padding:9px 14px;font-size:13px}.admin__section-title{border-bottom:1px solid var(--border);margin:32px 0 14px;padding-bottom:10px;font-size:16px}.admin__section-title:first-of-type{margin-top:8px}.stats-panel{margin-bottom:8px}.stats-tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px;display:grid}.stats-tile{background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:10px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.stats-tile__value{color:var(--text-h);font-size:22px;font-weight:700}.stats-tile__label{opacity:.7;font-size:12px}.table-card{background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px;margin-bottom:24px;overflow:hidden}.user-table{border-collapse:collapse;width:100%;font-size:14px}.user-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;opacity:.55;background:color-mix(in srgb, var(--bg) 60%, var(--card-bg));border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px;font-size:11px;font-weight:700}.user-table td{border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.user-table tbody tr:last-child td{border-bottom:none}.user-table tbody tr:hover td{background:color-mix(in srgb, var(--accent) 6%, transparent)}.user-table__email{color:var(--text-h);font-weight:600}.user-table__actions-col,.user-table__select-col{width:1%}.user-table__actions{white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end;gap:8px;display:flex}.status-badge{letter-spacing:.02em;background:var(--border);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-badge--active{background:var(--ok-bg);color:var(--ok-text)}.status-badge--invited{background:var(--warn-bg);color:var(--warn-text)}.status-badge--requested{background:color-mix(in srgb, var(--accent) 30%, var(--card-bg));color:var(--text-h)}.status-badge--revoked{background:var(--border);color:var(--text);opacity:.7}.status-badge--expired{background:var(--warn-bg);color:var(--warn-text);opacity:.75}.user-table__toolbar{gap:10px;margin-bottom:14px;display:flex}.user-table__search-wrap{flex:1;align-items:center;display:flex;position:relative}.user-table__search-icon{opacity:.45;pointer-events:none;position:absolute;left:12px}.user-table__search{border:1px solid var(--border);background:var(--card-bg);width:100%;color:var(--text-h);border-radius:8px;padding:9px 12px 9px 34px;font-size:14px;transition:border-color .15s,box-shadow .15s}.user-table__search:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.user-table__filter,.bulk-actions__preset{appearance:none;border:1px solid var(--border);background-color:var(--card-bg);color:var(--text-h);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none' stroke='%234b4b4b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 8l4.5 4.5L14.5 8'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:8px;padding:9px 34px 9px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.user-table__filter:hover,.bulk-actions__preset:hover{border-color:color-mix(in srgb, var(--accent-hover) 60%, var(--border))}.user-table__filter:focus-visible,.bulk-actions__preset:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.user-table__sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.user-table__sortable:hover{opacity:.85;color:var(--text-h)}.user-table__sort-arrow{opacity:.8;color:var(--text-h)}.activity-feed{flex-direction:column;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.activity-feed li{border-bottom:1px solid var(--border);align-items:baseline;gap:6px;padding:12px 16px;display:flex}.activity-feed li:last-child{border-bottom:none}.activity-feed__who{color:var(--text-h);font-weight:600}.usage-chart__caption{opacity:.6;margin:16px 16px 10px;font-size:12px}.usage-chart{align-items:flex-end;gap:3px;height:100px;padding:0 16px 16px;display:flex}.usage-chart__bar{background:var(--accent);border-radius:3px 3px 0 0;flex:1;min-width:2px}.usage-chart__bar--empty{background:var(--border)}.activity-feed__time{opacity:.6;white-space:nowrap;flex-shrink:0;margin-left:auto}.app__header h1{margin:0 0 8px;font-size:28px}.app__header p{max-width:640px;margin:0 0 28px}.app__empty{text-align:center;color:var(--text);opacity:.7;margin-top:32px}.dropzone{border:2px dashed var(--border);text-align:center;cursor:pointer;background:var(--card-bg);border-radius:12px;padding:40px 20px;transition:border-color .15s,background .15s}.dropzone:hover,.dropzone--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card-bg))}.dropzone__icon{margin-bottom:8px;font-size:32px}.dropzone__title{color:var(--text-h);margin:0 0 4px;font-weight:600}.dropzone__subtitle{opacity:.75;margin:0;font-size:14px}.filelist{flex-direction:column;gap:16px;margin-top:24px;display:flex}.filecard{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px}.filecard__header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.filecard__title{align-items:center;gap:8px;min-width:0;display:flex}.filecard__name{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.filecard__badge{letter-spacing:.03em;background:var(--border);color:var(--text);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.filecard__remove{cursor:pointer;color:var(--text);opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px 8px;font-size:16px}.filecard__remove:hover{opacity:1}.filecard__summary{opacity:.8;gap:10px;margin-bottom:12px;font-size:14px;display:flex}.filecard__meta:before{content:"·";margin-right:10px}.filecard__status{opacity:.75;margin:4px 0 0;font-size:14px}.filecard__error{color:var(--error-text);font-size:14px}.filecard__error-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.filecard__progress{background:var(--border);border-radius:6px;align-items:center;height:28px;font-size:13px;display:flex;position:relative;overflow:hidden}.filecard__progress-bar{background:var(--accent);opacity:.35;transition:width .15s;position:absolute;inset:0 auto 0 0}.filecard__progress span{padding-left:10px;position:relative}.filecard__progress-bar--indeterminate{animation:1.2s ease-in-out infinite progress-indeterminate;width:40%!important}@keyframes progress-indeterminate{0%{left:-40%}to{left:100%}}.bulk-actions{align-items:center;gap:10px;margin:16px 0 0;display:flex}.bulk-actions:empty{margin:0}.bulk-actions__progress{color:var(--text-h);font-size:14px;font-weight:600}.verdict{border:1px solid;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;display:flex}.verdict--ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.verdict--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.verdict__icon{font-size:20px}.verdict__title{margin:0;font-weight:600}.verdict__subtitle{opacity:.9;margin:2px 0 0;font-size:13px}.verdict>div{flex:1}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn--primary{background:var(--accent);color:var(--accent-text)}.btn--primary:hover{background:var(--accent-hover)}.btn--ghost{border-color:var(--border);color:var(--text-h);background:0 0;flex-shrink:0}.btn--ghost:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:color-mix(in srgb, var(--accent-hover) 60%, var(--border))}.btn--danger{background:var(--error-text);color:#fff}.btn--danger:hover{opacity:.9}.btn--sm{border-radius:6px;padding:6px 12px;font-size:13px}.presets{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0;display:grid}.presets__option{border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex;position:relative}.presets__option input{position:absolute;top:12px;right:12px}.presets__option--selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card-bg))}.presets__label{color:var(--text-h);padding-right:20px;font-size:14px;font-weight:600}.presets__desc{opacity:.75;font-size:12px}.result{border:1px solid var(--border);border-radius:8px;padding:14px}.result--ok{border-color:var(--ok-border)}.result--warn{border-color:var(--warn-border)}.result__stats{align-items:baseline;gap:10px;margin-bottom:4px;font-size:15px;display:flex}.result__arrow{opacity:.5}.result__compressed{color:var(--text-h);font-weight:700}.result__pct{color:var(--ok-text);font-size:13px;font-weight:600}.result__note{opacity:.75;margin:0 0 10px;font-size:12px}.compare{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.compare__frame{border:1px solid var(--border);aspect-ratio:4/3;background:repeating-conic-gradient(#8883 0% 25%,#0000 0% 50%) 50%/16px 16px;border-radius:8px;justify-content:center;align-items:center;display:flex;overflow:hidden}.compare__frame img,.compare__frame video{object-fit:contain;max-width:100%;max-height:100%}.compare__caption{opacity:.75;justify-content:space-between;margin-top:4px;font-size:12px;display:flex}@media (width<=520px){.compare{grid-template-columns:1fr}}.promo-source{margin-bottom:16px;padding:12px 16px}.promo-source__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.promo-source__toggle{color:var(--text-h);cursor:pointer;background:0 0;border:none;padding:6px 4px;font-size:14px;font-weight:700}.promo-source__body{flex-direction:column;gap:12px;margin-top:12px;display:flex}.promo-source__body .btn--primary{align-self:flex-start}.promo-textarea{border:1px solid var(--border);background:var(--card-bg);width:100%;min-height:200px;color:var(--text-h);resize:vertical;border-radius:8px;padding:14px 16px;font-family:inherit;font-size:14px;line-height:1.6}.promo-textarea:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.promo-upload{border:2px dashed var(--border);text-align:center;cursor:pointer;background:var(--card-bg);border-radius:12px;padding:20px;transition:border-color .15s,background .15s}.promo-upload:hover,.promo-upload--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card-bg))}.promo-upload__title{color:var(--text-h);font-size:14px;font-weight:600;display:block}.promo-upload__subtitle{opacity:.7;margin-top:2px;font-size:13px;display:block}.promo-actions{gap:10px;display:flex}.promo-staged{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.promo-staged__thumb{border:1px solid var(--border);background:#f8f8f8;border-radius:8px;width:96px;height:72px;position:relative;overflow:hidden}.promo-staged__thumb img{object-fit:cover;width:100%;height:100%;display:block}.promo-staged__num{color:#fff;background:#111111bf;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:4px;left:4px}.promo-staged__remove{color:#fff;cursor:pointer;background:#111111bf;border:none;border-radius:50%;width:18px;height:18px;font-size:11px;line-height:1;position:absolute;top:3px;right:3px}.promo-staged__remove:hover{background:#bb070f}.promo-staged__hint{opacity:.65;flex-basis:100%;margin:0;font-size:12px}.history-sidebar{z-index:110;background:var(--card-bg);border-right:1px solid var(--border);width:300px;max-width:85vw;box-shadow:var(--shadow-md);visibility:hidden;flex-direction:column;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.history-sidebar--open{visibility:visible;transform:translate(0)}.history-sidebar__backdrop{z-index:105;background:#00000059;position:fixed;inset:0}.history-sidebar__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.history-sidebar__title{color:var(--text-h);font-size:14px;font-weight:700}.history-sidebar__status{padding:14px 16px}.history-sidebar__list{flex:1;margin:0;padding:8px;list-style:none;overflow-y:auto}.history-sidebar__item{border-radius:8px;align-items:center;gap:4px;padding:2px 4px 2px 0;display:flex}.history-sidebar__item:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.history-sidebar__item--current{background:color-mix(in srgb, var(--accent) 14%, transparent)}.history-sidebar__item-main{cursor:pointer;text-align:left;min-width:0;color:inherit;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;padding:10px 12px;display:flex}.history-sidebar__item-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.history-sidebar__item-date{opacity:.6;font-size:11px}.history-sidebar__item-actions{opacity:0;gap:2px;transition:opacity .12s;display:flex}.history-sidebar__item:hover .history-sidebar__item-actions,.history-sidebar__item--current .history-sidebar__item-actions{opacity:1}.history-sidebar__icon-btn{cursor:pointer;color:var(--text-h);opacity:.7;background:0 0;border:none;border-radius:6px;padding:6px;font-size:13px}.history-sidebar__icon-btn:hover{opacity:1;background:color-mix(in srgb, var(--accent) 12%, transparent)}.history-sidebar__icon-btn--danger:hover{color:#bb070f}.history-sidebar__rename-input{border:1px solid var(--accent);background:var(--card-bg);min-width:0;color:var(--text-h);border-radius:6px;flex:1;margin:6px 0 6px 12px;padding:6px 8px;font-size:13px}.history-sidebar__item-main--thumbed{flex-direction:row;align-items:center;gap:10px}.history-sidebar__thumb{border:1px solid var(--border);object-fit:cover;background:color-mix(in srgb, var(--text-h) 6%, transparent);border-radius:4px;flex:none;width:64px;height:40px}.history-sidebar__item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.history-sidebar__footer{border-top:1px solid var(--border);opacity:.65;padding:10px 16px;font-size:11px}.promo-canvas{background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px}.promo-canvas__bar{z-index:40;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 40%, var(--card-bg));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px 12px 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex;position:sticky;top:64px}.promo-canvas__tools{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.promo-canvas__tool{border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);cursor:pointer;border-radius:6px;min-width:30px;padding:5px 9px;font-size:12px}.promo-canvas__tool:hover:not(:disabled){border-color:var(--accent-hover)}.promo-canvas__tool:disabled{opacity:.35;cursor:default}.promo-canvas__tool--active,.marker-toolbar__btn--active{background:color-mix(in srgb, var(--accent) 18%, var(--card-bg));border-color:var(--accent)}.promo-canvas__tool-sep{background:var(--border);width:1px;height:18px;margin:0 4px}.promo-canvas__bar-hint{opacity:.55;margin-left:6px;font-size:12px}.promo-canvas__bar-actions{flex-wrap:wrap;gap:6px;display:flex}.promo-canvas__page{background:#f8f8f8;border-radius:0 0 12px 12px;padding:clamp(24px,5vw,48px) clamp(16px,4vw,36px)}.promo-canvas__page>*{max-width:860px;margin-left:auto;margin-right:auto}.promo-canvas__block{border-radius:8px;position:relative}.promo-canvas__block--hover{outline-offset:6px;outline:2px dashed #bb070f4d}.promo-canvas__surface [contenteditable]:hover{outline-offset:2px;outline:1px dashed #bb070f59}.promo-canvas__surface [contenteditable]:focus{outline-offset:2px;outline:2px solid #bb070f73}.promo-canvas__chip{z-index:30;background:#fff;border:1px solid #ddd;border-radius:8px;align-items:center;gap:2px;padding:3px 4px;display:flex;position:absolute;top:-14px;right:4px;box-shadow:0 3px 10px #00000024}.promo-canvas__chip-label{color:#555;white-space:nowrap;padding:0 6px;font-size:11px;font-weight:700}.promo-canvas__chip button{color:#111;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:4px 7px;font-size:12px}.promo-canvas__chip button:hover:not(:disabled){background:#bb070f17}.promo-canvas__chip button:disabled{opacity:.3;cursor:default}.promo-canvas__chip .promo-canvas__chip-danger:hover{color:#bb070f;background:#bb070f24}.promo-canvas__form{margin:12px 0 24px}.promo-canvas__form .promo-form{border:1px solid var(--border);border-radius:10px;margin-bottom:0}.promo-canvas__append{color:#555;cursor:pointer;background:0 0;border:2px dashed #1113;border-radius:8px;width:100%;max-width:860px;margin:8px auto 0;padding:12px;font-size:13px;font-weight:600;display:block}.promo-canvas__append:hover{color:#bb070f;border-color:#bb070f80}.promo-preview{background:#f8f8f8;border:none;border-radius:0 0 12px 12px;width:100%;height:calc(100vh - 220px);min-height:400px;display:block}.promo-html-details{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;margin-top:16px;overflow:hidden}.promo-html-details summary{color:var(--text-h);cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 14px;font-size:13px;font-weight:600}.promo-html-output{white-space:pre-wrap;word-break:break-word;border-top:1px solid var(--border);max-height:300px;margin:0;padding:16px;font-size:12px;line-height:1.6;overflow-y:auto}.promo-form{flex-direction:column;gap:14px;margin-bottom:20px;padding:16px;display:flex}.promo-form__title{color:var(--text-h);margin:0;font-size:15px}.promo-form__row{flex-direction:column;gap:6px;display:flex}.promo-form__label{color:var(--text-h);font-size:12px;font-weight:600}.promo-form__row input[type=text],.promo-form__row input[type=url],.promo-form__row textarea,.promo-form__row select{border:1px solid var(--border);background:var(--card-bg);width:100%;color:var(--text-h);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px}.promo-form__row input[type=text]:focus-visible,.promo-form__row input[type=url]:focus-visible,.promo-form__row textarea:focus-visible,.promo-form__row select:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.promo-form__align{gap:6px;display:flex}.promo-form__list{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.promo-form__list-item{align-items:flex-start;gap:6px;width:100%;display:flex}.promo-form__list-item--stacked{border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:stretch;padding:10px}.promo-form__list-item--stacked>.btn{align-self:flex-end}.promo-form__row-actions{gap:8px;display:flex}.promo-form__actions{gap:10px;display:flex}.promo-picker{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.promo-picker__dialog{background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;width:100%;max-width:760px;max-height:82vh;display:flex;overflow:hidden}.promo-picker__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.promo-picker__title{color:var(--text-h);font-size:14px;font-weight:700}.promo-picker__grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;padding:16px;display:grid;overflow-y:auto}.promo-picker__card{border:1px solid var(--border);background:var(--card-bg);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;padding:0;transition:border-color .12s,box-shadow .12s;display:flex;overflow:hidden}.promo-picker__card:hover{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent)}.promo-picker__card--current{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.promo-picker__card-preview{pointer-events:none;background:#f8f8f8;height:112px;padding:10px;display:block;overflow:hidden}.promo-picker__card-scale{transform-origin:0 0;width:240%;display:block;transform:scale(.42)}.promo-picker__card-label{color:var(--text-h);border-top:1px solid var(--border);padding:8px 12px;font-size:12px;font-weight:600;display:block}.marker-field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.richtext-input{border:1px solid var(--border);background:var(--card-bg);width:100%;color:var(--text-h);border-radius:8px;max-height:260px;padding:8px 12px;font-family:inherit;font-size:13px;line-height:1.6;overflow-y:auto}.richtext-input:focus-visible{border-color:var(--accent-hover);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);outline:none}.richtext-input--compact{flex:1;min-width:0;max-height:120px}.richtext-input:empty:before{content:attr(data-placeholder);opacity:.45;pointer-events:none}.richtext-input p,.richtext-input h4,.richtext-input ul,.richtext-input ol{margin:0 0 8px}.richtext-input>:last-child{margin-bottom:0}.richtext-input ul,.richtext-input ol{padding-left:20px}.richtext-input h4{font-size:14px;font-weight:800}.marker-toolbar{flex-wrap:wrap;gap:2px;display:flex}.marker-toolbar__btn{border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);cursor:pointer;border-radius:6px;padding:3px 8px;font-size:11px}.marker-toolbar__btn:hover{border-color:var(--accent-hover)}.promo-unused{border-color:var(--warn-border);margin-bottom:20px;padding:14px 16px}.promo-unused__title{color:var(--warn-text);margin:0 0 10px;font-size:13px}.promo-unused__chunk{border:1px solid var(--border);border-radius:8px;margin-bottom:10px;padding:10px 12px}.promo-unused__chunk pre{white-space:pre-wrap;word-break:break-word;max-height:140px;margin:0 0 8px;font-size:12px;line-height:1.5;overflow-y:auto}.promo-unused__assign{align-items:center;gap:8px;display:flex}.promo-unused__assign select{border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;padding:6px 10px;font-size:12px}@media (width<=640px){.app{padding:24px 16px 56px}.promo-preview{height:420px}.promo-canvas__bar{top:56px}.promo-canvas__bar-hint{display:none}.invite-form{flex-direction:column;align-items:stretch}.invite-form button{justify-content:center}.bulk-actions,.filecard__header{flex-wrap:wrap}.table-card{overflow-x:auto}.user-table{white-space:nowrap}.user-table__toolbar{flex-direction:column}}.contracts-nav{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:28px;padding-bottom:12px;display:flex}.contracts-nav__link{color:var(--text);border-radius:8px;padding:7px 12px;font-size:14px;font-weight:600;text-decoration:none}.contracts-nav__link:hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.contracts-nav__link--active{background:color-mix(in srgb, var(--accent) 22%, var(--card-bg));color:var(--text-h)}.new-contract__routes{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.new-contract__route{text-align:left;border:1px solid var(--border);background:var(--card-bg);cursor:pointer;font:inherit;color:inherit;border-radius:10px;flex-direction:column;gap:6px;padding:16px;display:flex}.new-contract__route:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card-bg))}.new-contract__route:disabled{cursor:not-allowed;opacity:.6}.new-contract__route strong{color:var(--text-h);font-size:15px}.new-contract__route span{opacity:.8;font-size:13px}.new-contract__route em{color:var(--accent);font-size:12px;font-style:normal}.new-contract__terms{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 4%, var(--card-bg));border-radius:8px;gap:4px;margin:6px 0 0;padding:10px 12px;list-style:none;display:grid}.new-contract__terms li{justify-content:space-between;gap:12px;font-size:13px;display:flex}.new-contract__terms li span{opacity:.75}.term-field--check{flex-direction:row;align-items:center;gap:8px}.panel{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:20px}.panel--danger{border-color:color-mix(in srgb, var(--error-text) 40%, var(--border));background:color-mix(in srgb, var(--error-text) 4%, var(--card-bg))}.panel__head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.panel h2{margin:0;font-size:16px}.panel__sub{color:var(--text);margin:4px 0 0;font-size:13px}.panel__section{color:var(--text-h);margin:24px 0 12px;font-size:14px}.panel__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.panel__actions--spread{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;margin-top:20px;padding-top:16px}.panel__more{margin-top:16px;font-size:14px}.panel__more summary{cursor:pointer;color:var(--text);font-weight:600}.btn--sm{padding:5px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.muted{color:color-mix(in srgb, var(--text) 65%, var(--bg))}.form-error{color:var(--error-text);margin:8px 0;font-size:14px}.notice{background:var(--ok-bg);border:1px solid var(--ok-border);color:var(--ok-text);border-radius:8px;margin:8px 0;padding:10px 12px;font-size:14px}.notice--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.tag{border:1px solid var(--border);background:var(--bg);text-transform:uppercase;letter-spacing:.03em;color:var(--text);vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.tag--warn,.tag--failed{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.tag--sent{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.banner{border:1px solid;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:14px;display:flex}.banner--danger{background:color-mix(in srgb, var(--error-text) 8%, var(--card-bg));border-color:color-mix(in srgb, var(--error-text) 35%, var(--border));color:var(--error-text)}.banner--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.banner--info{background:var(--card-bg);border-color:var(--border);color:var(--text-h)}.banner__actions{gap:8px;margin-left:auto;display:flex}.contracts-page__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.contracts-page__header h1{margin:0;font-size:24px}.contracts-page__count{color:var(--text);align-items:center;gap:12px;margin:4px 0 0;font-size:14px;display:flex}.contracts-page__export{color:color-mix(in srgb, var(--text) 65%, var(--bg));border-bottom:1px solid #0000;align-items:center;gap:5px;padding-bottom:1px;font-size:13px;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.contracts-page__export:hover{color:var(--text-h);border-bottom-color:currentColor}.contracts-page__clear{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-bottom:12px;padding:0;font-size:13px;font-weight:600}.contracts-search{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:6px 6px 6px 12px;display:flex}.contracts-search__icon{color:var(--text);flex-shrink:0}.contracts-search__input{font:inherit;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:6px 0;font-size:14px}.contracts-filters{flex-wrap:wrap;gap:10px 16px;margin-bottom:16px;display:flex}.contracts-filter{color:var(--text);flex-direction:column;gap:3px;font-size:12px;display:flex}.contracts-filter select,.contracts-filter input{font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;padding:6px 8px;font-size:13px}.contracts-filter--check{flex-direction:row;align-self:flex-end;align-items:center;gap:6px;padding-bottom:7px}.contracts-table-wrap{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow-x:auto}.contracts-table{border-collapse:collapse;width:100%;font-size:14px}.contracts-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px;font-size:12px}.contracts-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:12px 14px}.contracts-table tr:last-child td{border-bottom:none}.contracts-table__num{text-align:right;white-space:nowrap}.contracts-table__title{color:var(--text-h);font-weight:600;text-decoration:none;display:block}.contracts-table__title:hover{color:var(--accent)}.contracts-table__ref{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:12px;display:block}.contracts-pager{justify-content:center;align-items:center;gap:16px;margin-top:16px;font-size:14px;display:flex}.contracts-empty{text-align:center;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:48px 20px}.date-cell{white-space:nowrap;display:block}.date-cell small{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:11px;display:block}.date-cell--past{color:var(--error-text);font-weight:600}.date-cell--past small{color:color-mix(in srgb, var(--error-text) 80%, var(--bg))}.date-cell--soon{color:var(--warn-text);font-weight:600}.stage-pill{background:var(--bg);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.stage-pill--executed{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.stage-pill--negotiation,.stage-pill--approval,.stage-pill--signing{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.stage-pill--terminated,.stage-pill--expired,.stage-pill--declined{color:color-mix(in srgb, var(--text) 60%, var(--bg))}.contract-detail__back{margin-bottom:12px}.link-back{color:var(--text);align-items:center;gap:4px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.contract-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.contract-header h1{margin:2px 0 4px;font-size:24px}.contract-header__ref{letter-spacing:.05em;color:color-mix(in srgb, var(--text) 65%, var(--bg));margin:0;font-size:12px;font-weight:600}.contract-header__sub{margin:0;font-size:14px}.contract-header__side{flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.contract-header__stage{flex-direction:column;gap:3px;font-size:12px;display:flex}.contract-header__stage select{font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;padding:7px 10px;font-size:14px}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:20px;display:flex;overflow-x:auto}.tabs__tab{font:inherit;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 14px;font-size:14px;font-weight:600}.tabs__tab--active{color:var(--text-h);border-bottom-color:var(--accent)}.tabs__badge,.tabs__count{border-radius:999px;margin-left:6px;padding:0 6px;font-size:11px;line-height:17px;display:inline-block}.tabs__badge{background:var(--accent);color:var(--accent-text)}.tabs__count{background:var(--bg);border:1px solid var(--border)}.term-summary{color:var(--text-h);margin:0 0 16px;font-size:15px;line-height:1.6}.term-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px 24px;margin:0;display:grid}.term dt{text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb, var(--text) 70%, var(--bg));margin-bottom:2px;font-size:12px}.term dd{color:var(--text-h);margin:0;font-size:14px}.term--wide{grid-column:1/-1}.term__hint{text-align:center;background:var(--border);cursor:help;border-radius:50%;width:13px;height:13px;margin-left:4px;font-size:10px;line-height:13px;display:inline-block}.term-form{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px 20px;display:grid}.term-field{color:var(--text);flex-direction:column;gap:4px;font-size:12px;display:flex}.term-field--wide{grid-column:1/-1}.term-field input,.term-field select,.term-field textarea{font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;width:100%;padding:8px 10px;font-size:14px}.term-field__hint{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:11px}.term-form__check{grid-column:1/-1;align-items:center;gap:8px;font-size:14px;display:flex}.contract-notes{white-space:pre-wrap;margin:0;font-size:14px}.doc-list{margin:0;padding:0;list-style:none}.doc{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.doc:last-child{border-bottom:none}.doc__name{color:var(--text-h);font-weight:600}.doc__meta{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:12px;display:block}.doc__warn{color:var(--warn-text);margin-top:2px;font-size:12px;display:block}.doc__actions{flex-shrink:0;gap:6px;display:flex}.proposal{border:1px solid var(--border);background:var(--card-bg);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px;padding:14px;display:flex}.proposal--low{border-left:3px solid var(--warn-border)}.proposal__main{flex:1;min-width:0}.proposal__label{text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb, var(--text) 70%, var(--bg));margin-bottom:6px;font-size:12px}.proposal__values{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.proposal__current{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:14px;text-decoration:line-through}.proposal__input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;flex:auto;min-width:220px;max-width:100%;padding:6px 10px;font-size:14px;font-weight:600}.proposal__input--long{resize:vertical;white-space:pre-wrap;flex:100%;font-weight:500;line-height:1.45}.proposal__static{overflow-wrap:anywhere;flex:auto;min-width:0}.proposal__desc,.proposal__meta{color:var(--text);margin:4px 0;font-size:13px}.proposal__quote,.obligation__quote{border-left:2px solid var(--border);background:var(--bg);color:var(--text);border-radius:0 6px 6px 0;margin:8px 0 0;padding:8px 12px;font-size:13px;font-style:italic}.proposal__quote cite{color:color-mix(in srgb, var(--text) 65%, var(--bg));margin-top:4px;font-size:11px;font-style:normal;display:block}.proposal__quote--unverified{border-left-color:var(--warn-border);background:var(--warn-bg)}.proposal__quote--unverified cite{color:var(--warn-text)}.proposal__actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.confidence{letter-spacing:.03em;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:10px;display:inline-block}.confidence--high{background:var(--ok-bg);color:var(--ok-text)}.confidence--medium{background:var(--bg);border:1px solid var(--border)}.confidence--low{background:var(--warn-bg);color:var(--warn-text)}.inline-form{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-bottom:16px;padding-bottom:16px;display:flex}.inline-form input,.inline-form select{font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;flex:160px;min-width:0;padding:8px 10px;font-size:14px}.obligation,.task{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.obligation:last-child,.task:last-child{border-bottom:none}.obligation--overdue .obligation__title,.task--overdue strong{color:var(--error-text)}.obligation__title{color:var(--text-h);font-size:14px;font-weight:600}.obligation__desc,.obligation__meta{margin:4px 0 0;font-size:13px}.obligation__actions,.task__meta{flex-shrink:0;align-items:center;gap:8px;font-size:13px;display:flex}.task__check{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;display:flex}.task__contract{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:12px;display:block}.task--done{opacity:.6}.reminder-rules,.reminder-sends,.inbox-list,.ref-list,.value-list{margin:0;padding:0;font-size:14px;list-style:none}.inbox-list li,.ref-list li,.value-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.inbox-list li:last-child,.ref-list li:last-child,.value-list li:last-child{border-bottom:none}.ref-list__block{display:block}.ref-list__row{justify-content:space-between;align-items:center;gap:12px;display:flex}.audit{margin:0;padding:0;list-style:none}.audit__entry{border-bottom:1px solid var(--border);padding:10px 0;font-size:14px}.audit__entry:last-child{border-bottom:none}.audit__head time{float:right;color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:12px}.audit__changes{margin:6px 0 0;padding-left:18px;font-size:13px}.audit__field{font-weight:600}.audit__from{color:color-mix(in srgb, var(--text) 65%, var(--bg));text-decoration:line-through}.audit__to{color:var(--text-h);font-weight:600}.audit__note{color:var(--text);margin:4px 0 0;font-size:13px}.ask-modes{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:20px;display:grid}.ask-mode{text-align:left;border:1px solid var(--border);background:var(--card-bg);font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.ask-mode span{color:var(--text);font-size:13px}.ask-mode--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card-bg))}.ask-form{align-items:flex-end;gap:10px;margin-bottom:12px;display:flex}.ask-form textarea{font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);resize:vertical;border-radius:10px;flex:1;padding:12px 14px;font-size:15px}.ask-examples{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.ask-example{border:1px solid var(--border);background:var(--card-bg);font:inherit;color:var(--text);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px}.ask-example:hover:not(:disabled){border-color:var(--accent);color:var(--text-h)}.ask-example:disabled{opacity:.45;cursor:not-allowed}.ask-interpretation{color:var(--text-h);margin:0 0 16px;font-size:14px}.ask-interpretation span{text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb, var(--text) 65%, var(--bg));margin-right:8px;font-size:11px;display:inline-block}.ask-count{color:var(--text-h);margin:0 0 12px;font-weight:600}.ask-answer{white-space:pre-wrap;color:var(--text-h);font-size:15px;line-height:1.65}.ask-caveats{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-text);border-radius:8px;margin:16px 0 0;padding:10px 12px 10px 30px;font-size:13px}.ask-citations{margin-top:20px}.ask-citations h3{text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb, var(--text) 65%, var(--bg));margin:0 0 8px;font-size:13px}.ask-citation__note{margin-top:4px;font-size:12px;font-style:normal;display:block}.ask-sql{background:var(--bg);border:1px solid var(--border);white-space:pre;border-radius:8px;margin:8px 0 0;padding:12px;font-size:12px;overflow-x:auto}.ask-bars{margin:0;padding:0;list-style:none}.ask-bars li{grid-template-columns:minmax(120px,220px) 1fr auto;align-items:center;gap:12px;padding:5px 0;font-size:14px;display:grid}.ask-bars__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ask-bars__track{background:var(--bg);border-radius:999px;height:8px;overflow:hidden}.ask-bars__fill{background:var(--accent);border-radius:999px;height:100%;display:block}.ask-bars__value{font-variant-numeric:tabular-nums;color:var(--text-h);font-weight:600}.scope-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.scope-chip{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card-bg));font:inherit;color:var(--text-h);cursor:pointer;border-radius:999px;padding:5px 10px;font-size:13px}.scope-search{width:100%;font:inherit;border:1px solid var(--border);background:var(--card-bg);color:var(--text-h);border-radius:8px;padding:9px 12px;font-size:14px}.scope-list{max-height:260px;margin:8px 0 0;padding:0;list-style:none;overflow-y:auto}.scope-option{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 10px;display:block}.scope-option:hover{background:var(--bg)}.scope-option--on{background:color-mix(in srgb, var(--accent) 10%, var(--card-bg))}.scope-option strong{color:var(--text-h);font-size:14px;display:block}.scope-option span{color:color-mix(in srgb, var(--text) 65%, var(--bg));font-size:12px}.tiles{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:24px;display:grid}.tile{border:1px solid var(--border);background:var(--card-bg);color:var(--text);border-radius:12px;padding:16px;text-decoration:none;display:block}.tile:hover{border-color:var(--accent)}.tile__value{color:var(--text-h);font-size:28px;font-weight:600;line-height:1.1;display:block}.tile__label{margin-top:4px;font-size:13px;font-weight:600;display:block}.tile__hint{color:color-mix(in srgb, var(--text) 65%, var(--bg));margin-top:4px;font-size:12px;display:block}.tile--danger{border-color:color-mix(in srgb, var(--error-text) 40%, var(--border))}.tile--danger .tile__value{color:var(--error-text)}.tile--warn .tile__value{color:var(--warn-text)}.settings-nav{flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.settings-nav__item{border:1px solid var(--border);background:var(--card-bg);font:inherit;color:var(--text);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.settings-nav__item--active{background:var(--text-h);border-color:var(--text-h);color:var(--card-bg)}.field-editor{background:var(--bg);border-radius:8px;margin-top:10px;padding:12px}.field-editor__row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.field-editor__row input,.field-editor__row select{font:inherit;border:1px solid var(--border);background:var(--card-bg);border-radius:6px;flex:130px;min-width:0;padding:6px 8px;font-size:13px}.field-editor__check{flex-shrink:0;align-items:center;gap:5px;font-size:13px;display:flex}.field-editor__actions{gap:8px;margin-top:4px;display:flex}.member-picker{background:var(--bg);border-radius:8px;flex-wrap:wrap;gap:6px 16px;margin-top:8px;padding:10px;display:flex}.member-picker__item{align-items:center;gap:6px;font-size:13px;display:flex}.submit-form{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px 20px;display:grid}.submit-form>button{grid-column:1/-1;justify-self:start}.submit-done{max-width:560px}@media (width<=720px){.contract-header,.contracts-page__header,.panel__head{flex-direction:column;align-items:stretch}.ask-bars li{grid-template-columns:1fr auto}.ask-bars__track{display:none}}.stage-strip{counter-reset:stage;gap:2px;margin:0 0 20px;padding:0;list-style:none;display:flex;overflow-x:auto}.stage-strip__step{flex:1 1 0;min-width:104px}.stage-strip__step>button,.stage-strip__step>span{width:100%;font:inherit;color:color-mix(in srgb, var(--text) 65%, var(--bg));cursor:default;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;font-size:12px;display:flex;position:relative}.stage-strip__step>button{cursor:pointer;border-radius:8px}.stage-strip__step>button:hover{background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--text-h)}.stage-strip__step>:before{content:"";background:var(--border);z-index:0;height:2px;position:absolute;top:15px;left:0;right:0}.stage-strip__step:first-child>:before{left:50%}.stage-strip__step:last-child>:before{right:50%}.stage-strip__dot{background:var(--card-bg);border:2px solid var(--border);z-index:1;border-radius:50%;width:11px;height:11px;position:relative}.stage-strip__label{text-align:center;line-height:1.25}.stage-strip__step--done>:before{background:color-mix(in srgb, var(--accent) 45%, var(--border))}.stage-strip__step--done .stage-strip__dot{background:color-mix(in srgb, var(--accent) 45%, var(--card-bg));border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.stage-strip__step--current>button,.stage-strip__step--current>span{color:var(--text-h);font-weight:600}.stage-strip__step--current .stage-strip__dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent)}.stage-strip__step--terminal .stage-strip__label{font-style:italic}.stage-strip__step--terminal.stage-strip__step--current .stage-strip__dot{background:var(--text);border-color:var(--text);box-shadow:0 0 0 4px color-mix(in srgb, var(--text) 15%, transparent)}.contact{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.contact:last-child{border-bottom:none}.contact__name{color:var(--text-h);font-size:14px;font-weight:600}.contact__meta{color:color-mix(in srgb, var(--text) 70%, var(--bg));font-size:13px}.contact__meta a{color:inherit}.contact__actions{flex-shrink:0;gap:6px;display:flex}.reminder{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.reminder:last-of-type{border-bottom:none}.reminder__name{color:var(--text-h);font-size:14px;font-weight:600}.reminder__message{margin:4px 0;font-size:13px}.reminder__meta{color:color-mix(in srgb, var(--text) 70%, var(--bg));margin:4px 0 0;font-size:13px}.reminder-form{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:16px}.reminder-form>button{grid-column:1/-1;justify-self:start}.reminder-form__preview{color:color-mix(in srgb, var(--text) 70%, var(--bg));grid-column:1/-1;margin:0;font-size:13px}.reminder-form__preview strong{color:var(--text-h)}.reminder-form .approval-picker{grid-column:1/-1}.term-field__hint--warn{color:var(--error-text)}.checklist-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;font-size:14px;display:flex}.checklist-item p{margin:2px 0 0;font-size:13px}.submit-group{border:1px solid var(--border);border-radius:10px;grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px 20px;margin:0;padding:16px 18px 20px;display:grid}.submit-group legend{color:var(--text-h);padding:0 8px;font-size:13px;font-weight:600}.submit-group__hint{color:color-mix(in srgb, var(--text) 70%, var(--bg));grid-column:1/-1;margin:-4px 0 0;font-size:13px}.term-field__warn{color:var(--warn-text);font-size:12px}.link-button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.teams-manager__hint{color:color-mix(in srgb, var(--text) 72%, var(--bg));max-width:62ch;margin:-4px 0 14px;font-size:13px;line-height:1.5}.tournament{max-width:1180px}.tournament__header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.tournament__header h1{margin:0 0 6px}.tournament__header-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.tournament__header p{max-width:62ch;margin:0;font-size:14px}.tournament__generate{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0 24px;display:flex}.tournament-upload{flex-direction:column;gap:20px;display:flex}.tournament-slot__head{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.tournament-slot__head span{color:var(--text);opacity:.8;font-size:13px}.tournament-slot__drop{border:1px dashed var(--border);cursor:pointer;background:var(--bg);border-radius:12px;padding:18px;transition:border-color .12s,background .12s}.tournament-slot__drop:hover,.tournament-slot--active .tournament-slot__drop{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, var(--bg))}.tournament-slot__files{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tournament-slot__files li{align-items:center;gap:10px;font-size:14px;display:flex}.tournament-slot__files small{color:var(--text);opacity:.65}.tournament-slot__files button{cursor:pointer;color:var(--text);background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:18px;line-height:1}.tournament-slot__files button:hover{color:var(--error-text)}.tournament-slot__warning{color:var(--warn-text);margin:8px 0 0;font-size:13px}.tournament-upload__thumb img{border:1px solid var(--border);border-radius:8px;max-height:120px;display:block}.tournament-editor{flex-direction:column;gap:16px;display:flex}.tournament-editor__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tournament-editor__head h2{margin:0 0 4px}.tournament-editor__head p{margin:0;font-size:13px}.tournament-editor__actions{flex-shrink:0;gap:8px;display:flex}.tournament-editor__suggestion{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;display:flex}.tournament-editor__suggestion p{max-width:70ch;margin:4px 0 0;font-size:13px}.tournament-editor__canvas{border:1px solid var(--border);background-color:#fff;background-image:linear-gradient(45deg,#f0efe9 25%,#0000 25%),linear-gradient(-45deg,#f0efe9 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#f0efe9 75%),linear-gradient(-45deg,#0000 75%,#f0efe9 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:10px;overflow:hidden}.tournament-editor__canvas canvas{width:100%;height:auto;display:block}.tournament-editor__assets{flex-wrap:wrap;gap:8px;display:flex}.tournament-chip{border:1px solid var(--border);background:var(--card-bg);cursor:pointer;color:var(--text);border-radius:999px;align-items:center;gap:8px;max-width:220px;padding:6px 12px 6px 6px;font-size:13px;display:flex}.tournament-chip--on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card-bg));color:var(--text-h)}.tournament-chip img{object-fit:contain;background:var(--bg);border-radius:50%;flex-shrink:0;width:28px;height:28px}.tournament-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tournament-editor__controls{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end;gap:16px;padding-top:4px;display:grid}.tournament-slider{flex-direction:column;gap:6px;font-size:13px;display:flex}.tournament-slider span{color:var(--text-h);justify-content:space-between;gap:8px;font-weight:600;display:flex}.tournament-slider small{color:var(--text);opacity:.75;font-weight:400}.tournament-slider input{width:100%;accent-color:var(--accent)}.tournament-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.tournament-card{border:1px solid var(--border);background:var(--card-bg);border-radius:12px;flex-direction:column;gap:12px;padding:18px;display:flex}.tournament-card--awaiting{background:var(--bg);border-style:dashed}.tournament-card header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tournament-card h3{color:var(--text-h);margin:0;font-size:15px}.tournament-card__dims{color:var(--text);opacity:.7;white-space:nowrap;font-size:12px}.tournament-card__pending{color:var(--text);opacity:.85;margin:0;font-size:13px}.tournament-card__preview{border:1px solid var(--border);background:var(--bg);border-radius:8px;overflow:hidden}.tournament-card__preview img{width:100%;height:auto;display:block}.tournament-card__compress{align-self:flex-start}.tournament-variant{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:10px;display:flex}.tournament-variant__line{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.tournament-variant__note{color:var(--warn-text);margin:0;font-size:12px}.tournament-safe{color:var(--ok-text);font-weight:600}.tournament-unsafe{color:var(--warn-text);font-weight:600}.tournament-card__warnings{color:var(--warn-text);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:12px;display:flex}.btn--small{padding:4px 12px;font-size:13px}.tournament-slot__thumb{border:1px solid var(--border);background-color:#fff;background-image:linear-gradient(45deg,#f0efe9 25%,#0000 25%),linear-gradient(-45deg,#f0efe9 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#f0efe9 75%),linear-gradient(-45deg,#0000 75%,#f0efe9 75%);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px;border-radius:6px;flex-shrink:0;width:40px;height:40px;display:block;overflow:hidden}.tournament-slot__thumb img{object-fit:contain;width:100%;height:100%;display:block}.tournament-slot__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tournament-slot__files li{min-width:0}.tournament-slot__note{color:var(--text);opacity:.7;margin:8px 0 0;font-size:12px}.tournament-slider__reset{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:12px;font-weight:400;text-decoration:underline}.arrange{background:var(--bg);border:1px solid var(--border);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:10px;outline:none;width:100%;position:relative;overflow:hidden}.arrange:focus-visible{border-color:var(--accent)}.arrange__frame{box-shadow:0 0 0 1px var(--border);background-color:#fff;background-image:linear-gradient(45deg,#f0efe9 25%,#0000 25%),linear-gradient(-45deg,#f0efe9 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#f0efe9 75%),linear-gradient(-45deg,#0000 75%,#f0efe9 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:6px;position:absolute;overflow:hidden}.arrange__frame canvas{display:block}.arrange__safe{pointer-events:none;border-left:1px dashed color-mix(in srgb, var(--accent) 55%, transparent);border-right:1px dashed color-mix(in srgb, var(--accent) 55%, transparent);position:absolute;top:0;bottom:0}.arrange__safe-label{white-space:nowrap;letter-spacing:.02em;color:#fff;background:color-mix(in srgb, var(--accent) 78%, transparent);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:600;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.arrange__hit{cursor:grab;position:absolute}.arrange__hit:hover{outline:1px solid color-mix(in srgb, var(--accent) 45%, transparent)}.arrange__hit--locked{cursor:default;pointer-events:none}.arrange__sel{border:1px solid var(--accent);pointer-events:none;border-radius:2px;position:absolute}.arrange__sel .arrange__handle{pointer-events:auto}.arrange__handle{background:var(--card-bg);border:1.5px solid var(--accent);width:12px;height:12px;box-shadow:var(--shadow-sm);border-radius:3px;margin:-6px;position:absolute}.arrange__handle--nw{cursor:nwse-resize;top:0;left:0}.arrange__handle--ne{cursor:nesw-resize;top:0;left:100%}.arrange__handle--se{cursor:nwse-resize;top:100%;left:100%}.arrange__handle--sw{cursor:nesw-resize;top:100%;left:0}.tournament-chip__off{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-text);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:11px;font-style:normal}.tournament-editor__order{flex-direction:column;gap:6px;font-size:13px;display:flex}.tournament-editor__order>span{color:var(--text-h);font-weight:600}.tournament-editor__order>div{gap:8px;display:flex}.tournament-editor__hint{color:var(--text);opacity:.7;align-self:end;margin:0;font-size:12px}.tournament-editor__result{border-top:1px solid var(--border);padding-top:16px}.tournament-editor__result h3{color:var(--text-h);margin:0 0 10px;font-size:14px}.tournament-editor__result-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:10px;display:flex}.tournament-editor__result-head h3{margin:0}.tournament-tabs{flex-wrap:wrap;gap:6px;display:flex}.tournament-tab{border:1px solid var(--border);background:var(--card-bg);cursor:pointer;color:var(--text);border-radius:8px;flex-direction:column;align-items:flex-start;gap:1px;padding:5px 12px;font-size:13px;line-height:1.2;display:flex}.tournament-tab small{opacity:.65;font-size:11px}.tournament-tab--on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--card-bg));color:var(--text-h);font-weight:600}.notification-bell{position:relative}.notification-badge{background:var(--accent);min-width:17px;height:17px;color:var(--accent-text);text-align:center;box-shadow:0 0 0 2px var(--card-bg);border-radius:9px;padding:0 4px;font-size:10px;font-weight:600;line-height:17px;position:absolute;top:-5px;right:-5px}.notification-panel{gap:0;min-width:320px;max-width:380px;padding:0}.notification-panel__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.notification-panel__empty{color:color-mix(in srgb, var(--text) 72%, var(--bg));text-align:center;margin:0;padding:18px 12px;font-size:13px}.notification-list{max-height:60vh;margin:0;padding:0;list-style:none;overflow-y:auto}.notification-item{border:none;border-bottom:1px solid var(--border);text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.notification-item:hover{background:color-mix(in srgb, var(--accent) 8%, var(--card-bg))}.notification-item--unread{box-shadow:inset 3px 0 0 var(--accent)}.notification-item__title{color:var(--text-h);font-size:13px}.notification-item--unread .notification-item__title{font-weight:600}.notification-item__body,.notification-item__when{color:color-mix(in srgb, var(--text) 72%, var(--bg));font-size:12px}.reminder__actions{flex-shrink:0;gap:6px;display:inline-flex}.reminder-form__actions{align-items:center;gap:8px;display:flex}.versions{border-left:2px solid var(--border);margin-top:10px;padding-left:12px}.versions__list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.version__head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.version__name{color:var(--text-h);font-size:13px}.version__meta,.change-summary__caveat{color:color-mix(in srgb, var(--text) 72%, var(--bg));font-size:12px}.version__change{margin-top:6px}.version__actions{gap:6px;margin:6px 0;display:flex}.change-summary__headline{color:var(--text-h);margin:0 0 4px;font-size:13px}.change-summary__list{margin:0 0 4px;padding-left:18px;font-size:13px;line-height:1.5}.change-summary__caveat{margin:0}.diff__hunk{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.diff__row--insert{background:var(--ok-bg)}.diff__row--delete{background:color-mix(in srgb, var(--error-text) 10%, var(--card-bg))}.diff__num{text-align:right;width:3.5em;color:color-mix(in srgb, var(--text) 55%, var(--bg));-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);padding:1px 6px}.diff__mark{text-align:center;-webkit-user-select:none;user-select:none;width:1.5em;padding:1px 4px}.diff__text{white-space:pre-wrap;overflow-wrap:anywhere;padding:1px 6px}.tag--favours_us{background:var(--ok-bg);color:var(--ok-text)}.tag--favours_them{background:var(--warn-bg);color:var(--warn-text)}.tag--neutral{background:color-mix(in srgb, var(--text) 8%, var(--card-bg))}.contracts-body{align-items:flex-start;gap:20px;display:flex}.contracts-body__main{flex:1;min-width:0}.project-tree{border:1px solid var(--border);background:var(--card-bg);-webkit-user-select:none;user-select:none;border-radius:10px;flex:0 0 296px;max-height:calc(100vh - 88px);padding:10px 8px 12px;font-size:14px;position:sticky;top:68px;overflow-y:auto}.project-tree__head{z-index:1;border-bottom:1px solid var(--border);background:var(--card-bg);letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 62%, var(--bg));justify-content:space-between;align-items:center;margin-bottom:4px;padding:2px 6px 10px;font-size:11px;display:flex;position:sticky;top:0}.project-tree__new{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:12px}.project-tree__new:hover{background:color-mix(in srgb, var(--accent) 12%, var(--card-bg))}.project-tree ul{margin:0;padding:0;list-style:none}.tree-row{padding-right:4px;padding-left:calc(var(--depth) * 16px);border-radius:6px;align-items:center;min-height:32px;transition:background-color 80ms;display:flex;position:relative}.tree-row[data-depth]:not([data-depth="0"]):before{content:"";left:calc(var(--depth) * 16px + 9px);background:var(--border);width:1px;position:absolute;top:0;bottom:0}.tree-row:hover{background:color-mix(in srgb, var(--text) 6%, var(--card-bg))}.tree-row--selected{background:color-mix(in srgb, var(--text) 9%, var(--card-bg))}.tree-row--selected:after{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:2px;bottom:2px;left:0}.tree-row--drop{background:color-mix(in srgb, var(--accent) 26%, var(--card-bg));outline:1px dashed var(--accent);outline-offset:-1px}.tree-row__chevron{cursor:pointer;height:20px;color:color-mix(in srgb, var(--text) 62%, var(--bg));background:0 0;border:none;flex:0 0 20px;justify-content:center;align-items:center;padding:0;transition:transform .12s;display:inline-flex}.tree-row__chevron--leaf{cursor:default}.tree-row__chevron--open{transform:rotate(90deg)}.tree-row__label{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:9px;min-width:0;padding:4px 2px;font-size:14px;display:flex}.tree-row__label:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:3px}.tree-row__icon{color:color-mix(in srgb, var(--text) 55%, var(--bg));flex:none}.tree-row--selected .tree-row__icon{color:var(--accent)}.tree-row__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tree-row--selected .tree-row__name{font-weight:600}.tree-row__count{font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--text) 55%, var(--bg));background:color-mix(in srgb, var(--text) 8%, var(--card-bg));text-align:center;border-radius:9px;flex:none;min-width:20px;padding:1px 7px;font-size:11.5px}.tree-row:hover .tree-row__count,.tree-row:focus-within .tree-row__count{display:none}.tree-row--skeleton{pointer-events:none}.tree-skeleton{background:color-mix(in srgb, var(--text) 10%, var(--card-bg));border-radius:4px;height:9px;animation:1.1s ease-in-out infinite tree-skeleton-pulse}@keyframes tree-skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.tree-skeleton{animation:none}.tree-row,.tree-row__chevron{transition:none}}.tree-row__rename{flex:1;padding:1px 2px;display:flex}.tree-row__rename input{width:100%;font:inherit;padding:1px 4px;font-size:13px}.tree-row__actions{flex:none;gap:1px;display:none}.tree-row:hover .tree-row__actions,.tree-row:focus-within .tree-row__actions{display:flex}.tree-row__actions button{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;line-height:1;display:inline-flex}.tree-row__actions button:hover{background:color-mix(in srgb, var(--accent) 18%, var(--card-bg))}.tree-row__actions:before{content:""}.tree-add{padding:4px 4px 4px calc(var(--depth) * 16px + 20px);gap:5px;display:flex}.tree-add input{flex:1;min-width:0;font-size:13px}.project-tree__empty,.project-tree__hint{color:color-mix(in srgb, var(--text) 68%, var(--bg));padding:10px 8px;font-size:12.5px;line-height:1.5}.project-tree__hint{border-top:1px solid var(--border);margin-top:8px}.project-tree__notice{background:var(--ok-bg);color:var(--ok-text);border:1px solid var(--ok-border);border-radius:6px;margin:4px 8px;padding:5px 7px;font-size:12px}.filing-bar{z-index:5;background:color-mix(in srgb, var(--accent) 12%, var(--card-bg));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;padding:8px 12px;font-size:13px;display:flex;position:sticky;top:60px}.filing-bar__count{font-weight:600}.filing-bar__pick{align-items:center;gap:6px;display:inline-flex}.contracts-table__tick{text-align:center;width:30px;padding-right:0}.contracts-table__row--selected{background:color-mix(in srgb, var(--accent) 9%, var(--card-bg))}.report-caveat{color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:8px;margin:8px 0;padding:6px 10px;font-size:12px}@media (width<=820px){.contracts-body{flex-direction:column}.project-tree{flex:auto;width:100%;max-height:none;position:static}}.chip-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 10px;font-size:12px;display:inline-flex}.chip a{color:inherit}.chip button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0 4px;line-height:1}.project-picker{max-width:340px;margin-bottom:10px}.approval-round{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.approval-round__meta,.approval__when{color:color-mix(in srgb, var(--text) 72%, var(--bg));font-size:12px}.approval-round__note,.approval__comment{border-left:2px solid var(--border);margin:4px 0;padding-left:8px;font-size:13px}.approval-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.approval{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.approval__main{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.approval__who{color:var(--text-h);font-size:13px}.approval__actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:6px;max-width:320px;display:flex}.approval__actions textarea{width:100%}.approval-picker{border:1px solid var(--border);border-radius:8px;max-height:220px;margin:0 0 10px;padding:8px 10px;overflow-y:auto}.approval-picker__row{align-items:center;gap:8px;padding:3px 0;font-size:13px;display:flex}.approval-picker__order{background:var(--accent);min-width:18px;height:18px;color:var(--accent-text);text-align:center;border-radius:9px;margin-left:auto;font-size:11px;line-height:18px}.tag--pending,.tag--open{background:var(--warn-bg);color:var(--warn-text)}.tag--approved{background:var(--ok-bg);color:var(--ok-text)}.tag--declined{background:color-mix(in srgb, var(--error-text) 12%, var(--card-bg));color:var(--error-text)}.tag--skipped,.tag--cancelled{background:color-mix(in srgb, var(--text) 8%, var(--card-bg))}.inbox-actions{flex-shrink:0;gap:6px;display:inline-flex}.answer-table{margin:14px 0}.answer-table__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;font-size:13px;display:flex}.answer-table__sort{font:inherit;color:inherit;cursor:pointer;width:100%;text-align:inherit;background:0 0;border:none;padding:0}.contracts-page__actions{align-items:center;gap:8px;display:inline-flex}.reader{border:1px solid var(--border);border-radius:10px;margin-top:12px;overflow:hidden}.reader__bar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--text) 4%, var(--card-bg));justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.reader__bar-actions{gap:6px;display:inline-flex}.reader__body{align-items:stretch;gap:0;display:flex}.reader__text{white-space:pre-wrap;overflow-wrap:anywhere;flex:1;min-width:0;max-height:70vh;padding:14px 16px;font-size:13px;line-height:1.6;overflow-y:auto}.reader__side{border-left:1px solid var(--border);background:color-mix(in srgb, var(--text) 2%, var(--card-bg));flex:0 0 300px;max-height:70vh;padding:12px;overflow-y:auto}.reader__mark{background:color-mix(in srgb, var(--warn-bg) 80%, transparent);border-bottom:2px solid var(--warn-border);cursor:pointer}.reader__mark--active{background:color-mix(in srgb, var(--accent) 22%, var(--card-bg));border-bottom-color:var(--accent)}.comment{border:1px solid var(--border);background:var(--card-bg);border-radius:8px;margin-bottom:8px;padding:8px 10px;font-size:13px}.comment--active{border-color:var(--accent)}.comment__quote{border-left:2px solid var(--border);color:color-mix(in srgb, var(--text) 72%, var(--bg));margin:0 0 6px;padding-left:8px;font-size:12px}.comment__anchor-warning{color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:6px;margin:0 0 6px;padding:4px 6px;font-size:12px}.comment__body{white-space:pre-wrap;margin:0 0 4px}.comment__meta{color:color-mix(in srgb, var(--text) 72%, var(--bg));margin:0;font-size:12px}.comment__reply{border-left:2px solid var(--border);margin-top:8px;padding-left:10px}.comment__actions{gap:10px;margin-top:6px;font-size:12px;display:flex}.comment-form{border:1px solid var(--accent);background:var(--card-bg);border-radius:8px;margin-bottom:10px;padding:8px;position:relative}.comment-form--compact{border-color:var(--border);margin-top:8px}.comment-form textarea{width:100%;font-size:13px}.comment-form__actions{gap:6px;margin-top:6px;display:flex}.mention-list{border:1px solid var(--border);background:var(--card-bg);border-radius:6px;max-height:160px;margin:4px 0 0;padding:0;list-style:none;overflow-y:auto}.mention-list button{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;padding:5px 8px;font-size:13px;display:block}.mention-list button:hover{background:color-mix(in srgb, var(--accent) 10%, var(--card-bg))}@media (width<=820px){.reader__body{flex-direction:column}.reader__side{border-left:none;border-top:1px solid var(--border);flex:auto;max-height:none}}.pdf{background:color-mix(in srgb, var(--text) 14%, var(--bg));flex-direction:column;flex:1;align-items:center;gap:16px;min-width:0;max-height:70vh;padding:16px 0 24px;display:flex;overflow-y:auto}.pdf__loading{padding:24px}.pdf__page{background:#fff;flex:none;position:relative;box-shadow:0 2px 10px #0000002e}.pdf__page canvas{display:block}.pdf__page-number{color:color-mix(in srgb, var(--text) 60%, var(--bg));font-size:11px;position:absolute;bottom:-19px;right:2px}::highlight(joi-note){background-color:#ffe27880}::highlight(joi-note-active){background-color:color-mix(in srgb, var(--accent) 38%, transparent)}.reader__body:has(.pdf) .reader__side{background:var(--card-bg)}
