:root{--card-width: 300px;--bar-height: 84px;--units-height: 78px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1f2937;background:#f6f7f9}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}.app{--sidebar-width: 200px;display:flex;height:100%}.app{--sidebar-reserve: 0px}.app.sidebar-open{--sidebar-reserve: var(--sidebar-width)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.stage{position:relative;flex:1;min-height:0;background:linear-gradient(#eef1f5 var(--bar-height),transparent var(--bar-height))}.cursor-line{position:absolute;top:28px;bottom:0;width:1px;margin-left:-.5px;background:#f4a5a5;pointer-events:none;z-index:0}.cursor-label{position:absolute;top:4px;transform:translate(-50%);padding:1px 6px;border-radius:4px;background:#fdeaea;color:#b94a4a;font-size:12px;white-space:nowrap;pointer-events:none;z-index:2}.stage-scroll{position:relative;z-index:1;height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.stage-content{position:relative;height:100%}.timeline-bar{position:absolute;top:0;left:0;height:var(--bar-height);width:100%;border-bottom:1px solid #d8dce2}.timeline-mark{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.timeline-mark.at-start{transform:none;align-items:flex-start}.timeline-mark .tick{width:1px;height:14px;background:#9aa3b0}.timeline-mark .label{margin-top:6px;font-size:23px;color:#55606e;white-space:nowrap}.card-col{position:absolute;top:0;bottom:0;width:var(--card-width);display:flex;flex-direction:column}.card-col:before,.card-tail:before{content:"";position:absolute;left:0;width:1px;background:#b8bec7;pointer-events:none}.card-col:before{top:0;height:12px}.card-tail{position:relative;flex:1}.card-tail:before{top:0;bottom:0;background:linear-gradient(#b8bec7,transparent 50%)}.cards-row{position:absolute;top:var(--bar-height);left:0;right:0;bottom:0}.card{position:relative;flex:none;margin-top:12px;width:100%;background:#fff;border:1px solid #d8dce2;border-radius:0 8px 8px 0;border-left-color:#b8bec7;padding:14px;box-shadow:0 1px 3px #0f172a14}.card img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:6px;margin-bottom:10px;display:block}.card-photo{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.card-time{font-size:12px;color:#7c8794;letter-spacing:.4px;margin-bottom:4px}.card-title{font-size:18px;margin:0 0 8px}.card-title a{color:inherit;text-decoration:none}.card-title a:hover{text-decoration:underline}.scard{padding:20px 22px}.scard .scard-title{font-size:30px;line-height:1.2;margin:0 0 14px}.scard-col .scard{max-height:90%;overflow-y:auto}.card-contents p{margin:0 0 8px;white-space:pre-line}.card-contents p:last-child{margin-bottom:0}.card.collapsed{cursor:pointer}.card.collapsed .card-contents p:not(:first-child){display:none}.card.expanded{display:flex;flex-direction:column}.card.expanded>*{flex:none}.card.expanded .card-contents{flex:0 1 auto;min-height:0;overflow-y:scroll;padding-right:8px;scrollbar-width:thin;scrollbar-color:#9aa3af #eef1f5}.card.expanded .card-contents{cursor:grab}.card.expanded .card-contents:after{content:"";display:none;position:sticky;bottom:0;height:2.5em;margin-top:-2.5em;background:linear-gradient(#fff0,#fff);pointer-events:none}.card.expanded .card-contents.more-below:after{display:block}.card.expanded .card-contents.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}@supports selector(::-webkit-scrollbar){.card.expanded .card-contents{scrollbar-width:auto;scrollbar-color:auto}.card.expanded .card-contents::-webkit-scrollbar{width:8px}.card.expanded .card-contents::-webkit-scrollbar-track{background:#eef1f5;border-radius:4px}.card.expanded .card-contents::-webkit-scrollbar-thumb{background:#9aa3af;border-radius:4px}}.card-more{display:block;margin:2px 0 0;padding:0;border:0;background:none;color:#2563eb;font:inherit;font-size:14px;line-height:1;cursor:pointer}.card-more:hover{text-decoration:underline}.card-contents a{color:#2563eb}.card-contents{margin:0;font-size:14px;line-height:1.5;color:#374151}.card-actions{display:flex;gap:12px;margin-top:10px}.card-icon{cursor:pointer;padding:0;background:none;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid #c4cad2;border-radius:50%;font:700 13px Georgia,Times New Roman,serif;color:#55606e;text-decoration:none}.card-thumb{margin-left:auto;width:40px;height:25px;padding:0;border:0;border-radius:4px;overflow:hidden;background:none;cursor:pointer}.card .card-thumb img{display:block;width:100%;height:100%;object-fit:cover}.card-icon:hover{background:#1f2937;border-color:#1f2937;color:#fff}.card-sources{margin-top:10px;padding-top:8px;border-top:1px solid #e3e6ea}.card-sources h3{margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#7c8794}.card-sources ol{margin:0;padding-left:20px;font-size:12px;line-height:1.4}.card-sources a{color:#2563eb;word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.src-icon{display:inline-block;margin-left:4px;width:14px;height:14px;line-height:16px;border-radius:3px;text-align:center;font-size:10px;font-weight:700;font-style:normal;vertical-align:1px;color:#fff;background:#6b7280}.src-icon.wiki{color:#111827;background:#fff;box-shadow:inset 0 0 0 1px #9ca3af}.src-icon.yt{background:#dc2626}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#0a0e14e0}.modal-backdrop img{cursor:zoom-out;max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;background:#fff}.modal-close{position:absolute;top:12px;right:16px;background:none;border:0;color:#fff;font-size:36px;line-height:1;cursor:pointer}.edit-form{width:min(560px,100%);max-height:100%;overflow-y:auto;padding:20px;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:12px}.edit-form h2{margin:0;font-size:18px}.edit-form label,.tr-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#55606e}.edit-form input,.edit-form textarea,.tr-form input,.tr-form textarea{font:inherit;font-size:14px;color:#1f2937;padding:6px 8px;border:1px solid #c4cad2;border-radius:6px}.edit-photo{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#55606e}.edit-photo img{width:160px;aspect-ratio:16 / 9;object-fit:cover;border-radius:6px}.edit-photo-buttons{display:flex;gap:8px}.edit-photo-buttons button,.edit-photo .file-button{font:inherit;font-size:13px;padding:4px 12px;border:1px solid #c4cad2;border-radius:6px;background:#fff;color:#1f2937;cursor:pointer}.edit-photo .file-button input{display:none}.edit-hint{font-size:11px;color:#7c8794}.edit-error{margin:0;font-size:13px;color:#b91c1c}.edit-buttons{display:flex;justify-content:flex-end;gap:8px}.edit-buttons button{font:inherit;font-size:14px;padding:6px 14px;border:1px solid #c4cad2;border-radius:6px;background:#fff;cursor:pointer}.edit-buttons .danger{margin-right:auto;color:#b91c1c;border-color:#b91c1c}.edit-buttons .primary{background:#1f2937;border-color:#1f2937;color:#fff}.card.pending{background:#ffedd5;border-color:#f59e0b}.add-card{position:fixed;right:20px;bottom:calc(var(--units-height) + 20px);transition:right .15s;z-index:50;width:48px;height:48px;border:0;border-radius:50%;background:#f1eedc;color:#676767;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 8px #0f172a4d}.app.sidebar-open .add-card{right:calc(var(--sidebar-width) + 20px)}.add-card:hover{background:#e6e2c8}.sidebar{position:fixed;top:var(--bar-height);right:0;bottom:0;z-index:40;width:var(--sidebar-width);display:flex;flex-direction:column;border-top:1px solid #d8dce2;border-left:1px solid #d8dce2;background:#fff}.sidebar-header{display:flex;align-items:center;gap:6px;padding:10px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#7c8794;border-bottom:1px solid #d8dce2}.sidebar-header span{flex:1}.sidebar-btn,.sidebar-open-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid #c4cad2;border-radius:50%;background:#fff;color:#55606e;font-size:16px;line-height:1;cursor:pointer}.sidebar-open-btn{position:fixed;top:calc(var(--bar-height) + 8px);right:10px;width:28px;height:28px;font-size:18px;z-index:50}.block-list{list-style:none;margin:0;padding:10px;position:relative;flex:1;min-height:0;overflow:hidden}.block{position:absolute;left:10px;right:10px;height:36px;display:flex;align-items:center;padding:0 10px;border-radius:6px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:top .4s ease,opacity .4s ease}.block.shown{opacity:1}@media (prefers-reduced-motion: reduce){.block{transition:none}}.units-bar{height:var(--units-height);position:relative;border-top:1px solid #d8dce2;background:#eef1f5;overflow:hidden}.app.sidebar-open .units-bar{margin-right:var(--sidebar-width)}.unit-chip{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 8px;box-sizing:border-box;border-right:1px solid rgba(255,255,255,.6);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-chip-eon{font-size:20.4px}.units-empty{color:#55606e}.loading{padding:40px;color:#55606e}.lang-switcher{position:fixed;top:8px;right:10px;z-index:60}.lang-flag{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:2px solid #fff;border-radius:50%;overflow:hidden;background:#e5e7eb;box-shadow:0 1px 5px #0f172a66;cursor:pointer}.lang-flag:hover{box-shadow:0 0 0 2px #676767}.lang-flag svg{width:100%;height:100%;display:block}.lang-flag .flag-code{font-size:10px;font-weight:700;color:#55606e}.lang-menu{position:absolute;top:100%;left:0;margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.card-fallback{margin-left:6px;padding:0 4px;border:1px solid #c4cad2;border-radius:3px;font-size:10px;color:#6b7280}.sources-modal{position:relative;width:min(420px,100%);min-height:250px;max-height:100%;overflow-y:auto;padding:16px;border-radius:8px;background:#fff}.sources-modal .card-sources{margin:0;padding:0;border:0}.sources-modal .card-sources h3{font-size:13px}.sources-modal .card-sources ol{font-size:14px;line-height:1.5}.sources-modal .card-sources li+li{margin-top:6px}.sources-modal .card-sources a{display:block;-webkit-line-clamp:unset;line-clamp:unset}.sources-close{position:absolute;top:6px;right:10px;padding:0;border:0;background:none;color:#55606e;font-size:26px;line-height:1;cursor:pointer}.m-app{--card-width: 300px;--units-width: 24px;min-height:100%;background:#f6f7f9}.m-header{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 calc(var(--units-width) + 12px) 0 14px}.m-header h1{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.m-header .lang-switcher{margin-left:auto;position:relative;top:auto;right:auto}.m-header .lang-menu{left:auto;right:0}.m-counter{position:fixed;top:8px;left:8px;z-index:30;padding:3px 12px;border-radius:6px;background:#dbeafe;color:#1e4f8a;font-size:19.5px;transition:background .2s;box-shadow:0 1px 3px #0f172a26;pointer-events:none}.m-list{padding:4px calc(var(--units-width) + 12px) 40px 14px}.m-item{width:min(var(--card-width),100%);margin:0 auto 28px}.m-item .card{margin-top:0;border-radius:8px;border-left-color:#d8dce2}.m-item[data-scard]{width:100%}.m-item .scard .scard-title{font-size:24px}.m-mark{position:relative;margin:0 0 8px;padding:18px 0 2px;font-size:17px;color:#55606e;text-align:right;background:linear-gradient(to left,#9aa3b0,#9aa3b000) top / 100% 1px no-repeat}.m-units{position:fixed;top:0;right:0;bottom:0;z-index:20;width:var(--units-width);overflow:hidden;background:#eef1f5}.m-unit{position:absolute;left:0;right:0;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tr-page{max-width:1200px;margin:0 auto;padding:0 16px 40px}.tr-header{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;background:#f6f7f9;border-bottom:1px solid #d8dce2}.tr-header h1{margin:0;font-size:20px}.tr-selects{display:flex;gap:16px}.tr-selects label{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#55606e}.tr-selects select{font:inherit;font-size:14px;padding:5px 8px;border:1px solid #c4cad2;border-radius:6px;background:#fff;color:#1f2937}.tr-row{display:flex;flex-direction:column;gap:8px;padding:16px 0;border-bottom:1px solid #d8dce2}.tr-time{font-size:12px;font-weight:600;color:#55606e}.tr-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.tr-card,.tr-form{padding:12px 14px;border:1px solid #d8dce2;border-radius:8px;background:#fff}.tr-card h3,.tr-form h3{margin:0 0 6px;font-size:15px}.tr-card p{margin:0 0 8px;font-size:14px;line-height:1.45}.tr-card p:last-child{margin-bottom:0}.tr-missing{color:#9aa3ae;font-style:italic;font-weight:400}.tr-form{display:flex;flex-direction:column;gap:12px}.tr-form input[readonly],.tr-form textarea[readonly]{background:#f1f3f6;color:#55606e}.tr-edit{display:flex;flex-direction:column;gap:8px}@media (max-width: 700px){.tr-grid{grid-template-columns:1fr}}.tr-pending{background:#fefce8;border-color:#eab308}.tr-badge{margin-left:8px;padding:1px 6px;border-radius:999px;background:#fde68a;color:#854d0e;font-size:11px;font-weight:600;vertical-align:middle}.tr-form select{font:inherit;font-size:14px;padding:5px 8px;border:1px solid #c4cad2;border-radius:6px;background:#fff;color:#1f2937}.tr-time{display:flex;align-items:center;gap:8px}.tr-num{min-width:28px;padding:1px 6px;border-radius:999px;background:#1f2937;color:#fff;font-size:11px;text-align:center}.tr-special{border-left:3px solid #2563eb;padding-left:12px}.pr-item{border-left:3px solid #f59e0b;padding-left:12px}.pr-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;color:#55606e}.pr-date{font-weight:600}.pr-count{margin-left:10px;padding:1px 9px;border-radius:999px;background:#fde68a;color:#854d0e;font-size:14px;vertical-align:middle}.pr-lang{margin-left:8px;padding:1px 6px;border-radius:999px;background:#e5e7eb;color:#374151;font-size:11px;font-weight:600;vertical-align:middle}.pr-sources{font-size:14px}.pr-sources ol{margin:4px 0 0;padding-left:22px}.pr-pictures{display:flex;gap:8px}.pr-pictures img{max-height:90px;border-radius:6px}.pr-warn,.pr-notice{margin:0;padding:6px 10px;border-radius:6px;font-size:13px}.pr-warn{background:#fff7ed;border:1px solid #fdba74;color:#9a3412}.pr-notice{margin-bottom:8px;background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.m-nav-btn,.d-nav-btn{position:fixed;top:8px;right:calc(var(--units-width) + 12px);z-index:60;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:2px solid #fff;border-radius:50%;background:#1f2937;color:#fff;box-shadow:0 1px 5px #0f172a66;cursor:pointer;transition:opacity .15s,visibility .15s}.d-nav-btn{right:auto;left:10px}.m-nav-btn.m-nav-hidden{opacity:0;visibility:hidden;pointer-events:none}.m-nav-btn svg,.d-nav-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nav-modal{position:relative;width:min(360px,100%);max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:14px 0 6px;border-radius:8px;background:#fff}.nav-modal h2{margin:0 40px 8px 16px;font-size:17px;color:#1f2937}.nav-modal ul{margin:0;padding:0;list-style:none}.nav-modal li+li{border-top:1px solid #eef1f5}.nav-link{display:flex;align-items:baseline;gap:12px;width:100%;padding:11px 16px;border:0;background:none;font:inherit;font-size:16px;text-align:left;cursor:pointer}.nav-link:hover,.nav-link:active{background:#eef1f5}.nav-link.nav-current{background:#e3edfd;box-shadow:inset 3px 0 #2563eb}.nav-link.nav-current .nav-time{color:#1d4ed8}.nav-time{flex:0 0 5.2em;color:#55606e;font-variant-numeric:tabular-nums}.nav-title{font-weight:600;color:#1f2937}.nav-menu{position:fixed;top:var(--bar-height);left:0;bottom:0;z-index:55;width:280px;overflow-y:auto;overscroll-behavior:contain;padding:14px 0 6px;border-top:1px solid #d8dce2;border-right:1px solid #d8dce2;background:#fff}.nav-menu h2{margin:0 16px 8px;font-size:17px;color:#1f2937}.nav-menu ul{margin:0;padding:0;list-style:none}.nav-menu li+li{border-top:1px solid #eef1f5}
