pico/scss/themes/default/_light.scss

239 lines
12 KiB
SCSS
Raw Normal View History

2022-10-23 10:47:50 +07:00
@use "sass:map";
2022-12-27 10:48:52 +07:00
@use "colors" as *;
2022-10-22 13:11:51 +07:00
@use "../../settings" as *;
2022-10-23 10:47:50 +07:00
@use "../../utils/box-shadow";
2022-10-22 11:44:10 +07:00
@use "../../utils/functions";
2022-09-11 16:54:41 +07:00
2021-07-02 16:54:41 +07:00
// Default: Light theme
2022-10-22 13:11:51 +07:00
@mixin theme {
#{$✨}background-color: #{$white};
2021-07-02 16:54:41 +07:00
2022-10-23 10:47:50 +07:00
// Text color
2022-12-26 11:35:56 +07:00
#{$✨}color: #{$zinc-750};
2021-07-02 16:54:41 +07:00
// Muted colors
2022-12-26 11:35:56 +07:00
#{$✨}muted-color: #{$zinc-550};
#{$✨}muted-border-color: #{mix($slate-100, $slate-50)};
2021-07-02 16:54:41 +07:00
// Primary colors
2022-12-26 11:35:56 +07:00
#{$✨}primary: #{$azure-550};
#{$✨}primary-hover: #{$azure-600};
#{$✨}primary-underline: #{rgba($azure-550, 0.5)};
#{$✨}primary-underline-hover: var(#{$}primary);
#{$✨}primary-background: #{$azure-550};
#{$✨}primary-background-hover: #{$azure-600};
#{$✨}primary-border: var(#{$}primary-background);
#{$✨}primary-border-hover: var(#{$}primary-background-hover);
#{$✨}primary-focus: #{rgba($azure-400, 0.25)};
2022-10-22 13:11:51 +07:00
#{$✨}primary-inverse: #{$white};
2021-07-02 16:54:41 +07:00
// Secondary colors
2022-12-26 11:35:56 +07:00
#{$✨}secondary: #{$slate-550};
#{$✨}secondary-hover: #{$slate-600};
#{$✨}secondary-underline: #{rgba($slate-550, 0.5)};
#{$✨}secondary-underline-hover: var(#{$}secondary);
#{$✨}secondary-background: #{$slate-550};
#{$✨}secondary-background-hover: #{$slate-600};
#{$✨}secondary-border: var(#{$}secondary-background);
#{$✨}secondary-border-hover: var(#{$}secondary-background-hover);
#{$✨}secondary-focus: #{rgba($slate-550, 0.25)};
2022-10-22 13:11:51 +07:00
#{$✨}secondary-inverse: #{$white};
2021-07-02 16:54:41 +07:00
// Contrast colors
2022-12-26 11:35:56 +07:00
#{$✨}contrast: #{$slate-900};
#{$✨}contrast-hover: #{$slate-950};
#{$✨}contrast-underline: #{rgba($slate-900, 0.5)};
#{$✨}contrast-underline-hover: var(#{$}secondary);
#{$✨}contrast-background: #{$slate-900};
#{$✨}contrast-background-hover: #{$black};
#{$✨}contrast-border: var(#{$}contrast-background);
#{$✨}contrast-border-hover: var(#{$}contrast-background-hover);
#{$✨}contrast-focus: #{rgba($slate-550, 0.25)};
2022-10-22 13:11:51 +07:00
#{$✨}contrast-inverse: #{$white};
2021-07-02 16:54:41 +07:00
2022-10-23 10:47:50 +07:00
// Box shadow
2022-12-26 11:35:56 +07:00
#{$✨}box-shadow: box-shadow.shadow($slate-500);
2021-07-02 16:54:41 +07:00
2022-10-23 10:47:50 +07:00
// Typography
@if map.get($modules, "content/typography") {
// Headings colors
2022-12-26 11:35:56 +07:00
#{$✨}h1-color: #{$zinc-800};
#{$✨}h2-color: #{$zinc-750};
#{$✨}h3-color: #{$zinc-700};
#{$✨}h4-color: #{$zinc-650};
#{$✨}h5-color: #{$zinc-600};
#{$✨}h6-color: #{$zinc-550};
2021-07-02 16:54:41 +07:00
2022-10-23 10:47:50 +07:00
// Highlighted text (<mark>)
#{$✨}mark-background-color: #{mix($amber-100, $amber-50)};
2022-12-26 11:35:56 +07:00
#{$✨}mark-color: #{$zinc-950};
2022-10-23 10:47:50 +07:00
// Inserted (<ins>) & Deleted (<ins>)
2022-12-26 11:35:56 +07:00
#{$✨}ins-color: #{$jade-600};
#{$✨}del-color: #{$red-650};
2022-10-23 10:47:50 +07:00
// Blockquote
#{$✨}blockquote-border-color: var(#{$}muted-border-color);
#{$✨}blockquote-footer-color: var(#{$}muted-color);
}
2019-11-27 15:31:49 +07:00
// Button
2022-10-23 10:47:50 +07:00
@if map.get($modules, "content/button") {
// To disable box-shadow, remove the var or set to '0 0 0 rgba(0, 0, 0, 0)'
// Don't use, 'none, 'false, 'null', '0', etc.
#{$✨}button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
#{$✨}button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
// Table
@if map.get($modules, "content/table") {
#{$✨}table-border-color: var(#{$}muted-border-color);
2022-12-26 11:35:56 +07:00
#{$✨}table-row-stripped-background-color: #{rgba($zinc-500, 0.0375)};
2022-10-23 10:47:50 +07:00
}
// Code
@if map.get($modules, "content/code") {
2022-12-26 11:35:56 +07:00
#{$✨}code-background-color: #{mix($slate-50, $white, 25%)};
2022-10-23 10:47:50 +07:00
#{$✨}code-color: var(#{$}muted-color);
2022-12-26 11:35:56 +07:00
#{$✨}code-kbd-background-color: var(#{$}color);
#{$✨}code-kbd-color: var(#{$}background-color);
2022-10-23 10:47:50 +07:00
}
2019-11-27 15:31:49 +07:00
// Form elements
2022-10-23 10:47:50 +07:00
@if map.get($modules, "forms/basics") {
2022-12-26 11:35:56 +07:00
#{$✨}form-element-background-color: #{mix($slate-50, $white, 25%)};
#{$✨}form-element-border-color: #{$slate-150};
#{$✨}form-element-color: #{$zinc-850};
2022-10-23 10:47:50 +07:00
#{$✨}form-element-placeholder-color: var(#{$}muted-color);
2022-12-26 11:35:56 +07:00
#{$✨}form-element-active-background-color: #{$white};
#{$✨}form-element-active-border-color: var(#{$}primary-border);
#{$✨}form-element-focus-color: var(#{$}primary-border);
#{$✨}form-element-disabled-background-color: var(#{$}form-element-background-color);
#{$✨}form-element-disabled-border-color: var(#{$}form-element-border-color);
2022-10-23 10:47:50 +07:00
#{$✨}form-element-disabled-opacity: 0.5;
2022-12-26 11:35:56 +07:00
#{$✨}form-element-invalid-border-color: #{$red-600};
#{$✨}form-element-invalid-active-border-color: #{$red-650};
#{$✨}form-element-invalid-focus-color: var(#{$}form-element-invalid-active-border-color);
#{$✨}form-element-valid-border-color: #{$jade-500};
#{$✨}form-element-valid-active-border-color: #{$jade-550};
#{$✨}form-element-valid-focus-color: var(#{$}form-element-valid-active-border-color);
// Focus for buttons, radio and select
2022-12-26 13:36:41 +07:00
input:is(
[type="submit"],
[type="button"],
[type="reset"],
[type="checkbox"],
[type="radio"],
[type="file"]
) {
2022-12-26 11:35:56 +07:00
#{$✨}form-element-focus-color: var(#{$}primary-focus);
}
2022-10-23 10:47:50 +07:00
}
2019-11-27 15:31:49 +07:00
2021-07-02 16:54:41 +07:00
// Switch (input[type="checkbox"][role="switch"])
2022-10-23 10:47:50 +07:00
@if map.get($modules, "forms/checkbox-radio-switch") {
2022-12-26 11:35:56 +07:00
#{$✨}switch-background-color: #{$slate-200};
2022-10-23 10:47:50 +07:00
#{$✨}switch-color: var(#{$}primary-inverse);
2022-12-26 11:35:56 +07:00
#{$✨}switch-checked-background-color: var(#{$}primary-background);
2022-10-23 10:47:50 +07:00
}
2021-07-02 16:54:41 +07:00
// Range (input[type="range"])
2022-10-23 10:47:50 +07:00
@if map.get($modules, "forms/input-range") {
2022-12-26 11:35:56 +07:00
#{$✨}range-border-color: #{$slate-100};
#{$✨}range-active-border-color: #{$slate-200};
2022-10-23 10:47:50 +07:00
#{$✨}range-thumb-border-color: var(#{$}background-color);
2022-12-26 11:35:56 +07:00
#{$✨}range-thumb-color: var(#{$}secondary-background);
#{$✨}range-thumb-hover-color: var(#{$}secondary-background-hover);
2022-10-23 10:47:50 +07:00
#{$✨}range-thumb-active-color: var(#{$}primary);
}
2021-07-02 16:54:41 +07:00
// Accordion (<details>)
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/accordion") {
#{$✨}accordion-border-color: var(#{$}muted-border-color);
#{$✨}accordion-active-summary-color: var(#{$}primary);
#{$✨}accordion-close-summary-color: var(#{$}color);
#{$✨}accordion-open-summary-color: var(#{$}muted-color);
}
2021-07-02 16:54:41 +07:00
// Card (<article>)
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/card") {
#{$✨}card-background-color: var(#{$}background-color);
#{$✨}card-border-color: var(#{$}muted-border-color);
#{$✨}card-box-shadow: var(#{$}box-shadow);
2022-12-26 11:35:56 +07:00
#{$✨}card-sectionning-background-color: #{mix($slate-50, $white, 25%)};
2022-10-23 10:47:50 +07:00
}
2021-07-02 16:54:41 +07:00
2022-01-23 17:03:03 +07:00
// Dropdown (<details role="list">)
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/dropdown") {
2022-12-26 11:35:56 +07:00
#{$✨}dropdown-background-color: #{$white};
#{$✨}dropdown-border-color: #{$slate-50};
2022-10-23 10:47:50 +07:00
#{$✨}dropdown-box-shadow: var(#{$}box-shadow);
#{$✨}dropdown-color: var(#{$}color);
2022-12-26 11:35:56 +07:00
#{$✨}dropdown-hover-background-color: #{mix($slate-50, $white)};
2022-10-23 10:47:50 +07:00
}
// Loading ([aria-busy=true])
@if map.get($modules, "components/loading") {
#{$✨}loading-spinner-opacity: 0.5;
}
2022-01-23 17:03:03 +07:00
// Modal (<dialog>)
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/modal") {
2022-12-26 11:35:56 +07:00
#{$✨}modal-overlay-background-color: #{rgba($slate-50, 0.7)};
2022-10-23 10:47:50 +07:00
}
2021-07-02 16:54:41 +07:00
// Progress
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/progress") {
2022-12-26 11:35:56 +07:00
#{$✨}progress-background-color: #{$slate-100};
#{$✨}progress-color: var(#{$}primary-background);
2022-10-23 10:47:50 +07:00
}
2021-07-02 16:54:41 +07:00
// Tooltip ([data-tooltip])
2022-10-23 10:47:50 +07:00
@if map.get($modules, "components/tooltip") {
2022-12-26 11:35:56 +07:00
#{$✨}tooltip-background-color: var(#{$}contrast-background);
2022-10-23 10:47:50 +07:00
#{$✨}tooltip-color: var(#{$}contrast-inverse);
}
// Checkboxes icon
@if map.get($modules, "forms/checkbox-radio-switch") {
#{$✨}icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($white)}' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
#{$✨}icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($white)}' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
}
// Chevron icons
2022-12-26 11:35:56 +07:00
@if map.get($modules, "forms/basics") or
2022-10-23 10:47:50 +07:00
map.get($modules, "components/accordion") or
map.get($modules, "components/dropdown")
{
2022-12-26 11:35:56 +07:00
#{$✨}icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($zinc-400)}' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
#{$✨}icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($white)}' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
#{$✨}icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($white)}' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
2022-10-23 10:47:50 +07:00
}
// Datetime icons
2022-12-26 11:35:56 +07:00
@if map.get($modules, "forms/input-date") {
#{$✨}icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($zinc-400)}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
#{$✨}icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($zinc-400)}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
2022-10-23 10:47:50 +07:00
}
// Form validation icons
2022-12-26 11:35:56 +07:00
@if map.get($modules, "forms/basics") {
#{$✨}icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($jade-500)}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
#{$✨}icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($red-600)}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
2022-10-23 10:47:50 +07:00
}
// Search icon
@if map.get($modules, "forms/input-search") {
2022-12-26 11:35:56 +07:00
#{$✨}icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($zinc-400)}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
2022-10-23 10:47:50 +07:00
}
// Close icon
@if map.get($modules, "components/modal") {
2022-12-26 11:35:56 +07:00
#{$✨}icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='#{functions.display-rgb($zinc-400)}' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
2022-10-23 10:47:50 +07:00
}
2022-10-15 23:22:12 +07:00
2022-06-12 12:35:03 +02:00
// Document
color-scheme: light;
2019-11-27 15:31:49 +07:00
}