/* One rounded ("soft") look across the whole site, matching the Tools collection.
   Loaded last on every page. The first two blocks use :where(), which has no specificity, so they only give a
   corner to elements that never set one; a corner chosen on purpose elsewhere always wins.
   Kept square on purpose: sheet and table cells, the schedule calendar grid, full-height app frames (side panels,
   rails, command bars, pasteboards) and anything a person designs themselves (dashboard pages and widgets,
   training slides). */
:root{--soft-control:10px;--soft-card:16px;--soft-menu:12px}

/* Controls: buttons, text boxes and dropdowns. */
:where(button,select,textarea,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),a[class*=button],.button){border-radius:var(--soft-control)}

/* Cards, panels, dialogs and menus. */
/* Sections and articles are left alone here: many are rows or cells with divider lines. Card ones are named below. */
:where(fieldset,details,dialog,[role=dialog],[role=menu],[role=listbox],[role=alertdialog]){border-radius:var(--soft-card)}
:where([role=menu],[role=listbox]){border-radius:var(--soft-menu)}

/* Stay square: cells, calendar grids, app frames and designed content. Also zero specificity, listed after the
   defaults so they take precedence over them only. */
:where(td,th,table,thead,tbody,tr,.user-card,.employee-card,.training-tabs button,.fb-tabs button,.fs-filters button,.editor-tabs button,.asset-tabs button,[role=tab],.db-sheet-table *,.builder-cell,.builder-day,.builder-corner,.builder-week,.db-canvas,.db-canvas *,.db-view-pages *,.db-print-page *,.page-canvas,.page-canvas *,.course-stage *,.db-pasteboard,.pasteboard,.db-center,.grid-rail,.db-rail,.canvas-toolbar,.command-bar,.db-commandbar,.db-filmstrip,.filmstrip-wrap,.db-canvas-head,.fb-stage,.fb-device-bar,.asset-panel,.properties-panel,.builder-tools,.builder-properties,.skip-link){border-radius:0}

/* Boxes the site-wide audit found square or nearly square, named directly so they follow the same look. */
.user-list,.employee-list,.logo-menu-slot,.unassigned-panel,.privacy-note,.assistant-state,.fb-field-list,.track-assignment-card,.department-card,.staffing-card,.attendance-admin-panel,.turnover-method,.schedule-empty,.schedule-toolbar,.audrey-usage,.audrey-gaps,.training-type-report,.track-readiness-hero,.logo-menu-editor,.assistant-guide,.assistant-workspace{border-radius:var(--soft-card)}
.org-person,.kl-hook,.prompt-example,.section-collapse,.secondary-button,.primary-button,.fb-save,.fb-add-bottom,.fb-header-logo-action,#fb-new,#fb-edit-existing,#fb-template,#fb-remove-all,#fb-add-all,#fb-add-column,#fb-title,#fb-description,#fb-page,#fb-visibility,#duplicate-page,#delete-page,#zoom-out,#zoom-in,#toggle-grid,#page-transition,#db-open-widgets{border-radius:var(--soft-control)}
.brand-logo-thumb,.db-brand-logo-thumb,.template-thumb{border-radius:8px}
#admin-profile-attendance-year,#employee-status-filter,#user-search,#department-filter,#employee-search,#training-type-select,#kl-search,#kl-location,#schedule-start,#logo-menu-choice{border-radius:var(--soft-control)}

/* Training Creator and the logo menu editor used 5px controls; they follow the shared control corner too. */
.studio-shell :is(.command-bar button,.command-bar select,.zoom-control button,.inspector-actions button,.page-actions button,.background-mode button,.remove-background,.course-lifecycle button,.preview-dialog footer button,.properties-panel>form>button,.template-thumb){border-radius:var(--soft-control)}
.logo-menu-editor :is(input,select,textarea),#schedule-builder-link{border-radius:var(--soft-control)}
/* Public risk assessment cards; the hero clips its coloured score panel to the rounded corner. */
.risk-public-hero,.risk-public-metrics,.risk-public-section,.risk-public-weather,.risk-public-response,.risk-public-embed,.risk-public-note{border-radius:var(--soft-card)}
.risk-public-hero{overflow:hidden}

/* Split Share buttons (button plus arrow): the container is rounded and clips its two square halves. Their menus open in a fixed layer, so clipping does not cut them off. */
.db-share-split,.grid-share-split{border-radius:var(--soft-control);overflow:hidden}
.kl-hook-col>h3{border-radius:var(--soft-control)}

/* One selection ring across the site. Several pages drew their own focus outline in other blues or navy; this gives
   every ring the same colour, width and spacing as the site-wide indicator in site-selection.css. Sheet cells,
   designed content, the navy rails (white ring) and underlined tabs keep their own treatment. */
:is(button,a[href],summary,select,input,textarea,[role=button],[role=switch],[tabindex]:not([tabindex="-1"])):focus:not(:is([role=tab],[class*=tabs]>*,.fs-filters button,.desktop-nav-link,.desktop-nav-trigger,.mobile-menu-direct,input[type=checkbox],input[type=radio],.db-sheet-table *,.db-canvas *,.page-canvas *,.course-stage *,.db-rail *,.grid-rail *,.pf-video-bar *)){outline-color:#1f7f8f!important;outline-offset:2px!important;outline-width:2px!important}
