@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{font-family:Space Grotesk,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink-900: #2a231b;--ink-700: #4f4436;--ink-500: #6f5f4b;--accent-500: #d0693b}html{scrollbar-gutter:stable}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f8f5f1}#root{min-height:100vh}button,a.button{font-family:inherit;-webkit-appearance:none;appearance:none;color:inherit;text-decoration:none}a{color:inherit}input,select,textarea{font-size:16px!important}.app{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at top left,#f6efe4,#f8f5f1 45%,#f1efe9);color:var(--ink-900)}.app-header{display:flex;align-items:center;gap:1rem;padding:calc(1.5rem + env(safe-area-inset-top)) clamp(1.25rem,4vw,2.5rem) 1rem}.brand-mark{width:48px;height:48px;border-radius:16px;background:var(--accent-500);color:#fffaf3;display:grid;place-items:center;font-weight:700;letter-spacing:.08em}.app-kicker{margin:0;text-transform:uppercase;font-size:.75rem;letter-spacing:.2em;color:var(--ink-500)}.app-title{margin:.15rem 0 0;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700}.app-main{flex:1;padding:0 clamp(1.25rem,4vw,2.5rem) calc(5.5rem + env(safe-area-inset-bottom))}.panel{background:#fffdf8;border-radius:24px;padding:clamp(1.25rem,3vw,2rem);box-shadow:0 24px 50px #452d1314;border:1px solid rgba(108,87,63,.08)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.panel-head h2{margin:0 0 .4rem;font-size:1.3rem}.panel-head p{margin:0;color:var(--ink-500)}.message{padding:.75rem 1rem;border-radius:14px;font-weight:600;position:fixed;top:1.25rem;right:1.25rem;z-index:20;max-width:min(360px,90vw);box-shadow:0 10px 24px #2a231b2e}@media(max-width:640px){.message{left:1rem;right:1rem}}.message.success{background:#e6f3dd;color:#305022}.message.error{background:#fde7e5;color:#7a2a22}.message.warning{background:#fff3d9;color:#7a4b1c}.toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.filter-chip{border:none;border-radius:999px;padding:.35rem .8rem;background:#e7d6c4;color:var(--ink-700);font-weight:600;cursor:pointer}.filter-chip:hover{background:#decab4}.sort-select{display:inline-flex;align-items:center;gap:.5rem;font-weight:600}.sort-select select{border:1px solid rgba(108,87,63,.2);border-radius:999px;padding:.4rem .8rem;background:#fffaf4;color:var(--ink-700)}.search-input{border:1px solid rgba(108,87,63,.2);border-radius:999px;padding:.6rem 1rem;min-width:220px;background:#fffaf4;color:var(--ink-700)}.primary-button{border:none;border-radius:999px;padding:.7rem 1.4rem;font-weight:600;background:var(--accent-500);color:#fffaf3;box-shadow:0 12px 24px #d0693b33;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.primary-button:hover{transform:translateY(-1px);box-shadow:0 16px 30px #d0693b40}.primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.data-list{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}.data-row,.empty-state{display:flex;align-items:flex-start;gap:1rem;padding:.9rem 1rem;border-radius:16px;background:#f5efe4;color:var(--ink-700)}.title-row{display:flex;align-items:center;gap:.5rem;min-width:0}.data-row strong{display:block;font-weight:600}.data-row span{display:block}.row-content{flex:1;min-width:0;display:grid;gap:.35rem}.clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip{display:inline-flex;align-items:center;padding:.2rem .5rem;border-radius:999px;background:#f0d7c2;color:#6b3b1f;font-size:.75rem;font-weight:600;margin-left:.3rem}.urgent-badge{display:inline-flex;align-items:center;margin-left:.4rem;padding:.2rem .5rem;border-radius:999px;background:#f8d4c8;color:#7a2a22;font-size:.7rem;font-weight:700}.due-line{display:flex;align-items:center;gap:.4rem}.due-text{color:var(--ink-500);white-space:nowrap}.due-badge{display:inline-flex;align-items:center;padding:.2rem .5rem;border-radius:999px;background:#f2b8a8;color:#7a2a22;font-size:.75rem;font-weight:700;white-space:nowrap}.empty-state{justify-content:center;text-align:center;color:var(--ink-500)}.row-actions{margin-left:auto;display:flex;gap:.5rem;align-self:flex-start;align-items:center;flex-shrink:0}.action-primary{min-height:44px;padding:.55rem 1.1rem;white-space:nowrap}.action-menu{position:relative}.menu-trigger{list-style:none;border:none;border-radius:999px;min-width:44px;min-height:44px;padding:0;background:#eadbca;color:var(--ink-700);display:grid;place-items:center;cursor:pointer;font-weight:700}.menu-trigger::-webkit-details-marker{display:none}.action-menu[open] .menu-trigger{background:#e0cbb6}.menu-list{position:absolute;top:calc(100% + .3rem);right:0;z-index:5;display:grid;gap:.35rem;min-width:160px;padding:.45rem;border-radius:14px;background:#fffdf8;border:1px solid rgba(108,87,63,.12);box-shadow:0 14px 28px #2a231b29}.menu-list button{border:none;border-radius:12px;padding:.55rem .8rem;background:#f5efe4;color:var(--ink-700);cursor:pointer;text-align:left;min-height:44px;white-space:nowrap}.menu-list button:hover{background:#e8d7c5}.meta-line{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:.85rem;line-height:1.3}.section-divider{height:1px;margin:1.5rem 0;background:#6c573f26}.form-grid{display:grid;gap:.8rem}.form-row{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.form-panel{background:#fdf6ed;border-radius:16px;padding:1rem;border:1px solid rgba(108,87,63,.12)}.input{border:1px solid rgba(108,87,63,.2);border-radius:14px;padding:.65rem .85rem;background:#fffaf4;color:var(--ink-700)}.input-label{display:grid;gap:.4rem;font-weight:600;font-size:.85rem;color:var(--ink-700)}.textarea{min-height:88px;resize:vertical}.form-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.muted{color:var(--ink-500)}.status-badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600}.status-badge.success{background:#dcebd0;color:#2f5120}.status-badge.fail{background:#f2d6d4;color:#7a2a22}.detail-overlay{position:fixed;inset:0;background:#2a231b66;display:flex;justify-content:flex-end;padding:0;z-index:10}.detail-panel{width:min(480px,100%);background:#fffdf8;border-radius:24px 0 0 24px;padding:1.5rem;box-shadow:0 30px 70px #2a231b33;border:1px solid rgba(108,87,63,.12);height:100%;overflow:auto}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.detail-header h3{margin:.3rem 0 0}.detail-kicker{margin:0;text-transform:uppercase;font-size:.7rem;letter-spacing:.16em;color:var(--ink-500)}.close-button{border:none;background:#e9ded0;color:var(--ink-700);padding:.4rem .9rem;border-radius:999px;cursor:pointer}.detail-grid{display:grid;gap:1rem;margin:1.2rem 0}.detail-label{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-500)}.detail-value{margin:.3rem 0 0;font-weight:600}.detail-section{margin-top:1.5rem}.detail-section summary{font-weight:700;cursor:pointer;margin-bottom:.7rem}.sticky-actions{align-items:center}.log-list{list-style:none;padding:0;margin:.75rem 0 0;display:grid;gap:.6rem}.log-item{display:grid;gap:.25rem;padding:.75rem;border-radius:12px;background:#f5efe4;cursor:pointer}.log-item.error{border-left:4px solid #c24a3a}.log-item.warn{border-left:4px solid #c98a2f}.log-item.info{border-left:4px solid #4a6c3a}.log-meta{font-size:.75rem;color:var(--ink-500)}.log-area{font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-500)}.log-message{font-weight:600}.log-pre{white-space:pre-wrap;background:#f5efe4;padding:.75rem;border-radius:12px;font-size:.8rem;color:var(--ink-700)}.log-tag{margin-left:.4rem;padding:.1rem .4rem;border-radius:999px;background:#f0d7c2;font-size:.65rem}.action-panel{margin:1rem 0;padding:.75rem;border-radius:12px;background:#f5efe4;display:grid;gap:.4rem}.action-panel strong{font-weight:700}.action-status{display:inline-flex;align-items:center;gap:.4rem;font-weight:700}.action-status.running{color:#7a4b1c}.action-status.ok{color:#2f5120}.action-status.fail{color:#7a2a22}.spinner{width:12px;height:12px;border:2px solid rgba(0,0,0,.2);border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-row{display:grid;gap:.8rem;align-items:center}.checkbox{display:inline-flex;align-items:center;gap:.5rem;font-weight:600}.small-text{font-size:.8rem}.detail-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}.detail-list li{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border-radius:14px;background:#f5efe4}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.settings-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.settings-title{margin:0 0 .3rem;font-weight:600}.file-button{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.6rem 1.2rem;background:#eadbca;color:var(--ink-700);font-weight:600;cursor:pointer}.file-button input{display:none}.radio-group{display:grid;gap:.35rem;font-size:.85rem}.radio-item{display:inline-flex;align-items:center;gap:.4rem}.danger-button{border:none;border-radius:999px;padding:.6rem 1.2rem;background:#f4d7d3;color:#7a2a22;font-weight:600;cursor:pointer}.danger-button:hover{background:#efc8c2}.danger-button:disabled{opacity:.6;cursor:not-allowed}.tab-bar{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:.9rem clamp(1.25rem,4vw,2.5rem) calc(1.5rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,#f8f5f11a,#f8f5f1 35%);border-top:1px solid rgba(108,87,63,.12);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tab{border:none;border-radius:16px;padding:.85rem 1rem;font-weight:600;background:#f0e9de;color:var(--ink-700);cursor:pointer;transition:background .2s ease,transform .2s ease}.tab:hover{transform:translateY(-1px)}.tab.active{background:#2e2b27;color:#fdf6ed}@media(max-width:640px){.panel-head{flex-direction:column}.primary-button{width:100%}.action-primary{width:auto}.toolbar{width:100%}.search-input{flex:1;min-width:0;width:100%}.row-actions{width:auto}.detail-panel{padding:1.2rem;width:100%;height:100%;border-radius:0}.sticky-actions{position:sticky;bottom:0;background:#fdf6ed;padding-bottom:.5rem}}@media(max-width:520px){.data-row{flex-direction:column;align-items:stretch}.row-actions{width:100%;flex-wrap:wrap;justify-content:flex-start;margin-left:0}.toolbar{gap:.6rem}.toolbar .search-input{flex:1 1 100%;width:100%}.toolbar .sort-select,.toolbar .checkbox,.toolbar .filter-chip{flex:1 1 auto}.detail-grid{gap:.6rem;margin:.8rem 0}.detail-section{margin-top:1rem}}@media(min-width:900px){.detail-overlay{justify-content:center;align-items:center;padding:2rem}.detail-panel{width:min(820px,100%);border-radius:24px;height:auto;max-height:85vh}}
