/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
@use './core' as *;

$host-tokens: [height width];

//
// Host
//

:host {
  @include tokens($includes: $host-tokens);
}

:host {
  @include host;
}

:host([hidden]) {
  display: none;
}

//
// Base
//

.forge-scaffold {
  @include tokens($excludes: $host-tokens);
}

.forge-scaffold {
  @include base;
}

.header {
  @include header;
}

.body {
  @include body;
}

//
// Slotted
//

::slotted(*) {
  @include slotted-base;
}

::slotted([slot=left]) {
  @include left;
}

::slotted([slot=right]) {
  @include right;
}

::slotted([slot=body-left]) {
  @include body-left;
}

::slotted([slot=body-right]) {
  @include body-right;
}

::slotted([slot=body-header]) {
  @include body-header;
}

::slotted([slot=body]) {
  @include body-inner;
}

::slotted([slot=body-footer]) {
  @include body-footer;
}

::slotted([slot=footer]) {
  @include footer;
}

::slotted([slot=left]),
::slotted([slot=right]),
::slotted([slot=body-left]),
::slotted([slot=body]),
::slotted([slot=body-right]) {
  @include scrollable;
}

//
// Viewport
//

:host([viewport]) {
  @include override(height, 100dvh, value);
  @include override(width, 100dvw, value);
}
