:root{--bg:#000;--bg-secondary:#0a0a0a;--bg-elevated:#111;--text:#fff;--text-muted:#888;--border:#222;--accent:#008038;--accent-hover:#00a048;--accent-muted:#00803826;--pause:#c33;--pause-hover:#e04444;--pause-yellow:#d4a017;--font:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-weight:300;--radius:0;--radius-sm:8px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none;width:100%;font-size:16px;overflow-x:hidden}body{font-family:var(--font);font-weight:var(--font-weight);background:var(--bg);color:var(--text);overscroll-behavior:none;touch-action:manipulation;width:100%;max-width:100%;min-height:100dvh;line-height:1.5;position:relative;overflow-x:hidden}#app{width:100%;max-width:640px;margin-inline:auto;padding:clamp(3rem,8vw,5rem) clamp(1.5rem,5vw,3rem) 6rem;overflow-x:hidden}.app-header{flex-direction:column;gap:1.25rem;margin-bottom:clamp(2.5rem,6vw,4rem);display:flex}.app-header__top{border-bottom:1px solid var(--border);padding-bottom:1.5rem}.app-header h1{letter-spacing:-.02em;font-size:clamp(2.31438rem,6.6125vw,3.30625rem);font-weight:300;line-height:1.1}.app-header .eyebrow{text-transform:uppercase;letter-spacing:.26em;color:var(--accent);margin-bottom:.5rem;font-size:clamp(.625rem,1.5vw,.75rem)}.month-nav{justify-content:center;align-items:center;gap:.75rem;display:flex}.month-nav span{color:var(--text);text-align:center;letter-spacing:-.01em;min-width:8rem;font-size:clamp(1.35rem,3.375vw,1.6875rem)}.month-nav__btn{color:var(--text-muted);font-family:var(--font);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.5rem;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:300;line-height:1;transition:color .15s;display:inline-flex}.month-nav__btn:hover{color:var(--accent)}.main-grid{grid-template-columns:1fr;gap:clamp(3rem,8vw,6rem);width:100%;min-width:0;display:grid}section{min-width:0;padding:0}section h2{letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase;margin-bottom:1.5rem;font-size:.6875rem;font-weight:500}label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-direction:column;gap:.375rem;font-size:.75rem;display:flex}input,textarea{color:var(--text);font-family:var(--font);background:0 0;border:none;border-radius:0;width:100%;padding:.5rem 0;font-size:clamp(.9375rem,2vw,1rem);transition:color .15s}input:focus,textarea:focus{color:var(--accent);outline:none}textarea{resize:vertical;min-height:3rem}.stamp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;width:100%;margin-bottom:1rem;display:grid}.btn.btn-stamp{border-radius:var(--radius-sm);background:var(--bg-elevated);width:100%;min-height:44px;color:var(--text);cursor:pointer;border:none;justify-content:center;align-items:center;padding:1.25rem .75rem;font-size:clamp(.8125rem,2vw,.875rem);transition:background .15s,color .15s;display:flex}.btn.btn-stamp:hover:not(:disabled):not(.is-kommen):not(.is-pause):not(.is-gehen){background:var(--accent-muted)}.btn.btn-stamp:disabled{opacity:.35;cursor:not-allowed}.btn.btn-stamp.is-kommen{background:var(--accent);color:var(--text)}.btn.btn-stamp.is-kommen:hover:not(:disabled){background:var(--accent-hover)}.btn.btn-stamp.is-pause{background:var(--pause-yellow);color:var(--text)}.btn.btn-stamp.is-gehen{background:var(--pause);color:var(--text)}.btn.btn-stamp.is-gehen:hover:not(:disabled){background:var(--pause-hover)}.today-date{letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.125rem,3vw,1.375rem);font-weight:300}.today-status{flex-direction:column;align-items:flex-start;gap:.75rem;min-height:3.5rem;margin-bottom:1.25rem;padding:1rem 0;display:flex}.today-status__clock{flex-direction:column;gap:.375rem;width:100%;display:flex}.status-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:.6875rem}.live-clock{font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--accent);max-width:100%;font-size:clamp(2.5rem,8vw,4rem);font-weight:300;line-height:1;overflow:hidden}.live-clock.is-pausing,.live-clock.is-idle{color:var(--text-muted)}.status-idle{color:var(--text-muted);font-size:.875rem}.status-times{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:clamp(1.25rem,3vw,1.5rem)}.name-label{text-align:left;width:100%;max-width:100%}.btn{font-family:var(--font);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 0;font-size:.8125rem;font-weight:300;transition:color .15s,opacity .15s,border-color .15s;display:inline-flex}.btn:active:not(:disabled){opacity:.7}.btn-primary{color:var(--text);background:0 0}.btn-primary:hover:not(:disabled){color:var(--text);opacity:.7}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{color:var(--text-muted);background:0 0;border:none;padding:.5rem 0;font-size:.75rem}.btn-ghost:hover{color:var(--text)}.entry-list{flex-direction:column;list-style:none;display:flex}.entry-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:1rem 0;display:grid}.entry-date{letter-spacing:-.01em;font-size:clamp(.9375rem,2vw,1rem);font-weight:300}.entry-times{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.entry-hours{font-variant-numeric:tabular-nums;color:var(--text);text-align:right;min-width:3.5rem;font-size:clamp(.9375rem,2vw,1.0625rem);font-weight:300}.entry-note{color:var(--text-muted);overflow-wrap:anywhere;word-break:break-word;grid-column:1/-1;margin-top:.25rem;padding-top:.25rem;font-size:.8125rem}.empty-state{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.875rem}.summary-bar{justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem 0;display:flex}.summary-bar .label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:.6875rem}.summary-bar .total{font-variant-numeric:tabular-nums;color:var(--accent);letter-spacing:-.02em;font-size:clamp(1.5rem,4vw,2rem);font-weight:300}.report-section{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:0;display:flex}.report-section p{color:var(--text-muted);max-width:32rem;font-size:clamp(.875rem,2vw,1rem)}.report-status{min-height:1.25rem;font-size:.8125rem}.report-status.error{color:var(--pause)}.site-footer{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-top:clamp(3rem,8vw,5rem);padding-top:1.5rem;display:flex}.site-footer nav{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.75rem;font-size:.75rem;display:flex}.site-footer nav a{color:var(--text-muted);text-decoration:none;transition:color .15s}.site-footer nav a:hover{color:var(--accent)}.site-footer nav span{color:var(--border)}.consent-banner{z-index:1000;-webkit-backdrop-filter:blur(12px)saturate(160%);backdrop-filter:blur(12px)saturate(160%);background:#0a0a0aeb;padding:clamp(1rem,3vw,1.5rem);position:fixed;inset:auto 0 0}@supports not ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){.consent-banner{background:var(--bg-secondary)}}.consent-banner__inner{flex-direction:column;gap:1rem;max-width:640px;margin:0 auto;display:flex}@media (width>=768px){.consent-banner__inner{flex-direction:row;justify-content:space-between;align-items:center}}.consent-banner__text{color:var(--text-muted);max-width:40rem;font-size:clamp(.8125rem,2vw,.875rem);line-height:1.6}.consent-banner__text a{color:var(--accent);text-decoration:none}.consent-banner__text a:hover{text-decoration:underline}.consent-banner__actions{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.legal-page{overflow-wrap:anywhere;width:100%;max-width:640px;margin-inline:auto;overflow-x:hidden}.legal-page__header{border-bottom:1px solid var(--border);margin-bottom:clamp(2rem,5vw,3rem);padding-bottom:1.5rem}.legal-page__header h1{letter-spacing:-.02em;font-size:clamp(1.75rem,5vw,2.25rem);font-weight:300;line-height:1.2}.legal-page__header .eyebrow{text-transform:uppercase;letter-spacing:.26em;color:var(--accent);margin-bottom:.75rem;font-size:clamp(.625rem,1.5vw,.75rem)}.legal-page section{margin-bottom:2rem;padding:0}.legal-page section h2{letter-spacing:-.01em;color:var(--text);text-transform:none;margin-bottom:.75rem;font-size:clamp(.9375rem,2.5vw,1.0625rem);font-weight:500}.legal-page section p,.legal-page section li{color:var(--text-muted);margin-bottom:.75rem;font-size:clamp(.875rem,2vw,1rem);line-height:1.7}.legal-page section ul{margin-bottom:.75rem;padding-left:1.25rem}.legal-page section a{color:var(--accent);text-decoration:none}.legal-page section a:hover{text-decoration:underline}.legal-page code{background:var(--bg-elevated);border-radius:0;padding:.125rem .375rem;font-size:.8125rem}.legal-back{border-top:1px solid var(--border);margin-top:3rem;padding-top:1.5rem}.legal-back a{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8125rem;text-decoration:none;transition:color .15s}.legal-back a:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
