Files
SGF/resources/css/tempo-theme.css
T
2026-11-02 08:06:45 +02:00

61 lines
5.1 KiB
CSS

/* SGF presentation aligned with the public InvesteMoz/Tempo stylesheet.
No external fonts, assets, services or application dependencies. */
:root{
--tempo-ink:#171717;--tempo-muted:#64748b;--tempo-line:#e2e8f0;
--tempo-canvas:#f8fafc;--tempo-paper:#fff;--tempo-dark:#090909;
--tempo-accent:#ed1c24;--tempo-accent-strong:#b91c1c;--tempo-accent-soft:#fef2f2;
font-family:'Instrument Sans','Segoe UI',system-ui,sans-serif;
color:var(--tempo-ink);background:var(--tempo-canvas);
}
button{color:var(--tempo-ink);border-color:var(--tempo-line);min-height:42px;border-radius:8px;transition:background-color .15s,border-color .15s}
button:hover{background:#f1f5f9;border-color:#cbd5e1}
button.primary,.invoice-pdf-link{background:var(--tempo-accent);border-color:var(--tempo-accent);color:white}
button.primary:hover,.invoice-pdf-link:hover{background:var(--tempo-accent-strong);border-color:var(--tempo-accent-strong)}
input,select,textarea{color:var(--tempo-ink);border-color:#cbd5e1;border-radius:8px}
input[readonly]{background:#f8fafc}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #ed1c2440;outline-offset:2px}
.muted,.help,footer{color:var(--tempo-muted)}
.eyebrow{color:#64748b;letter-spacing:.12em}
.workspace :is(h1,h2,h3,h4){color:var(--tempo-ink)}
.sidebar,.navigation-drawer[open]{background:var(--tempo-dark);color:white}
.sidebar{border-right:1px solid #ffffff14}
.sidebar .brand{letter-spacing:.09em;border-left:3px solid var(--tempo-accent);padding-left:12px}
.sidebar-label{color:#94a3b8}
.sidebar nav .navigation-heading{color:#e2e8f0;font-weight:600}
.sidebar nav .navigation-heading:hover{background:#ffffff0d}
.sidebar nav .navigation-item{color:#cbd5e1}
.sidebar nav .navigation-item:hover{background:#ffffff0d;color:white}
.sidebar nav .navigation-item.active{background:#ffffff10;color:white;border-left-color:var(--tempo-accent)}
.sidebar-bottom{border-top:1px solid #ffffff1a;margin-top:24px;padding-top:22px}
.sidebar-bottom small{color:#94a3b8}.sidebar-bottom button{border-color:#ffffff30;color:#e2e8f0}
.sidebar-bottom button:hover{background:#ffffff0d}.sidebar button:focus-visible{outline-color:#fb7185}
.workspace>header{background:white;border-bottom:1px solid var(--tempo-line);box-shadow:0 2px 8px #0f172a05;gap:12px}
.workspace header .muted{color:var(--tempo-muted)}
.local-badge{color:#475569;border-color:var(--tempo-line);background:#f8fafc}
.workspace-safety,.home-notice{background:#fffbeb;border-color:#fde68a;color:#854d0e}
.context-card{background:white;border-color:var(--tempo-line);border-radius:10px;margin-bottom:28px;box-shadow:0 1px 2px #0f172a03}
.context-card p{color:var(--tempo-muted)}
.panel{background:var(--tempo-paper);border-color:var(--tempo-line);border-radius:10px;box-shadow:0 1px 3px #0f172a04}
.page-title{margin:24px 0}.page-title h1{letter-spacing:-.035em}
.home-work-grid .panel{border-top:3px solid #171717}
.home-shortcuts{gap:10px}.home-shortcuts button{background:#fff;border-color:var(--tempo-line);font-weight:500}
.home-shortcuts button:hover{background:var(--tempo-accent-soft);border-color:#fecaca;color:var(--tempo-accent-strong)}
.home-context dt{color:var(--tempo-muted)}
th{background:#f8fafc;color:#475569}th,td{border-color:var(--tempo-line);line-height:1.6}td small{color:var(--tempo-muted)}
.unit-list li{border-color:var(--tempo-line)}
.drawer-close{background:#262626;color:white;border-color:#525252}
.login-layout>aside{background:var(--tempo-dark);border-top:5px solid var(--tempo-accent)}
.login-layout>aside p{color:#cbd5e1}.login-layout>aside small{color:#94a3b8}
.login-layout>aside .brand{color:white}.login-card .eyebrow{color:var(--tempo-accent-strong)}
@media(prefers-reduced-motion:reduce){button{transition:none}}
/* Modular shell: general options and the active module have separate landmarks. */
.module-navigation{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #d9e1e8}
.module-topbar,.module-menu{display:flex;align-items:center;gap:1rem;padding:.7rem 1.5rem;flex-wrap:wrap}
.module-topbar{justify-content:space-between}.module-topbar nav{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.module-topbar label{display:flex;align-items:center;gap:.7rem;margin:0}.module-topbar select{min-width:180px}
.module-menu{background:#f0f4f7}.module-menu>strong{color:#164f4b}.module-menu details{position:relative}
.module-menu summary{cursor:pointer;padding:.5rem}.module-menu details>div{position:absolute;top:100%;left:0;background:#fff;box-shadow:0 6px 24px #1232;min-width:240px;max-height:65vh;overflow:auto;padding:.5rem}
.module-menu details button{display:block;width:100%;text-align:left;margin:.2rem 0}.module-menu [aria-current=page]{background:#e1efed;font-weight:700}
.context-transition-backdrop{position:fixed;inset:0;background:#10233299;z-index:100;display:grid;place-items:center;padding:1rem}.context-transition-dialog{max-width:580px;max-height:90vh;overflow:auto}
@media(max-width:700px){.module-topbar,.module-menu{padding:.6rem}.module-topbar nav{width:100%}.module-menu details>div{position:fixed;left:1rem;right:1rem;top:auto;min-width:0}.module-topbar .topbar-account{display:flex}}