.dev-user{display:flex;min-width:0;justify-content:flex-end}.dev-user-current{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dev-user-current{min-width:0;border:1px solid rgb(216 225 220 / 92%);border-radius:999px;background:#ffffffe0;padding:8px 13px 8px 11px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dev-user-current strong{color:var(--ink-soft);font-size:15px}.dev-user-current code{max-width:230px;overflow:hidden;border-radius:7px;background:var(--surface-soft);color:var(--muted);font-size:13px;padding:3px 6px;text-overflow:ellipsis;white-space:nowrap}.dev-user-label{color:var(--muted);font-size:13px;font-weight:780;letter-spacing:.075em;text-transform:uppercase}.dev-user-label{display:inline-flex;align-items:center;gap:6px;color:var(--accent-dark)}.dev-user-label:before{width:7px;height:7px;border-radius:50%;background:#55a98c;box-shadow:0 0 0 3px var(--accent-soft);content:""}@media(max-width:720px){.dev-user-current code{display:none}}:root{color:#2b251f;background:#eee8dd;font-family:Avenir Next,Avenir,SF Pro Text,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;color-scheme:light;--font-display: "Iowan Old Style", "Baskerville", "Palatino Linotype", Palatino, Georgia, serif;--ink: #2b251f;--ink-soft: #51483e;--muted: #7f7468;--canvas: #eee8dd;--paper: #fbf8f1;--surface-soft: #f5f0e7;--surface-tint: #eee4d7;--line: rgb(92 70 46 / 15%);--line-strong: rgb(92 70 46 / 25%);--accent: #8b5b3d;--accent-dark: #5f3826;--accent-soft: #eee0d1;--accent-pale: #f8f1e8;--brass: #b28a58;--brass-light: #d6b986;--oxblood: #713e3a;--sidebar: #181512;--danger-soft: #f9ebe7;--shadow-xs: 0 1px 2px rgb(45 34 23 / 5%);--shadow-sm: 0 8px 24px rgb(45 34 23 / 8%);--shadow-md: 0 18px 46px rgb(45 34 23 / 13%);--shadow-lg: 0 28px 80px rgb(32 24 17 / 18%)}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--canvas);scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0;font-size:16px;line-height:1.5;background:radial-gradient(circle at 75% -15%,rgb(47 125 103 / 9%),transparent 34rem),linear-gradient(180deg,#f7f8f7 0,var(--canvas) 28rem)}::selection{background:#bfe0d5;color:#10251d}a{color:var(--accent-dark);text-decoration:none;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent);text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.telegram-gate{display:grid;min-height:100vh;place-content:center;gap:14px;padding:calc(28px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) calc(22px + env(safe-area-inset-left));background:radial-gradient(circle at 50% 15%,rgb(178 138 88 / 16%),transparent 19rem),var(--paper);color:var(--ink);text-align:center}.telegram-gate-mark{display:grid;width:62px;height:62px;place-self:center;place-items:center;border:1px solid var(--brass);border-radius:18px;background:var(--sidebar);color:var(--brass-light);font-family:var(--font-display);font-size:31px;box-shadow:var(--shadow-md)}.telegram-gate h1,.telegram-gate p{max-width:440px;margin:0}.telegram-gate h1{font-family:var(--font-display);font-size:clamp(28px,9vw,42px);font-weight:580;line-height:1.12}.telegram-gate p{color:var(--muted);line-height:1.6}.telegram-gate-action{min-width:220px;place-self:center;justify-content:center;margin-top:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;z-index:20;display:flex;height:100vh;align-self:start;flex-direction:column;gap:34px;overflow:hidden;border-right:1px solid rgb(255 255 255 / 5%);background:radial-gradient(circle at 20% 4%,rgb(87 171 144 / 18%),transparent 15rem),linear-gradient(180deg,#162721 0%,var(--sidebar) 58%,#0f1b17 100%);color:#f5faf7;padding:26px 18px 20px;box-shadow:10px 0 30px #12221c0f}.brand{display:flex;align-items:center;gap:13px;min-width:0;padding:0 6px}.brand-mark{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border:1px solid rgb(255 255 255 / 18%);border-radius:15px;background:linear-gradient(145deg,#5ca88e,#2f7d67);color:#fff;box-shadow:0 10px 24px #091d1647,inset 0 1px #ffffff40}.brand-mark svg{width:24px;height:24px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.brand-copy{min-width:0}.brand strong,.brand span{display:block}.brand strong{overflow:hidden;color:#fff;font-size:15px;font-weight:760;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap}.brand-copy>span{margin-top:3px;color:#9fb5ad;font-size:12px;font-weight:550}.nav{display:grid;gap:7px}.nav-caption{margin:0 12px 5px;color:#799087;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.nav-link{position:relative;display:flex;min-height:46px;align-items:center;gap:12px;border:1px solid transparent;border-radius:13px;color:#c8d7d1;font-size:14px;font-weight:630;padding:10px 13px;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.nav-link svg{width:20px;height:20px;flex:0 0 20px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.nav-link:hover{border-color:#ffffff0f;background:#ffffff0f;color:#fff;text-decoration:none;transform:translate(2px)}.nav-link-active,.nav-link-active:hover{border-color:#87d1b826;background:linear-gradient(90deg,#56a2883d,#ffffff0f);color:#fff;box-shadow:inset 3px 0 #62b095}.workspace{display:grid;align-content:start;gap:22px;min-width:0;width:100%;padding:22px clamp(20px,3vw,42px) 56px}.page-stack{display:grid;gap:22px}.panel{position:relative;display:grid;gap:20px;min-width:0;border:1px solid rgb(218 226 221 / 88%);border-radius:22px;background:#fffffff0;padding:clamp(18px,2vw,26px);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.panel-header:has(>.library-filters){display:grid;grid-template-columns:1fr;align-items:start}.panel-header:has(>.library-filters)>:is(h1,h2,h3){font-size:clamp(25px,2.4vw,32px)}.panel :is(h1,h2,h3),.resource-card h3{margin:0;color:var(--ink);font-family:SF Pro Display,Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.025em}.panel :is(h1,h2,h3){font-size:22px;font-weight:760;line-height:1.2}.resource-card h3{font-size:18px;font-weight:760;line-height:1.32}@media(max-width:1240px){.app-shell{grid-template-columns:232px minmax(0,1fr)}.sidebar{padding-inline:15px}}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;display:grid;height:auto;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;overflow:visible;padding:12px 16px;box-shadow:0 8px 24px #12221c1f}.brand{padding:0}.brand-mark{width:42px;height:42px;flex-basis:42px;border-radius:13px}.brand-copy>span,.nav-caption{display:none}.nav{display:flex;justify-content:flex-end;gap:5px;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-link{min-height:40px;flex:0 0 auto;gap:7px;border-radius:11px;padding:8px 10px}.nav-link:hover{transform:none}.nav-link svg{width:18px;height:18px}.nav-link-active,.nav-link-active:hover{box-shadow:inset 0 -2px #62b095}.workspace{padding:18px 18px 42px}}@media(max-width:720px){.sidebar{grid-template-columns:auto minmax(0,1fr);gap:10px}.brand-copy{display:none}.nav{justify-content:flex-start}.nav-link{font-size:12px}.workspace{gap:15px;padding:14px 12px 34px}}@media(max-width:480px){.nav-link{min-height:38px;padding-inline:8px}.nav-link span{display:none}}.panel-actions,.row-actions,.inline-badges,.tag-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.field>span,.meta-grid dt,.compact-meta dt{color:var(--muted);font-size:13px;font-weight:780;letter-spacing:.075em;text-transform:uppercase}.field{display:grid;gap:7px;min-width:168px}.text-input{min-height:43px;width:100%;border:1px solid var(--line-strong);border-radius:11px;background:#fff;color:var(--ink);font-size:14px;padding:9px 12px;box-shadow:inset 0 1px 1px #16261f05;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.text-input:hover{border-color:#aebeb5}.text-input:focus{border-color:#61a68f;outline:none;box-shadow:0 0 0 4px #2f7d671f}.text-input::placeholder{color:#9aa49f}.text-area{min-height:100px;resize:vertical;line-height:1.55}.library-filters{display:flex;align-items:end;gap:11px;flex-wrap:wrap}.panel-header>.library-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));width:100%;border:1px solid var(--line);border-radius:17px;background:linear-gradient(180deg,#fafcfb,#f7f9f8);padding:15px}.library-filters .field{min-width:0}.library-filters .field:has(input[placeholder]){grid-column:span 2}.library-filters>.button,.library-filters>button{align-self:end}.panel-header>.library-filters>.button:last-child,.panel-header>.library-filters>button:last-child{grid-column:-2 / -1}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:14px;margin:0}.stats-grid-three{grid-template-columns:repeat(3,minmax(130px,1fr))}.stat-card{position:relative;display:grid;min-height:104px;align-content:space-between;gap:10px;overflow:hidden;border:1px solid #dae8e2;border-radius:17px;background:linear-gradient(145deg,#f1f8f5,#f9fcfb);padding:17px 18px;box-shadow:var(--shadow-xs)}.stat-card:after{position:absolute;top:-30px;right:-24px;width:82px;height:82px;border-radius:50%;background:#2f7d6712;content:""}.stat-card:nth-child(2){border-color:#dce8d5;background:linear-gradient(145deg,#f3f8ef,#fbfdfa)}.stat-card:nth-child(2):after{background:#648e4512}.stat-card:nth-child(3){border-color:#e8e2cf;background:linear-gradient(145deg,#faf7ed,#fffdfa)}.stat-card:nth-child(3):after{background:#a47c2312}.stat-card:nth-child(4){border-color:#e3dcec;background:linear-gradient(145deg,#f8f4fb,#fdfbfe)}.stat-card:nth-child(4):after{background:#75519d12}.stat-card strong{position:relative;z-index:1;color:var(--ink);font-size:34px;font-weight:780;letter-spacing:-.04em;line-height:1}.stat-card span{position:relative;z-index:1;color:var(--muted);font-size:12px;font-weight:700}.button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:11px;cursor:pointer;font-size:13px;font-weight:720;padding:9px 15px;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.button:hover:not(:disabled){text-decoration:none;transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{cursor:not-allowed;filter:grayscale(.15);opacity:.52}.button-primary{background:linear-gradient(145deg,#378b72,var(--accent));color:#fff;box-shadow:0 6px 16px #2f7d6733}.button-primary:hover:not(:disabled){box-shadow:0 9px 22px #2f7d6740}.button-secondary{border-color:#bfd5cc;background:var(--accent-soft);color:var(--accent-dark)}.button-secondary:hover:not(:disabled){border-color:#9bbfb0;background:#dceee7}.button-danger{border-color:#efc3bd;background:var(--danger-soft);color:#9c3c33}.button-danger:hover:not(:disabled){border-color:#dfa39c;background:#ffe7e3}.button-ghost{border-color:var(--line-strong);background:#fff;color:var(--ink-soft);box-shadow:var(--shadow-xs)}.button-ghost:hover:not(:disabled){border-color:#acbbb3;background:var(--surface-soft)}.state{border-radius:14px;padding:14px 16px}.state-empty,.state-loading{border:1px dashed #c9d7d0;background:var(--surface-soft);color:var(--muted)}.state-loading{display:flex;align-items:center;gap:10px}.state-loading:before{width:14px;height:14px;border:2px solid #bed3ca;border-top-color:var(--accent);border-radius:50%;content:"";animation:spin .8s linear infinite}.state-error{border:1px solid #efc5bf;background:#fff5f3;color:#913b33}@keyframes spin{to{transform:rotate(360deg)}}.status-badge,.source-badge,.text-tag{display:inline-flex;min-height:25px;align-items:center;border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:720;line-height:1;padding:5px 9px;white-space:nowrap}.status-badge{border-color:#e2e7e4;background:#f1f4f2;color:#49564f}.status-done,.status-completed,.status-active,.status-accepted,.status-stored,.status-succeeded{border-color:#cde4da;background:#e8f5ef;color:#25644f}.status-ongoing,.status-reading,.status-rereading{border-color:#cbdde9;background:#eaf3f8;color:#2d617d}.status-failed,.status-inactive,.status-rejected,.status-dropped,.status-cancelled{border-color:#efd0cb;background:#fff0ed;color:#a04339}.status-needs_review,.status-pending,.status-processing,.status-queued,.status-planned,.status-paused{border-color:#eadcae;background:#fff7df;color:#80601d}.source-badge{border-color:#d3e4eb;background:#edf6f8;color:#346579}.text-tag{border-color:#e4dff0;background:#f4f1fa;color:#665286}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;margin:0}.meta-grid div{display:grid;align-content:start;gap:5px;min-width:0;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);padding:11px 12px}.compact-meta div{display:grid;gap:4px}.meta-grid dd,.compact-meta dd{margin:0;overflow-wrap:anywhere;color:var(--ink-soft);font-size:13px;line-height:1.4}.description{max-width:980px;margin:0;color:#44514b;font-size:15px;line-height:1.72}.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(390px,1fr));gap:18px}.resource-card{position:relative;display:grid;gap:14px;min-width:0;border:1px solid var(--line);border-radius:19px;background:linear-gradient(155deg,#fff,#fdfefd);padding:15px;box-shadow:var(--shadow-xs);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.resource-card:hover{border-color:#bed3ca;box-shadow:var(--shadow-md);transform:translateY(-3px)}.resource-card-with-cover{grid-template-columns:112px minmax(0,1fr);align-items:start}.resource-card-content,.detail-cover-content{display:grid;min-width:0;align-content:start;gap:13px}.resource-card a:has(h3){display:inline-block}.resource-card a:has(h3):hover{text-decoration:none}.resource-card a:has(h3):hover h3{color:var(--accent-dark)}.cover-frame{position:relative;overflow:hidden;width:100%;aspect-ratio:2 / 3;border:1px solid #d9e0dc;border-radius:13px;background:linear-gradient(145deg,rgb(255 255 255 / 45%),transparent),#e8eeeb;box-shadow:0 9px 22px #1d32291f}.cover-frame:after{position:absolute;inset:0;border:1px solid rgb(255 255 255 / 20%);border-radius:inherit;pointer-events:none;content:""}.cover-frame-detail{width:220px;border-radius:17px;box-shadow:0 18px 38px #1d322929}.cover-frame img,.cover-placeholder{display:block;width:100%;height:100%}.cover-frame img{object-fit:cover;transition:transform .3s ease}.resource-card:hover .cover-frame img{transform:scale(1.025)}.cover-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,transparent 47%,rgb(47 125 103 / 5%) 47% 53%,transparent 53%),var(--surface-tint);background-size:24px 24px;color:#91a49b;font-size:28px}.detail-with-cover{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:clamp(22px,3vw,34px)}.detail-cover-content>.tag-list{max-height:91px;overflow:hidden}.resource-card p{display:-webkit-box;min-height:20px;margin:7px 0 0;overflow:hidden;-webkit-box-orient:vertical;color:var(--muted);font-size:13px;line-height:1.55;-webkit-line-clamp:3}.resource-card .inline-badges,.resource-card .tag-list{gap:6px;max-height:58px;overflow:hidden}.compact-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:10px;margin:0;border-top:1px solid #edf0ee;padding-top:12px}.compact-meta dd{overflow-wrap:normal;word-break:normal}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}table{width:100%;min-width:780px;border-collapse:separate;border-spacing:0}th,td{border-bottom:1px solid #e9edeb;padding:12px 13px;text-align:left;vertical-align:top}th{position:sticky;top:0;z-index:1;background:#f7f9f8;color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}td{color:var(--ink-soft);font-size:13px;line-height:1.45}tbody tr{transition:background .12s ease}tbody tr:hover{background:#fbfdfc}tbody tr:last-child td{border-bottom:0}.url-cell,.muted-line{overflow-wrap:anywhere}.status-stack{display:grid;gap:6px;min-width:116px}.status-stack>span{display:flex;align-items:center;gap:6px}.status-label{min-width:32px;color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.muted-line{display:block;margin-top:4px;color:var(--muted);font-size:12px}.back-link{display:inline-flex;width:fit-content;align-items:center;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.back-link:before{font-size:17px;line-height:1;content:"←"}.back-link:hover{color:var(--accent-dark);text-decoration:none}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:4px}.pagination>span{color:var(--muted);font-size:12px;font-weight:700}.page-message{min-height:min(480px,calc(100vh - 180px));align-content:center}.page-message-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}@media(max-width:1240px){.resource-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media(max-width:960px){.detail-with-cover{grid-template-columns:170px minmax(0,1fr)}.cover-frame-detail{width:170px}}@media(max-width:720px){.panel{gap:17px;border-radius:18px;padding:16px}.panel-header:has(>.library-filters)>:is(h1,h2,h3){font-size:25px}.panel-header>.library-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.library-filters .field:has(input[placeholder]){grid-column:1 / -1}.stats-grid,.stats-grid-three{grid-template-columns:repeat(2,minmax(120px,1fr))}.resource-grid{grid-template-columns:1fr}.resource-card-with-cover{grid-template-columns:98px minmax(0,1fr)}.detail-with-cover{grid-template-columns:132px minmax(0,1fr);gap:18px}.cover-frame-detail{width:132px}.compact-meta{grid-template-columns:repeat(2,minmax(80px,1fr))}}@media(max-width:480px){.panel-header>.library-filters{grid-template-columns:1fr}.stats-grid,.stats-grid-three{gap:9px}.stat-card{min-height:90px;padding:14px}.stat-card strong{font-size:29px}.resource-card-with-cover{grid-template-columns:88px minmax(0,1fr)}.resource-card{border-radius:16px;padding:12px}.resource-card h3{font-size:16px}.resource-card .compact-meta{display:none}.detail-with-cover{grid-template-columns:1fr}.cover-frame-detail{width:138px}.meta-grid{grid-template-columns:1fr}}
