*{box-sizing:border-box}:root{font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#1a1a1a;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}@media print{@page{margin:3mm 10mm 10mm}body{margin:0;padding:0}}@media(prefers-color-scheme:dark){:root{color:#f0f0f0;background-color:#1a1a1a}}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:.25rem 2rem 2rem;box-sizing:border-box;position:relative;overflow:hidden}.top-row{display:flex;flex-direction:column;align-items:center;width:100%}.top-row--with-attachment{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);align-items:center;column-gap:clamp(.5rem,1.5vw,1.25rem);row-gap:0;max-width:100%;min-width:0}.app--with-attachment{height:100dvh;min-height:0;padding:.25rem clamp(.75rem,1.5vw,1.5rem) .5rem}.top-row--with-attachment .message-area{grid-column:1 / -1;grid-row:1;min-width:0;max-width:none;margin-bottom:0;text-align:center}.top-row--with-attachment .message{padding:.35rem 0;overflow-wrap:anywhere;font-size:clamp(2.625rem,5.1vw,6rem);line-height:1.1}.top-row--with-attachment .clock-area{grid-column:2;grid-row:2;min-width:0;margin:0;justify-self:center}.top-row--with-attachment .clock-area .time-label,.top-row--with-attachment .remaining .time-label{margin-bottom:.2rem;font-size:clamp(1.8rem,3vw,2.25rem)}.top-row--with-attachment .clock-area .digit,.top-row--with-attachment .remaining .digit{font-size:clamp(5rem,8vw,8.5rem)}.top-row--with-attachment .clock-area .separator,.top-row--with-attachment .remaining .separator{font-size:clamp(4rem,6.4vw,6.5rem)}.top-row--with-attachment .remaining{grid-column:3;grid-row:2;min-width:0;margin-top:0;justify-self:center;padding:.6rem 1rem}@media print{.app{padding-top:0;padding-left:0;padding-right:0;min-height:auto}}.message-area{position:relative;margin-bottom:.75rem;width:100%;max-width:90vw;text-align:center}.message{font-size:clamp(2rem,8vw,6rem);font-weight:700;margin:0;cursor:pointer;color:#c00;line-height:1.2;-webkit-user-select:none;user-select:none;padding:.5rem 1rem;border-radius:8px;transition:background .2s}.message-word{position:relative;padding-bottom:.1em}.message:hover{background:#0000000d}.edit-box{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap}.message-input{font-size:clamp(1.5rem,5vw,3rem);padding:.75rem 1rem;border:2px solid #333;border-radius:8px;min-width:280px;max-width:90vw}.save-btn{font-size:clamp(1.2rem,4vw,2rem);padding:.75rem 1.5rem;background:#1a1a1a;color:#fff;border:none;border-radius:8px;cursor:pointer}.save-btn:hover{background:#333}.clock-area{text-align:center;margin-bottom:.25rem}.clock-area .clock{margin-bottom:0}.time-label{display:block;font-size:clamp(1.2rem,4vw,2rem);font-weight:600;margin-bottom:.5rem;opacity:.9}.time-source{font-weight:500;font-size:.75em;opacity:.85}.clock{display:flex;align-items:center;justify-content:center;gap:.05em;font-variant-numeric:tabular-nums;font-weight:700;color:#1a1a1a}.digit{font-size:clamp(4rem,18vw,14rem);line-height:1}.digit-cs{font-size:clamp(2.5rem,10vw,8rem);opacity:.85}.separator{font-size:clamp(3rem,14vw,11rem);line-height:1}.end-time-area{margin-top:.75rem;text-align:center}.end-time-label{font-size:clamp(1rem,3vw,1.5rem);padding:.5rem 1rem;background:transparent;border:1px dashed currentColor;border-radius:8px;cursor:pointer;color:inherit;opacity:.8}.end-time-label:hover{opacity:1}.end-time-edit{margin-top:.5rem}.end-time-input{min-width:160px}.end-time-label-input{min-width:min(420px,90vw)}.duration-fields{display:flex;align-items:center;gap:.75rem;font-size:clamp(1rem,3vw,1.5rem)}.duration-fields label{display:inline-flex;align-items:center;gap:.35rem}.duration-fields input{width:5rem;padding:.6rem;border:2px solid #333;border-radius:8px;background:transparent;color:inherit;font:inherit;font-variant-numeric:tabular-nums;text-align:center}.save-btn-secondary{background:transparent;color:inherit;border:1px solid currentColor}.save-btn-secondary:hover{background:#0000001a}.remaining{position:relative;margin-top:.75rem;text-align:center;cursor:pointer;padding:.5rem;border-radius:8px;transition:background .2s}.dismiss-display{position:absolute;z-index:2;top:.25rem;right:.25rem;display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:0;border-radius:50%;background:#232323e6;color:#fff;font:inherit;font-size:1.5rem;line-height:1;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease,background-color .15s ease}.remaining--with-dismiss:hover .dismiss-display,.remaining--with-dismiss:focus-within .dismiss-display,.message-area--with-dismiss:hover .dismiss-display,.message-area--with-dismiss:focus-within .dismiss-display,.attachment-area:hover .dismiss-attachment,.attachment-area:focus-within .dismiss-attachment{opacity:1;visibility:visible}.dismiss-display:hover,.dismiss-display:focus-visible{background:#c00;opacity:1;visibility:visible;outline:2px solid currentColor;outline-offset:2px}.remaining-done{padding:0;border-radius:0}.remaining:not(.remaining-done) .clock,.remaining:not(.remaining-done) .time-label{color:inherit}.remaining-clock{display:flex;align-items:center;justify-content:center;gap:.1em;font-variant-numeric:tabular-nums;font-weight:700}.remaining-value{font-size:clamp(4rem,18vw,14rem);line-height:1}.remaining-done .remaining-value,.remaining-done .remaining-clock{color:#c00}.add-end-time{margin-top:1rem;font-size:clamp(.9rem,2.5vw,1.2rem);padding:.5rem 1rem;background:transparent;border:1px dashed currentColor;border-radius:8px;cursor:pointer;color:inherit;opacity:.45;transition:opacity .2s ease,background-color .2s ease}.add-end-time:hover,.add-end-time:focus-visible{opacity:1}.actions-area{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.25rem .75rem}.action-control{position:relative;display:inline-flex}.dismiss-action{position:absolute;z-index:1;top:-.35rem;right:-.35rem;display:grid;place-items:center;width:1.15rem;height:1.15rem;padding:0;border:1px solid rgba(128,128,128,.75);border-radius:50%;background:#202020;color:#eee;font:inherit;font-size:.95rem;line-height:1;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease,background-color .15s ease}.action-control:hover .dismiss-action,.action-control:focus-within .dismiss-action{opacity:1;visibility:visible}.dismiss-action:hover,.dismiss-action:focus-visible{background:#c00;border-color:#c00;outline:2px solid currentColor;outline-offset:1px}.actions-area .add-end-time,.actions-area .add-attachment{margin-top:0}.file-input{display:none}.attachment-area{position:relative;width:100%;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;margin-top:.4rem}.dismiss-attachment{position:absolute;top:.5rem;right:.75rem}@media(hover:none){.remaining--with-dismiss .dismiss-display,.message-area--with-dismiss .dismiss-display,.attachment-area .dismiss-attachment,.action-control .dismiss-action{opacity:1;visibility:visible}}.attachment-preview{flex:1 1 auto;min-height:0;display:flex;justify-content:center;align-items:flex-start;width:100%;overflow:auto}.attachment-preview img,.attachment-preview video{display:block;width:auto;height:auto;max-width:94%;max-height:58vh;object-fit:contain}.attachment-preview iframe{width:min(94%,1200px);height:58vh;border:0}.attachment-preview audio{width:min(100%,700px)}.pdf-pages{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-height:58vh;overflow:auto;padding-bottom:1rem}.pdf-page-image{display:block;max-width:100%;max-height:58vh;height:auto;background:#fff;box-shadow:0 2px 12px #0003}.pdf-loading,.pdf-error{margin:2rem;text-align:center}.open-attachment{color:inherit;font-size:1.2rem}@media(max-width:600px){.top-row--with-attachment{grid-template-columns:1fr;gap:.5rem}.top-row--with-attachment .message-area{margin:0;grid-column:1;grid-row:auto}.top-row--with-attachment .clock-area,.top-row--with-attachment .remaining{grid-column:1;grid-row:auto}.top-row--with-attachment{grid-template-columns:1fr}.top-row--with-attachment .clock-area .digit,.top-row--with-attachment .remaining .digit{font-size:clamp(3rem,18vw,4.5rem)}.top-row--with-attachment .clock-area .separator,.top-row--with-attachment .remaining .separator{font-size:clamp(2.4rem,14.4vw,3.6rem)}.top-row--with-attachment .clock-area .time-label,.top-row--with-attachment .remaining .time-label{font-size:clamp(1.5rem,4.5vw,1.875rem)}.top-row--with-attachment .message-area{text-align:center}.top-row--with-attachment .message{padding:.25rem}.attachment-preview img,.attachment-preview video{max-height:48vh}.attachment-preview iframe,.pdf-pages,.pdf-page-image{max-height:48vh}}@media(prefers-color-scheme:dark){.clock,.time-label{color:#f0f0f0}.message:hover{background:#ffffff14}.message-input{background:#2a2a2a;color:#f0f0f0;border-color:#666}.duration-fields input{border-color:#666}.save-btn{background:#444}.save-btn:hover{background:#555}.save-btn-secondary:hover{background:#ffffff1a}.remaining-done .remaining-value,.remaining-done .remaining-clock{color:#f66}}
