html,body,#root{width:100%;min-height:100%;margin:0}body{overscroll-behavior:none;overflow-x:hidden;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(180deg,#f3f6fa,#e9eef5);color:#0f172a}*{box-sizing:border-box}:root{--bg-canvas: #eef2f7;--bg-panel: #ffffff;--bg-panel-strong: #ffffff;--bg-muted: #f1f5f9;--bg-accent: #0f172a;--bg-accent-soft: #1e293b;--border-soft: #d6dde6;--border-strong: #bfc9d6;--text-main: #0f172a;--text-muted: #526174;--text-soft: #7f8ea3;--success: #15803d;--success-soft: #f0fdf4;--warning-soft: #fff7d6;--warning-text: #7a5a00;--danger: #dc2626;--danger-soft: #fef2f2;--shadow-soft: 0 6px 18px rgba(15, 23, 42, .05);--shadow-card: 0 2px 8px rgba(15, 23, 42, .04);--radius-lg: 10px;--radius-md: 6px;--radius-sm: 4px}a{color:inherit}.app-root{min-height:100vh;width:100%}.app-shell{min-height:100vh;padding:40px 32px}.app-shell.with-header{padding-top:40px}.app-container{width:min(1180px,100%);margin:0 auto;display:grid;gap:24px}.global-header{height:80px;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 2px 10px #0f172a1f}.global-header__inner{width:100%;height:100%;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}.global-header__logo{width:170px;max-width:100%;object-fit:contain;border-radius:4px}.app-header,.flow-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.flow-workspace-back{padding:10px 14px;border-radius:6px;color:var(--text-muted);flex:0 0 auto}.page-title{margin:0;font-size:clamp(2rem,3vw,2.8rem);line-height:1;letter-spacing:-.04em}.page-subtitle{margin:0;color:var(--text-muted);font-size:15px;line-height:1.6}.surface-card{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.surface-section{background:var(--bg-panel-strong);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.toolbar-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stack-md{display:grid;gap:16px}.stack-sm{display:grid;gap:10px}.grid-two{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:16px;align-items:start}.home-hero{padding:16px 18px 18px;overflow:hidden}.home-hero__content{display:grid;gap:12px}.home-hero__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.home-hero__title{margin:0;font-size:20px;line-height:1.2;letter-spacing:-.03em}.home-hero__icon-wrap{flex:0 0 auto}.home-hero__icon{width:50px;height:50px;object-fit:contain;border-radius:4px;display:block}.home-hero__input{padding-top:12px;padding-bottom:12px}.home-hero__button{width:100%;padding-top:10px;padding-bottom:10px;font-size:13px}.flow-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,200px));gap:18px}.flow-card{position:relative;width:200px;height:200px;padding:12px;overflow:visible}.flow-card__menu-row{position:absolute;right:12px;bottom:12px;display:flex;z-index:3}.flow-card__menu-trigger{width:38px;height:38px;border:1px solid rgba(15,23,42,.1);border-radius:6px;background:#fff;color:var(--text-main);display:grid;place-items:center;cursor:pointer;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.flow-card__menu-trigger:hover{transform:translateY(-1px);background:#f8fafc;box-shadow:0 4px 12px #0f172a14}.flow-card__menu{position:absolute;top:46px;right:0;min-width:170px;padding:8px;display:grid;gap:4px;background:#fff;border:1px solid var(--border-soft);border-radius:8px;box-shadow:0 8px 22px #0f172a14}.flow-card__menu-item{width:100%;padding:12px 14px;border:none;border-radius:6px;background:transparent;color:var(--text-main);text-align:left;font-size:14px;font-weight:600;cursor:pointer}.flow-card__menu-item:hover{background:#f3f6fa}.flow-card__menu-item:disabled{opacity:.45;cursor:not-allowed}.flow-card__menu-item.danger{color:var(--danger)}.flow-card__open-area{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:none;background:transparent;cursor:pointer;text-align:left}.flow-card__content{height:100%;position:relative}.flow-card__title{margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 24px);font-size:16px;line-height:1.2;text-align:center;letter-spacing:-.03em}.flow-card__hint{position:absolute;left:0;bottom:0;color:var(--text-muted);font-size:12px;font-weight:600}.flow-card__badge{position:absolute;top:12px;left:12px;right:12px;padding:8px 10px;border-radius:8px;background:#f8fafc;color:var(--text-main);font-size:11px;font-weight:700;line-height:1;text-align:center;z-index:2}.color-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.color-swatch{width:100%;aspect-ratio:1;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.color-swatch:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.color-swatch.is-active{border-color:#0f172ab8;box-shadow:0 0 0 4px #0f172a14}.field-input,.field-select,.field-textarea{width:100%;border-radius:6px;border:1px solid var(--border-soft);background:#fff;padding:14px 16px;font-size:15px;color:var(--text-main);outline:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:#7a8ca3;box-shadow:0 0 0 3px #7a8ca324}.field-input[disabled],.field-textarea[disabled]{background:var(--bg-muted);color:var(--text-muted)}.submission-detail-card+.stack-sm .field-textarea,.modal-card .field-textarea{resize:none}.preview-input,.preview-textarea{width:100%;border-radius:6px;border:1px solid #d6dde6;background:#f8fafc;padding:12px 14px;font-size:14px;color:#475569}.preview-textarea{min-height:108px;resize:none}.public-short-textarea{resize:none}.public-long-textarea{resize:vertical}.public-field-label{display:inline-block;font-size:1.08rem;font-weight:700;line-height:1.35;color:#0f172a;letter-spacing:-.01em}.btn-primary,.btn-secondary,.btn-ghost{border-radius:6px;padding:14px 16px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease,border-color .14s ease,background .14s ease}.btn-primary{border:none;background:var(--bg-accent);color:#fff}.btn-primary:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 6px 14px #0f172a1f}.btn-secondary{border:1px solid var(--border-soft);background:#fff;color:var(--text-main)}.btn-secondary:hover,.btn-ghost:hover{background:var(--bg-muted);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 4px 12px #0f172a0f}.btn-ghost{border:1px solid transparent;background:transparent;color:var(--text-muted)}.preview-share-button{padding:9px 12px;font-size:13px;border-radius:6px}.pill-tabs{display:inline-flex;gap:8px;padding:8px;background:#fff;border:1px solid var(--border-soft);border-radius:8px;box-shadow:var(--shadow-card)}.pill-tab{border:none;padding:10px 16px;border-radius:8px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer}.pill-tab.is-active{background:var(--bg-accent);color:#fff}.message-banner{padding:12px 14px;border-radius:6px;font-size:13px;font-weight:600;line-height:1.35}.message-banner.warning{border:1px solid #f2d78c;background:var(--warning-soft);color:var(--warning-text)}.message-banner.success{border:1px solid rgba(34,197,94,.22);background:var(--success-soft);color:var(--success)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:24px;background:#0f172a57}.modal-card{width:min(460px,100%);padding:24px;display:grid;gap:20px;background:#fff;border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:0 12px 28px #0f172a1f}.modal-card--top{align-self:start;margin-top:36px}.modal-card--scrollable{width:min(760px,100%);max-height:min(82vh,920px);align-self:center}.modal-scroll-area{overflow-y:auto;padding-right:4px;max-height:min(54vh,560px)}.kanban-attachment-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:14px;border:1px solid var(--border-soft);border-radius:6px;background:#f8fafc}.kanban-attachment-card__icon{width:44px;height:44px;display:grid;place-items:center;border-radius:6px;background:#0f172a0f;color:var(--bg-accent)}.kanban-board-shell{padding:16px;overflow-x:auto;overflow-y:hidden}.kanban-layout-wide{width:min(95vw,1800px);margin-left:calc(50% - min(47.5vw,900px))}.kanban-board-track{display:flex;align-items:flex-start;gap:16px;min-width:max-content}.kanban-flow-column{width:300px;max-width:300px;height:500px;max-height:500px;flex:0 0 300px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;position:relative;overflow:visible;isolation:isolate}.kanban-flow-tab{padding:14px 16px;box-shadow:none;min-height:84px;display:flex;align-items:center;overflow:visible;position:relative;z-index:2}.kanban-flow-tab__row{width:100%;display:flex;align-items:center;gap:12px}.kanban-flow-tab__main{min-width:0;display:flex;align-items:center;gap:10px;flex:1 1 auto}.kanban-flow-tab__title{font-size:14px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kanban-flow-tab__actions{position:relative;display:flex;align-items:center;margin-left:auto;flex:0 0 auto}.kanban-flow-tab__spacer{width:38px;height:38px;flex:0 0 auto}.kanban-flow-tab__count{color:var(--text-muted);font-weight:700;flex:0 0 auto}.kanban-flow-body{min-height:0;height:100%;padding:14px;position:relative;z-index:1;border-width:2px;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.kanban-flow-body.is-drop-ready{border-color:#bfd0e6;background:#f8fafc}.kanban-flow-items{min-height:0;height:100%;overflow-y:auto;scrollbar-gutter:stable;padding-right:8px;align-content:start}.kanban-flow-items::-webkit-scrollbar{width:10px}.kanban-flow-items::-webkit-scrollbar-track{background:transparent}.kanban-flow-items::-webkit-scrollbar-thumb{background:#0f172a38;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.kanban-submission-card{padding:8px 54px 8px 12px;min-height:56px;height:56px;position:relative;z-index:1;overflow:visible;display:flex;align-items:center}.kanban-submission-card.is-menu-open{z-index:40}.kanban-submission-card strong{font-size:13px;line-height:1.35;font-weight:700;word-break:break-word}.kanban-flow-menu-trigger{width:34px;height:34px;border:1px solid rgba(15,23,42,.1);border-radius:6px;background:#fff;color:var(--text-main);display:grid;place-items:center;cursor:pointer;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.kanban-flow-menu-trigger:hover{transform:translateY(-1px);background:#f8fafc;box-shadow:0 4px 12px #0f172a14}.kanban-flow-tab .flow-card__menu{z-index:30}.flow-card__menu--kanban,.flow-card__menu--submission{top:44px;right:0}.kanban-submission-card__row{display:block;width:100%}.kanban-submission-card__content{min-width:0;border:none;background:transparent;padding:0;text-align:left;cursor:pointer;display:block;width:100%}.kanban-submission-card__menu{position:absolute;top:50%;right:10px;width:34px;height:34px;transform:translateY(-50%);z-index:41;display:flex;align-items:center;justify-content:center}.kanban-submission-card__title{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.submission-detail-card{padding:14px;display:grid;gap:6px;box-shadow:none}.submission-detail-card__timestamp{color:var(--text-main);font-weight:700;font-size:13px}.submission-history-entry{display:grid;gap:4px;padding-top:8px;border-top:1px solid var(--border-soft)}.submission-history-entry:first-of-type{padding-top:0;border-top:none}.notes-input-fixed{min-height:140px;height:140px}.notes-history-shell{min-height:0}.notes-history-list{max-height:240px;overflow-y:auto;padding-right:4px;display:grid;gap:8px}.modal-title{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.03em}.modal-description{margin:0;color:var(--text-muted);font-size:15px;line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.public-form-shell{position:relative}.public-form-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;border-radius:inherit;background:#f1f5f9b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:5}.public-form-loading-card{min-width:280px;padding:22px 24px;display:grid;justify-items:center;gap:10px;text-align:center;background:#fffffff5;border:1px solid rgba(15,23,42,.08);border-radius:8px;box-shadow:0 20px 40px #0f172a1f}.public-form-loading-card span{color:var(--text-muted);font-size:14px;line-height:1.5}.public-form-loading-spinner{width:34px;height:34px;border-radius:50%;border:3px solid rgba(15,23,42,.12);border-top-color:var(--bg-accent);animation:public-form-spin .9s linear infinite}@keyframes public-form-spin{to{transform:rotate(360deg)}}.empty-state{margin:0;color:var(--text-muted)}.auth-button-primary:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 10px 24px #0f172a2e}.auth-button-secondary:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 10px 24px #0f172a14}
