:root{color-scheme:dark;--bg: #101114;--bg-panel: #17181c;--bg-inset: #0c0d0f;--border: #2a2b30;--text: #e8e8ea;--text-dim: #9a9ba1;--accent: #ff6b1a;--ok: #3ecf8e;--error: #ff5c5c;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}button{font-family:inherit;background:var(--bg-panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.5rem .9rem;cursor:pointer;font-size:.9rem;transition:border-color .15s ease}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}input[type=text],input[type=email],input[type=file],textarea{font-family:inherit;background:var(--bg-inset);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.5rem .7rem;font-size:.9rem;width:100%}input[type=text]:focus,input[type=email]:focus,textarea:focus{outline:none;border-color:var(--accent)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;color:var(--text-dim);word-break:break-all}.app__header{padding:1.5rem 2rem 1rem;border-bottom:1px solid var(--border)}.app__header h1{margin:0;font-size:1.3rem;letter-spacing:-.01em}.app__subtitle{margin:.25rem 0 0;color:var(--text-dim);font-size:.9rem}.app__grid{display:grid;grid-template-columns:260px 1fr 320px;gap:1.5rem;padding:1.5rem 2rem;align-items:start}.app__column{display:flex;flex-direction:column;gap:1.5rem}@media (max-width: 900px){.app__grid{grid-template-columns:1fr}}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:1.25rem}.panel h2{margin:0 0 1rem;font-size:1rem;font-weight:600}.panel h3{margin:1rem 0 .5rem;font-size:.85rem;color:var(--text-dim);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.panel__error{color:var(--error);font-size:.85rem;margin:.5rem 0 0}.panel__hint{color:var(--text-dim);font-size:.85rem}.badge{display:inline-block;font-size:.75rem;padding:.15rem .5rem;border-radius:999px;font-weight:600}.badge--ok{background:#3ecf8e26;color:var(--ok)}.badge--error{background:#ff5c5c26;color:var(--error)}.badge--muted{background:#9a9ba126;color:var(--text-dim)}.auth-gate{min-height:100vh;display:flex;align-items:center;justify-content:center}.auth-gate__card{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;padding:2rem;width:min(360px,90vw)}.auth-gate__card h1{margin:0 0 .5rem;font-size:1.2rem}.auth-gate__subtitle{color:var(--text-dim);font-size:.9rem;margin:0 0 1.25rem}.auth-gate__form{display:flex;flex-direction:column;gap:.75rem}.auth-gate__status{margin-top:1rem;font-size:.85rem;color:var(--text-dim)}.auth-gate__status--ok{color:var(--ok)}.auth-gate__status--error{color:var(--error)}.experience-list__new{width:100%;margin-bottom:1rem;text-align:left}.experience-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.experience-list__item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-align:left}.experience-list__item--active{border-color:var(--accent)}.experience-list__title{font-size:.9rem}.experience-list__id{font-size:.75rem;color:var(--text-dim)}.editor-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.editor-panel__header h2{margin:0}.editor-panel__body{display:flex;background:var(--bg-inset);border:1px solid var(--border);border-radius:6px;overflow:hidden}.editor-panel__gutter{padding:.6rem .5rem;text-align:right;color:var(--text-dim);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);line-height:1.5}.editor-panel__textarea{flex:1;border:none;border-radius:0;min-height:60vh;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1.5;resize:vertical;background:var(--bg-inset)}.editor-panel__textarea:focus{outline:none;border:none}.editor-panel__issues{margin:.75rem 0 0;padding-left:1.1rem;font-size:.85rem;color:var(--error);display:flex;flex-direction:column;gap:.3rem}.publish-panel__field{display:block;font-size:.8rem;color:var(--text-dim);margin-bottom:1rem}.publish-panel__field input{margin-top:.3rem}.publish-panel__button{width:100%}.publish-panel__result{margin-top:1rem}.publish-panel__url-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem;flex-wrap:wrap}.publish-panel__qr{margin-top:.75rem;border-radius:6px;background:#fff;padding:8px}.asset-uploader__last{margin-top:.75rem;font-size:.8rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.asset-uploader__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;max-height:200px;overflow-y:auto}.asset-uploader__list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.8rem}.target-compiler__thumbs{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.target-compiler__thumb{display:flex;align-items:center;gap:.6rem;background:var(--bg-inset);border:1px solid var(--border);border-radius:6px;padding:.4rem .5rem}.target-compiler__thumb img{width:40px;height:40px;object-fit:cover;border-radius:4px;flex-shrink:0}.target-compiler__thumb-meta{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.target-compiler__thumb-name{font-size:.78rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.target-compiler__compile-button{width:100%;margin-top:.75rem}.target-compiler__progress{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;font-size:.8rem;color:var(--text-dim)}.target-compiler__progress progress{flex:1;height:8px;accent-color:var(--accent)}.target-compiler__result{margin-top:1rem}.target-compiler__filename{display:block;font-size:.8rem;color:var(--text-dim);margin:.5rem 0}.target-compiler__filename input{margin-top:.3rem}.target-compiler__actions{display:flex;gap:.5rem;flex-wrap:wrap}.target-compiler__download{display:inline-flex;align-items:center;background:var(--bg-panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.5rem .9rem;font-size:.9rem;text-decoration:none;transition:border-color .15s ease}.target-compiler__download:hover{border-color:var(--accent)}.target-compiler__refs{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.target-compiler__refs li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.8rem}
